接上一个贴子,由于加湿器主芯片被打磨,无法自制,我现用STC8G1K08A芯片成功替代,电路图如下:
字写得不好,大家将就看吧
程序如下,不知道什么原因注释全是乱码,都把它全部去掉了
单片机源程序如下:
- #include "STC8.h"
- #define u8 unsigned char
- #define u16 unsigned int
- sbit PWM=P3^3;
- sbit LED1=P5^4;
- sbit KEY=P5^5;
- void delay(u16 Count);
- void Time0_init(void);
- void main(void)
- {
- u8 num=0;
- P3M0|=0x08;
- P3M1&=0xF7;
- RSTCFG&=0xEF;
- P5M0|=0x10;
- P5M1&=0xEF;
- P5M0&=0xDF;
- P5M1&=0xDF;
- LED1=1;
- PWM=0;
- Time0_init();
- while(1)
- {
- if(KEY==0)
- {
- delay(10);
- if(KEY==0)
- num=(num+1)%2;
- while(!KEY);
- }
- switch(num)
- {
- case 0:{EA=0;TR0=0;LED1=1;PWM=0;}break;
- case 1:{EA=1;TR0=1;LED1=0;}break
- }
- }
- }
- void delay(u16 Count)
- {
- u8 i,j;
- while (Count--)
- {
- for(i=0;i<50;i++)
- for(j=0;j<20;j++);
- }
- }
- void Time0_init(void)//@11.0592MHz
- {
- AUXR|=0x80;
- TMOD&=0xF0;
- TMOD|=0x01;
- TL0=0xd9;
- TH0=0xff;
- TF0=0;
- ET0=1;
- }
复制代码 最后上图,看PWM信号效果:
|