百度知道 - 信息提示

日期:2025-01-12 16:09:25 人气:1

百度知道 - 信息提示

    A+
热门评论

在线等,急,用C语言编程,实现单片机控制两个LED灯:当S1开关闭合时,两个LED灯交替闪烁?

判断开关对应的端口电平,改变led对应端口即可。 交替闪烁就是在循环中让两个LED端口交替高低电平。 循环中加入延时。延时函数我用循环实现。题目没有要求精准延时,如精准需用中断。 #include #define uInt unsigned int sbit D1=P2^0; sbit D2=P2^1; sbit S1=P3^2; void mDelayuS( uInt us ); void main() { if(S1) D1=D2=0; while(S1==0) D1=!D2,mDelayuS(1000),D2=D1; } void mDelayuS( uInt us ) { while ( us -- ); /* 24MHz MCS51 */ }

阅读全文

51单片机怎么用c语言写一个按钮控制一个led的闪烁,按一下开始闪烁,再按就灭掉

bit flash;//闪烁标志位 sbit led=P0^0; sbit P01=P0^1; sbit P02=P0^2; void main() { P01=P02=0; flash=0; led=0; while(1) { scankey(); ledflash(); } } void scankey()//键盘扫描 { P01=1;//行线给1 if(P02)//如果P02也是1则说明接通 { delay(10);//去抖动10MS if(P02)//再次确定按键按下 { while(P02){flash=flash}//按住按键的动作 flash=~flash;//按键按下后执行动作 } } } void ledflash() { if(flash) { led=1;//点亮 delay(100);//延时100MS led=0;//熄灭 } else led=0; } void delay(unsigned int i) {自己根据单片机频率写个1MS带形参的演示程序} 这个程序是现写的。。应该能执行,有些细节没有写,自己修改下,只是个大框而已(比如函数声明,定义端口什么的)

阅读全文