#include<STC12C5A60S2.h> unsigned char x ; unsigned char y ; void stop(); void A (int x) ; sbitPWMOUT = P1^3; voidmain(){ inti ; EA=1; TMOD=0x01; while(1){ A(1000); for (i=0;i<10000;i++){} stop(); for (i=0;i<10000;i++){} A(5000); for (i=0;i<10000;i++){} stop(); for (i=0;i<10000;i++){} A(10000); for (i=0;i<10000;i++){} stop(); for (i=0;i<10000;i++){} A(15000); for (i=0;i<10000;i++){} stop(); for (i=0;i<10000;i++){} A(20000); for (i=0;i<10000;i++){} stop(); for (i=0;i<10000;i++){} A(25000); for (i=0;i<10000;i++){} stop(); for (i=0;i<10000;i++){} A(30000); for (i=0;i<10000;i++){} stop(); for (i=0;i<10000;i++){} A(35000); for (i=0;i<10000;i++){} stop(); for (i=0;i<10000;i++){} A(40000); for (i=0;i<10000;i++){} stop(); for (i=0;i<10000;i++){} A(45000); for (i=0;i<10000;i++){} stop(); for (i=0;i<10000;i++){} A(50000); for (i=0;i<10000;i++){} stop(); for (i=0;i<10000;i++){} A(55000); for (i=0;i<10000;i++){} stop(); for (i=0;i<10000;i++){} A(60000); for (i=0;i<10000;i++){} stop(); for (i=0;i<10000;i++){} A(65000); for (i=0;i<10000;i++){} stop(); for (i=0;i<10000;i++){} A(70000); for (i=0;i<10000;i++){} stop(); for (i=0;i<10000;i++){} A(75000); for (i=0;i<10000;i++){} stop(); for (i=0;i<10000;i++){} A(80000); for (i=0;i<10000;i++){} stop(); for (i=0;i<10000;i++){} } } void A(int z) { unsigned int reload ; reload = 65536-(32000000/12)/(z*2) ; x=(unsigned char )(reload>>8) ; y=(unsigned char )reload; TH0=0xFF; TL0=0xFE; ET0=1; TR0=1; } voidstop() { ET0=0; TR0=0; } voidInterruptTime0() interrupt 1 { TH0=x; TL0=y; PWMOUT=~PWMOUT; } //先简单出一期 之后会出呼吸版蜂鸣器 //引脚可能有问题,可以自己更正 //很久之前写的代码了 如果有 问题 可以留言我 谢谢~~
|