51单片机是如何产生PWM波的。。用定时器中断如何实现

 我来答
GUEL86
推荐于2017-11-24 · TA获得超过5855个赞
知道大有可为答主
回答量:5538
采纳率:86%
帮助的人:2674万
展开全部
1 设置一个 IO 输出口作为 PWM 输出
2 设置一个 可调定时器 如 定时 250 IO输出 0 , 定时 5 IO输出 1, 高电平 窄
或 定时 5 IO输出 0 , 定时 250 IO输出 1, 高电平 宽
即定时器每中断一次要重装定时数据
追问
关于频率和占空比的确定,对于12M晶振,假定PWM输出频率为1KHZ,这样定时中断次数 * 
*设定为C=10,即0.01MS中断一次,则TH0=FF,TL0=F6;由于设定中断时间为0.01ms,这样*
*可以设定占空比可从1-100变化。即0.01ms*100=1ms
能给解释这段吗??、首先给PWM的频率我们可以求什么???
追答
假定PWM输出频率为1KHZ, 那么 2 次中断为 1mS (一次输出0,一次输出1)占空比就是 2 次中断的时间比例。要改变PWM的频率就改变2 次中断时间。要改变占空比,就改变2 次中断的时间比例比例就可以了。 这为软件 PWM.
STC单片机内部有硬件PWM口,只要设置一下就可以了。
最近的天涯海角
2011-10-24 · TA获得超过427个赞
知道答主
回答量:127
采纳率:0%
帮助的人:61.4万
展开全部
有的单片机带有pwm功能,用定时器实现的方法是:根据占空比计算出高电平和低电平的时间,利用定时器定时,然后取反就可以了
追问
*关于频率和占空比的确定,对于12M晶振,假定PWM输出频率为1KHZ,这样定时中断次数 * 
*设定为C=10,即0.01MS中断一次,则TH0=FF,TL0=F6;由于设定中断时间为0.01ms,这样*
*可以设定占空比可从1-100变化。即0.01ms*100=1ms
能给解释这段吗??、首先给PWM的频率我们可以求什么??? *
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式