51单片机PWM的控制呼吸灯.docx
《51单片机PWM的控制呼吸灯.docx》由会员分享,可在线阅读,更多相关《51单片机PWM的控制呼吸灯.docx(9页珍藏版)》请在冰豆网上搜索。
![51单片机PWM的控制呼吸灯.docx](https://file1.bdocx.com/fileroot1/2023-6/19/7e1db196-04cb-48a7-a77e-5f72ffca251d/7e1db196-04cb-48a7-a77e-5f72ffca251d1.gif)
51单片机PWM的控制呼吸灯
51单片机PWM的控制(呼吸灯)
一、PWM
PulseWidthModulation脉冲宽度调制,简称PWM。
PWM(脉冲宽度调制)对模拟信号电平进行数字编码的方法,计算机只能输
出0或5V的数字电压值而不能输出模拟电压,而我们如果想获得一个模拟
电压值,则需通过使用高分辨率计数器,改变方波的占空比来对一个模拟信
号的电平进行编码。
仍输出数字信号,因为满幅值的直流供电只有5V
(1)和0V(0)两种。
电压是
以一种连接
(1)或断开(0)的重复脉冲序列被夹到模拟负载上去的,连接即是直
流供电输出,断开即是直流供电断开。
通过对连接和断开时间的控制,只要
带宽足够,可以输出任意不大于最大电压值的模拟电压。
输出电压=(接通时间/脉冲时间)*最大电压值
12
二、51单片机的Timer
作者用的单片机是STC89C52,其内部有3个16位Timer,分别为
T/C0,T/C1,T/C2,通过配置相关寄存器即可实现Timer的功能控制。
控制PWM需要用到定时器来生成不同占空比的波形,采用定时器中断的
方式。
相关寄存器:
1.IE寄存器
位
名称
功能
0
EX0
外部中断0的中断允许位
1
ET0
Timer0的溢出中断允许位
2
EX1
外部中断1的中断允许位
3
ET1
Timer1的溢出中断允许位
4
ES
串行口中断允许位
5
ET2
Timer
6
-
-
7
EA
中断允许总控制位
2.TCON寄存器
位
名称
功能
0
IT0
外部中断0的触发方式选择位。
功能和IE1类似
1
IE0
外部中断0的中断请求标志位。
功能和IE1类似