在线时间0 小时
UID2036631
注册时间2013-8-26
NXP金币0
该用户从未签到
新手上路

- 积分
- 8
- 最后登录
- 1970-1-1
|
各位高人,求救!
我有三路占空比要实时测,频率分别为200Hz,2200Hz,1100Hz。
自由计数器TCNT的频率我测了是92Hz。
因为周期固定且相当精确,只要测高电平时间,即可测出占空比。
我现在是开三路中断:
中断服务程序内容大致如下:
if(PORTT==1) //进入中断后判断端口是否高电平
a=TCNT; //如果是,记录TCNT的值到a
else //如果端口低电平,计算高电平时间
{
if(TCNT>a) //判断TCNT是否溢出
H_level=TCNT-a; //未溢出,直接做减法
else
H_level=65535+TCNT-a; //溢出,+65535再做减法
}
这个程序,单独开一个通道的中断,能完美的测出占空比,开两个以上通道中断,占空比也可以准确测出,但是中间会有不间断的跳变,其中频率高的一路闪的厉害,频率低的一路闪的不严重。
示波器观察,不停的闪.以测得的占空比驱动电机,电机会时不时颤动.但是单独开一路完全正常.
是不是我的测量方法有问题?
|
|
|