AT89C51单片机P1.0口产生PWM波的C语言程序怎么编写?求大神(不要太复杂啊) 20
展开全部
根据你自己的需要,PWM分级,PWM周期10ms,分100级,那么定时器中断100us,另外一个寄存器中断里计数,和你要的占空比寄存器比较,如果当前占空比50%,那么计数器比较是否大于5ms,大于则PWMP1.0输出高,小于则PWMP1.0输出低,最后判断计数是否到10ms,然后清零,从新开始!就可以了啊,很简单,如需改变占空比那么在一个PWM周期完成后改变即可,如果是调速,那么直接增加或者减少占空比,不需要等下个周期
追问
谢谢,你说的我也理解。但能不能烦劳给试着编个程序呀,我对单片机和C语言的实现不太了解。麻烦啦!!!
追答
自己硬着头皮写,不然你怎么进步!原理懂了,你慢慢写总会写出来,比给你源代码好的不知多少倍!真的,逼下自己!
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询