OpenEdv-开源电子网

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

输入捕获实验中的一个预装载值问题

[复制链接]

21

主题

51

帖子

0

精华

初级会员

Rank: 2

积分
171
金钱
171
注册时间
2014-3-12
在线时间
3 小时
发表于 2014-4-1 17:53:26 | 显示全部楼层 |阅读模式
if(TIM5CH1_CAPTURE_STA&0X80)//
{
temp=TIM5CH1_CAPTURE_STA&0X3F;
temp*=65536;//
temp+=TIM5CH1_CAPTURE_VAL;//
printf("HIGH:%d us\r\n",temp);//
TIM5CH1_CAPTURE_STA=0;//
}

大家好,上面一个程序是输入捕获实验main函数中的     temp*=65536  是与装载值更新的次数  乘以  与装载值。

我不明白为什么是65536而不是65535     16位定时器预装载值应该是更新一次载入65535  怎么会是65536呢,虽然这里写65536的确感觉最后的捕获值更接近实际我们已知的要捕获的值

但我还是觉得这似乎不是修正误差的意思吧。





正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

4

主题

35

帖子

0

精华

初级会员

Rank: 2

积分
80
金钱
80
注册时间
2014-2-8
在线时间
2 小时
发表于 2014-4-1 18:20:59 | 显示全部楼层
回复【楼主位】duanyuzhong:
---------------------------------
同问,这一段程序现在正琢磨着呢
专心专注,必有所成
回复 支持 反对

使用道具 举报

38

主题

2061

帖子

6

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
3273
金钱
3273
注册时间
2012-1-16
在线时间
37 小时
发表于 2014-4-1 21:25:30 | 显示全部楼层
回复【楼主位】duanyuzhong:
---------------------------------
0~65535一共65536次变化。
站在巨人的肩膀上不断的前进。。。
回复 支持 反对

使用道具 举报

21

主题

51

帖子

0

精华

初级会员

Rank: 2

积分
171
金钱
171
注册时间
2014-3-12
在线时间
3 小时
 楼主| 发表于 2014-4-8 20:19:47 | 显示全部楼层
回复【3楼】xiaoyan:

回复【楼主位】duanyuzhong:
---------------------------------
我感觉不是这样的,首先这是个预装载器,是装计数值的,16位的,脉冲计数 1就是1  2就是2  3就是3    0的话就是没有

原子在原来的程序中是这样定义的   TIM_TimeBaseStructure.TIM_Period = 65535;    很明显装满就是65535个计数值 那这个计数器走完一次的

数值就是65535,走N次就是 65535*N        0--65535是位操作的概念, 第0位 第1位 第2位。。。。    不是计数

---------------------------------
回复 支持 反对

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-6-10 16:45

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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