可以方便的产生PWM波,可对直流电机进行调速,也可以调节LCD背光亮度
仿真原理图如下(proteus仿真工程文件可到本帖附件中下载)
单片机源程序如下:
- #include"reg51.h"
- sbit out=P2^0;
- sbit out1=P2^5;
- sbit in1=P2^1;
- sbit in2=P2^2;
- sbit in3=P2^3;
- sbit in4=P2^4;
- char T=10;
- char cz=9;
- char cz1=2;
- char count,k;
- void main()
- {
- out=1;
- TMOD=0x01;
- TH0=(65536-1000)/256;
- TL0=(65536-1000)%256;
- EA=1;
- ET0=1;
- TR0=1;
- in1=1;
- in2=0;
- in3=1;
- in4=0;
- while(1);
- }
- void pwm_change() interrupt 1
- {
- TH0=(65536-1000)/256;
- TL0=(65536-1000)%256;
- count++;
- k++;
- if(count==cz)
- {
- out=!out;
- }
- else if(count==T)
- {
- out=!out;
- count=0;
- }
- if(k==cz1)
- {
- out1=!out1;
- ……………………
- …………限于本文篇幅 余下代码请从51黑下载附件…………
复制代码
所有资料51hei提供下载:
pwm调节.zip
(59.47 KB, 下载次数: 52)
|