任务四
PWM波形输出
湖南生物机电职业技术学院
黄建科
任务
利用T0,使用工作方式0,,占空比为1:1的方波信号。
一、任务要求:
二、电路图分析
三、程序分析
解:周期为2ms,占空比为1:1的方波信号,只需要利用T0产生定时,。
编程步骤:
计算TMOD的值
由于GATE=0;M1M0=00;C/T=0;
所以(TMOD)=00H
计算初值(单片机振荡频率为12MHZ)
所需要的机器周期数:
n=(1000us/1us)=1000
计数器的初始值:
X=8192-1000=7192
所以:(TH0)=0E0H,(TL0)=18H
中断入口地址
重新给T0赋初值
中断返回
主程序:
中断程序:
开始
启动T0
设置堆栈地址
设置TMOD方式
送定时器初值
开T0中断
等待
流程图
四、调试分析
思考并练习:用定时器T1,使用工作方式1,、占空比为1:1的方波信号。
解:周期为2分钟,占空比为1:1的方波信号,只需要利用T1产生定时,。
由于定时器定时时间有限,设定T1的定时为50ms,软件计数1200次,可以实现1分钟定时。
编程步骤:
1、计算TMOD的值
由于:GATE=0;M1、M0=0、1;C/T=0;
所以:(TMOD)=10H
2、计算初值(单片机的振荡频率为12MHZ)
所需要的机器周期数:
n=(50000us/1us)=50000
计数器的初始值:X=65536-50000=15536
所以:(TH0)=3CH;(TL0)=0B0H
主程序:
中断程序:
中断入口地址
中断返回
重装初值
(20H)-1=0?
20H单元赋值20
(21H)-1=0?
21H单元赋值60
N
N
Y
Y
开始
设置堆栈地址
设置TMOD方式
启动T0
等待
计数单元赋值(20H,21H)
送定时初值
开T0中断
流程图
程序清单
ORG 0000H
LJMP MAIN
ORG 001BH ; T0中断入口地址
LJMP SER ; 中断服
PWM波形输出幻灯片 来自淘豆网www.taodocs.com转载请标明出处.