}
程序我给你改了改,这个程序没有问题。
根据和楼主的沟通,我写新的程序:
#include #define uint unsigned int #define uchar unsigned char unsigned char KeyValue=0; sbit key1=P3^0; sbit key2=P3^1; sbit key3=P3^2; sbit key4=P3^3; sbit LED=P2^0; void delay(uint count) { uint i,j; for(i=0;i for(j=0;j<110;j++); } void main() { uint key_num = 0; uint key_flg = 0; while(1) { LED = 1; if(!key1) { delay(10); //??? if(!key1) //????????,?????? { key_num ++ ; key_flg = 0; } } if(( key_num == 1) && !key_flg )//????????,?????? { key_flg = 1; LED=0; delay(200); LED=1; delay(200); LED=0; delay(200); LED=1; delay(200); LED=0; delay(200); LED=1; delay(200); LED=0; delay(6000); LED=1; delay(700); } if((key_num == 2)&& !key_flg ) //????????,?????? { key_flg = 1; LED=0; delay(700); LED=1; delay(700); LED=0; delay(700); LED=1; delay(700); LED=0; delay(5000); LED=1; delay(700); } if((key_num == 3)&& !key_flg ) { key_flg = 1 ; LED=0; delay(1200); LED=1; delay(700); LED=0; delay(700); LED=1; delay(700); LED=0; delay(1200); LED=1; delay(700); } if((key_num == 4) && !key_flg ) //????????,?????? { key_flg = 1; LED=0; delay(1200); LED = 1 ; key_num = 0; } } }
哪里不对,请详细说明你的需求。
不好意思,中午去测绘了个东西,3点才回来。刚在QQ上给你发消息了。
怎么说呢,功能是:k1-k4四个按键,k1键对应一段程序(ps:就是控制led闪烁的频率)
正好有时间帮你写了一下,用定时器实现的,你看下写的对不对,由于上传不了代码,只能传图片跟附件给你了,希望能帮助到你,有问题欢迎常来提问(源代码见最后附件):
源代码: