设置定时器1微妙或几微妙中断一次不可行!因为,进入中断后的程序执行花费的时间就超过几微妙,这样,会不断进入定时中断。一般也不建议采用查询方式做,那样程序就不好干别的事情了。
由于外中断引脚只能接受低跳变,或低电平信号,所以为了同时接受高或低信号,需要采用反相器,并同时利用两条外中断引脚一起来接收。
具体步骤为:
(1)先将该信号接到/INT0,再通过反向器,将该信号引到/INT1管脚上。设置两外中断条件为低跳变;
(2)让定时器T0工作在16位定时状态下产生基准时间;
(3)在/INT0和/INT1的中断服务程序中,顺序、循环的记录下每次跳变中断发生的时间;
(4)将前后两次跳变时间相减,得到高、低波形的宽度。
|