【摘要】:要求:掌握用定时器/计数器T0、T1的模式1编程的方法。利用定时器T1的模式2对外部信号进行计数,要求每计满100次,将P1.0端取反。知识补充1.需要产生周期信号时,选择定时器方式。
1.任务及要求
任务:设单片机的振荡频率为12MHz,用定时器/计数器T0的模式1编程,在P1.0引脚产生一个周期为1000μs的方波,定时器T0采用中断的处理方式。
要求:掌握用定时器/计数器T0、T1的模式1编程的方法。
2.实验接线
略。
3.程序流程图及参考程序
(1)程序流程图
略。
(2)参考程序
4.思考题(www.xing528.com)
(1)设单片机的振荡频率为6MHz,编程实现通过P1.0和P1.1口分别输出脉冲周期为200μs和400μs的方波。
(2)利用定时器T1的模式2对外部信号进行计数,要求每计满100次,将P1.0端取反。
知识补充
1.需要产生周期信号时,选择定时器方式。定时时间到了对输出端电平进行取反输出即可。
2.设单片机的振荡频率为12MHz时,定时器/计数器T0、T1在定时方式下,各个模式单次最大定时时间分别为:
M1M0=00时,即T0、T1工作于模式0时:Tmax=(8192-0)×12/fosc=8.192ms;
M1M0=01时,即T0、T1工作于模式1时:Tmax=(65536-0)×12/fosc=65.536ms;
M1M0=10时,即T0、T1工作于模式2时:Tmax=(256-0)×12/fosc=0.256ms。
如果定时时间为1s=1000ms,又该怎么办呢?虽然1000ms>65.536ms,但是我们可以把1000ms看成是20个50ms,定义一个变量记录50ms溢出的次数,当溢出次数等于20次时,1000ms定时时间到,这就是长时间定时的解决思路。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。