OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 4680|回复: 1

USMART组件定时器问题

[复制链接]

87

主题

331

帖子

0

精华

高级会员

Rank: 4

积分
906
金钱
906
注册时间
2016-3-26
在线时间
116 小时
发表于 2017-5-11 21:19:40 | 显示全部楼层 |阅读模式
1金钱
本帖最后由 zhoujianwen 于 2017-5-11 22:15 编辑

void usmart_init(u8 sysclk)
{
#if USMART_ENTIMX_SCAN==1
        Timer4_Init(1000,(u32)sysclk*100-1);//这个为什么要减一啊?不减一刚好是10K不是更符合要求?
#endif
        usmart_dev.sptype=1;        
}               
  
void TIM4_IRQHandler(void)
{                                                                  
        if(TIM_GetITStatus(TIM4,TIM_IT_Update)==SET)
        {
                usmart_dev.scan();        
                TIM_SetCounter(TIM4,0);               
                TIM_SetAutoreload(TIM4,100);                    //处理完成后重装载值为什么不是初始化的1000而变成100了呢                                                                                   
        }                                   
        TIM_ClearITPendingBit(TIM4,TIM_IT_Update);  
}


USMART判断函数有无返回值
vvvv.png
这个为什么要是一个*号呢?我看USMART组件视频,从串口发送直接发送的是:函数名(参数1,参数2,...),并没有发void啊 vvv.png



最佳答案

查看完整内容[请看2#楼]

1,因为是从0开始计数的。2,库函数有bug,看寄存器版本。
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2017-5-11 21:19:41 | 显示全部楼层
1,因为是从0开始计数的。2,库函数有bug,看寄存器版本。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-6-17 03:54

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表