如何用单片机捕捉PWM占空比?

[复制链接]
查看11 | 回复4 | 2010-5-27 14:51:50 | 显示全部楼层 |阅读模式
如题
检测方法
我听说可以
1.外部中断捕捉,上升沿,下降沿,那么这种方法具体如何获知时间长度呢?这种方法有没有不适合的情形呢?
2.PWM输出电压上,转化为变化的电压,然后AD采集,这种方法有什么注意的地方?
还有什么方法?
我认为AD采集还是可以的,占空比可以反映到电压上(PWM直流调节电压调速即此理)

回复

使用道具 举报

千问 | 2010-5-27 14:51:50 | 显示全部楼层
#define TEST_IN PA0
//要测试的信号#define F_TEST_IN PA1 //要测试信号的反向,加一个反向门得到的main(){unsigned long low_cnt,high_cnt;while(1){
while(TEST_IN); //确保TEST_IN = 0;
low_cnt = 0;
high_cnt = 0;
while(!TEST_IN); //确保TEST_IN = 1;
while(TEST_IN) high_cnt++; //计算高电平数量
while(F_TEST_IN) low_
回复

使用道具 举报

千问 | 2010-5-27 14:51:50 | 显示全部楼层
检测1到0 和0到1的时间中断检测才能准确到us
回复

使用道具 举报

千问 | 2010-5-27 14:51:50 | 显示全部楼层
检测高低电平的时间 计算。
回复

使用道具 举报

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

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行