#include<reg52.h>
sbit d1=P1^0;
sbit key1=P3^4;
void main()
{P3=0xff;
while(1);
{
if(key1==0)
d1=0;
else
d1=1;
}
}
#include
sbit d1=P1^0;
sbit key1=P3^4;
void main()
{P3=0xff;
while(1);
{
if(key1==0)
{ d1=0;
while(!key1);
}
else
d1=1;
}
}这样对吗,但是还是不行
不对
为什么51单片机键盘位定义为P3^4而不是P3^1以及其他6个P3口
因为P3口的每一位都有特殊功能定义。如P3.0,P3.1常用于串行口通信等,当不会使用引脚的特殊功能时,才会用作一般的输入输出接口
...怎么实现用KEY 1控制数码管上显示的数字加1 KEY2控制数码管上显示数...
原有key1为P3.4,添加个key2键为P3.5;1、按你显示程序的逻辑,对TAB修改如下:TAB:DB 00H,3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH,77H,7CH,39H,5EH,79H,71H,00H 即数据的首尾为0(这是个标记而已),中间才是七段码 0--F 的显示数据;2、对CK1、CK2键盘按下及松开程序...
...p3.5)键三次后,P1口的LED灯全部点亮,再按1次key1
while(!key1); \/\/再次判断按键key1是否已松开 num++;} } if(num>2) \/\/按键按下3次,P1口灯亮 { num = 0;flag = 1;P1 = 0; \/\/P1口灯亮,为P1口输出低电平灯亮 } if((key1==0)&&(flag==1)){ delay40us(250);if(key1==0){ while(!key1);delay40us(250);while(!
利用单片机AT89C51与ADC0808设计一个数字电压表,能够测量0~5V的直流电...
LED具有耗电低、亮度高、视角大、线路简单、耐震及寿命长等优点,它由4个发光二极管组成,其中3个按‘8’字型排列,另一个发光二极管为圆点形状,位于右下角,常用于显示小数点。把4个发光二极管连在一起,公共端接高电平,叫共阳极接法,相反,公共端接低电平的叫共阴极接法,我们采用共阴极接法。当发光二极管导通时,...
C语言如何编程让一个按键轮流点灯。按一下1灯亮,在按下1灯灭2灯亮,在...
key() \/\/按键判断程序 { if(BY1==0) \/\/判断是否按下键盘,当单片机上电时所有IO口为\/\/高电平,S2键一端接地另一端接P3.4,所以当键被按下时P3.4口\/\/直接接地,此时检测P3.4肯定为低电平。{ delay10ms(); \/\/延时,软件去干扰 if(BY1==0) \/\/确认按键按下 { count++; ...
keil51,按下开关k1,让8只LED灯加一显示;按下开关K2让8只LED减一...
你可以自己对照到你的原理图,把单片机的引脚改一下。include <reg52.h> include <intrins.h> define uint unsigned int sbit key_s2 = P3^0;\/\/独立按键S2 sbit key_s3 = P3^1;\/\/独立按键S3 void delay(uint z) \/\/延时函数 { uint x,y;for(x=z; x>0;x--)for(y=114;y>0;y...
求一个好使的 ch451 控制程序 自己在网上找了几个 都不怎么好用 求高手...
再写你要显示的内容,有三种方法如下\/\/ LED_printf(uchar *LED_Data); \/\/添加数据的字符串地址 例如:uchar led[8]={7,6,5,4,3,2,1,0}; LED_printc(uchar p,uchar LED_data); \/\/对单个数据显示 第一位是位置,第二位是数值 例如:LED_printc(2,3); LED_prints(unsigned char *led_string); ...
用单片机设计制作一个模拟的十字路口交通信号灯控制系统。
其原理是INTO=P3.4&P3.6&P3.7,当有键按下时,外部中断0口线就会变成低电平,通过键扫程序来具体判断到底是哪个键按下,CPU才会去执行中断里面的某个键功能。12个发光二极管是由P0口控制的,P0口与二极管之间串接一个限流电阻使二极管不易烧坏,采用送低电平有效。 2 交通灯硬件系统的设计 2.1 硬件系统各模块功能...
C语言编写STC12C5A60S2芯片用4个按键控制四个灯的亮灭
sbit LED_ 4= P2^4;sbit LED_ 3= P2^3;void main ( ) {while(1){if (!KEY_0 ) { \/\/ 按键KEY_0被按delayus(20); \/\/消抖动 if (!KEY_0 ) { \/\/确认被按下 LED_7=~LED_7 \/\/灯亮或灭}}}... 其余一样即可。