金牌会员
 
- 积分
- 1242
- 金钱
- 1242
- 注册时间
- 2017-3-18
- 在线时间
- 312 小时
|

楼主 |
发表于 2018-7-4 10:08:37
|
显示全部楼层
纠正上面说明的一个错误,晶振频率1M怎么够 1M是定时器的计时频率。另外补充一点,出现的频率也不仅仅为3906.25,也出现1302.08这样的数据,计算出的时间差m=1536=2^10+2^9。
目前猜测可能的原因:
1、计算时产生数据溢出。此猜测基本排除,因为TIM5上的计算方法是一样的,并且数据量大很多,没有出现这种情况。
2、参数定义和计算方法有问题。
查看定义: unsigned long long m0=0,m1=0; float m=0;u32 StandSignNum=0;
查看计算方式
m0=TIM3->CCR1+(TIM3CH1_CAPTURE_STA<<16);
m1=TIM3->CCR1+(TIM3CH1_CAPTURE_STA<<16);
m=(m1-m0);
addr_data2[4]=(Fpclk/m)*(StandSignNum-1);
这样的定义和计算方法可行吗?请路过看到的坛友解答
2、TIM3和TIM5连接在一起,TIM3开启TIM5中断关闭状态,TIM5所对应的引脚给发出了如上频率的脉冲。如果是这个情况如何去确认呢? |
|