- #include <ADUC841.H>
- unsigned char ADC ;
- sbit CLOCK = P2^4;// ;定义ADC0808时钟位
- sbit ST =P2^5;
- sbit EOC = P2^6;
- sbit OE = P2^7 ;
- sbit PWM = P3^7 ;
- void DELAY(unsigned char a1) ;
- void main()
- {
- TMOD=2;
- TH0=20;
- TL0=0;
- IE=0x82;
- TR0=1;
- while(1)
- {
- ST=0;
- ST=1;
- ST=0; //;启动AD转换
- while(EOC==0)
- {
- ; //;;等待转换结束
- }
- OE=1;
- ADC=P1; // ;读取AD转换结果
- OE=0;
- PWM=1; //;PWM输出
- DELAY(ADC);
- PWM=0;
- DELAY(255-ADC);
- //goto WAIT;
- }
- }
- void DELAY(unsigned char a1)
- {
- unsigned char i=1;
- do
- {
- do
- {
-
- }while(--i);
- }while(--a1);
- }
- void INT_T0() interrupt 1
- {
- CLOCK =!CLOCK;// ;提供ADC0808时钟信号
- }
|