STC89C52面包板实测可用
发光二极管D12由灭均匀变到最亮,再由最亮均匀熄灭。在最亮和最暗时使用蜂鸣器分别警报一声,完成整个周期时间控制在5s左右,循环变化。
下载:
5.5.1.zip
(15.92 KB, 下载次数: 21)
源程序:
- #include<reg52.h>
- #define uchar unsigned char
- #define uint unsigned int
- sbit dula=P2^6;
- sbit wela=P2^7;
- sbit dawr=P3^6;
- sbit dacs=P3^2;
- sbit beep=P2^3;
- void delayms(uint xms)
- {
- uint i,j;
- for(i=xms;i>0;i--)
- for(j=110;j>0;j--);
- }
- void main()
- {
- uchar val,flag;
- dula=0;
- wela=0;
- dacs=0;
- dawr=0;
- P0=0;
- while(1)
- {
- if(flag==0)
- {
- val+=5;
- P0=val;
- if(val==255)
- {
- flag=1;
- beep=0;
- delayms(100);
- beep=1;
- }
- delayms(50);
- }
- else
- {
- val-=5;
- P0=val;
- if(val==0)
- {
- flag=0;
- beep=0;
- delayms(100);
- beep=1;
- }
- delayms(50);
- }
- }
- }
复制代码
|