51单片机流水灯程序按钮P1口接4个按钮K1~K4,有键按下时,通过串行口将按键编号(1~4)发送给虚拟终端.

查看: 5259|回复: 10
按键控制LED 按键K1总开,按键K2/K3/K4分别控制LED1/LED2/LED3,刚接触单片机,各...
按键控制LED 按键K1总开,按键K2/K3/K4分别控制LED1/LED2/LED3,刚接触单片机,各位帮帮忙
#inlcude &reg51.h&
sbit LED1 =&&P1^0;&&// LED 高电平亮
sbit LED2 =&&P1^1;
sbit LED3 =&&P1^2;
sbit KEY1 =&&P2^0;//按键低电平有效
sbit KEY2 =&&P2^1;
sbit KEY3 =&&P2^2;
sbit KEY4 =&&P2^3;
char KEY1_T,KEY2_T,KEY3_T,KEY4_T;
void main()
& &while(1)
& & if& && & ( (KEY1 == 0)&&(KEY1_T == 0) ){LED1 = 1;LED2 = 1;LED3 = 1;KEY1_T = 1;} //总控开
& &else if&&( (KEY1 == 0)&&(KEY1_T == 1) ){LED1 = 0;LED2 = 0;LED3 = 0;KEY1_T = 0;} //总控关
& & if& && & ( (KEY2 == 0)&&(KEY2_T == 0) ){LED1 = 1;KEY2_T = 1;}&&//LED1 开
& &else if&&( (KEY2 == 0)&&(KEY2_T == 1) ){LED1 = 0;KEY2_T = 0;}&&//LED1 关
& &if& && &&&( (KEY3 == 0)&&(KEY3_T == 0) ){LED2 = 1;KEY3_T = 1;} //LED2 开
& &else if&&( (KEY3 == 0)&&(KEY3_T == 1) ){LED2 = 0;KEY3_T = 0;} //LED2关
& &if& && &&&( (KEY4 == 0)&&(KEY4_T == 0) ){LED3 = 1;KEY4_T = 1;} //LED3 开
& &else if&&( (KEY4 == 0)&&(KEY4_T == 1) ){LED3 = 0;KEY4_T = 0;} //LED3关
自己在弄一下按键去抖!
回帖助人的奖励!
你的电路是自己焊的,还是买的,如果是买的,你可以投机取巧,直接接电源,sbit L1=Key1,按下去就会有反应,程序的话也比较简单,就是一个if(Key1==P)
回帖助人的奖励!
你的电路是自己焊的,还是买的,如果是买的,你可以投机取巧,直接接电源,sbit L1=Key1,按下去就会有反应 ...
这里面都是51 单片机吗
回帖助人的奖励!
在详细就只有程序
其实很简单,如果要学会,多看看那些视频教程,单独将如何点亮LED&&如何扫描键盘,如何去抖,都有讲,这里回答你都不是很全面
回帖助人的奖励!
是要源代码么?要是写的话就直接写K1按下后标志位置1,然后在标志位置1以后再判断其他按钮是不是按下就可以了啊
回帖助人的奖励!
Powered by求解读51单片机用四个按键独立控制四个led的c程序_百度知道
求解读51单片机用四个按键独立控制四个led的c程序
#include&reg51.h&
//k2~k4 分别控制le1~le4
void delay(unsigned int x)
while(x--);
void key_event (unsigned char d)
case 14: P1^=(1&&0); //k1
case 13: P1^=(1&&1);//k2
case 11: P1^=...
我有更好的答案
#include&reg51.h&//k2~k4&分别控制le1~le4&void&delay(unsigned&int&x)&//延时函数{&&while(x--);&&//延时数减一}&void&key_event&(unsigned&char&d)&//根据扫描到的键值,亮相应的LED&{&&&switch(d)&&{&&case&14:&P1^=(1&&0);&&//k1 键按下了&&case&13:&P1^=(1&&1);&&//k2键按下了&&case&11:&P1^=(1&&2);&&//k3键按下了&&case&7:&&P1^=(1&&3);&&//k4键按下了&&&//&&default:&P1^=(1&&7);&&//缺省值,都不亮&&}}&void&key()&&//按键扫描{&static&char&i;&unsigned&char&a;&unsigned&char&b;&a=P2;//0000aaaa&,0;&a&&=4;//a=a&&4;&//移动4位,a&取值&if(a!=15)&//至少有个键按下&{&&&if(i==0)&//0&的时候,标示没有建按下&&&{&&&&&delay(1000);&//延时&1000次b=P2;&//把按键的口赋给变量&bb&&=4;&//移动四位,b&取值if(a==b)&//如果a和b相等{&key_event(b)&;&//这次按键有效&i=1;&//1&不允许其它键按下}&&&}&}&else&{&&i=0;&//不是有效键按下,清&0&&}}void&main()&//主函数开始{&while(1)&//进入循环,检测按键按下情况&{&&&key();&&&}}
你好为什么要a==b按键才有效呢
采纳率:62%
这个比较简单的,在程序上的处理不用像你这么复杂,需要可以叫我,我这里有一些资料,可以交流一下,多谢。
为您推荐:
其他类似问题
您可能关注的内容
51单片机的相关知识
换一换
回答问题,赢新手礼包
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。已解决问题
求RM51单片机开发板??
求RM51单片机开发板??
浏览次数:120
用手机阿里扫一扫
最满意答案
RM51单片机开发板本站最新的RM51单片机实验板采用优质环氧树脂双面PCB板材,专业大厂生产。元件一律采用优质元器件,所有产品都经过严格测试,确保每一个产品的质量,同时提供1个月包换,1年保修,终身技术支持的超值VIP售后服务。注:随机光盘内包产品详细使用说明和编程器中文版驱动软件,单片机学习教程,单片机多媒体教程,大量单片机实验例程,单片机开发常用工具软件,学习资料等。&&&&&&&&性能超群、资源丰富、超高性价比、单片机学习开发的利器!!!&&&&&&&&&&完全兼容各种教科书和网络单片机教程,如经典的&平凡单片机教程&和本站的&单片机轻松入门教程&等。&&&&&&&全开放接口设计,既是学习实验板,也是目标应用板,通过标准外扩接口实现无限升级。。。&&&&&&&&&&标准在系统编程ISP接口,配合下载线可实现程序在系统下载,避免频繁拔插实验芯片,开发效率极高。&&&&&&&&&&&&&适合于初学者学习开发单片机应用系统,配合网站教程,初学者能够快速入门。。。&&&&&&更多特性请看下面的详细介绍......&&&&点击查看高清晰照片&&&&&产品资料方面,随机赠送:实验板的原理图+大量实验例程+单片机芯片中文资料超值资料坚持技术公开,完全公开实验板原理图,初学者不但可以学习到单片机软件的开发,还能够快速掌握单片机外围硬件扩展原理,从而掌握单片机的硬件开发技术,参照原理图,用户就可以举一反三,轻松DIY自己的外围实验电路,通过板载的全功能开放升级接口进行升级实验,从而实现产品的无限升级。用户甚至可以参照实验板原理图,轻松打造出自己特色的单片机实验板、单片机开发系统,掌握产品开发能力!最重要的是:可以帮助初学者快速掌握单片机程序设计和硬件开发技术,成为真正具备独立的软件和硬件开发能力的软硬兼备的全面型单片机综合开发高手!&点击放大查看清晰的原理图局部电路随机赠送产品配套原理图点击放大查看产品配套光盘详细目录列表点击放大查看光盘内大量单片机实验例程列表一、在系统可编程(ISP)特性RM单片机实验板集成了标准ISP编程接口,全面支持AT89S**系列在系统可编程(ISP)单片机,如常见的AT89S51、S52、S53、S8252等实验,和ISP下载线连接后可以对单片机芯片进行批量烧写,可以当编程器使用。在系统可编程技术即In&System&Programming&,插好实验单片机芯片后,可以在系统写入程序代码到芯片内部,烧写程序时候不用频繁拔下插入芯片,只要鼠标点击即可把程序写入单片机,彻底告别以前那样用编程器反复烧写拨插芯片的烦恼。&烧写时不再需要12V的VPP编程电压,在系统编程使得芯片寿命更长,超过普通芯片89C51的10倍以上,性能更高,全面向下兼容89C5**系列单片机,写入速度更快,稳定性更好,写入完成后自动运行新程序,可以立即查看到程序运行结果,具有所见即所得特性,修改程序效率极高,易用性接近仿真器,学习使用更方便、更快捷!传统实验板由于不支持在系统可编程(ISP)技术,没有ISP接口。实验验证程序时必须把实验芯片拔下来,在编程器上把程序代码写入芯片后,再插回实验板才能验证程序。传统的编程方法需要频繁地拔插芯片,效率低下,同时容易造成实验芯片的烧坏,因此传统的没有ISP接口的实验板在使用的方便性和综合性能上远不如支持ISP编程的实验板。下面就是本站RM51单片机实验板的ISP接口图:本站ISP接口采用专用了IDC10底座,具有防插反功能,可以防止下载电缆插反时烧毁芯片。ISP接口图插入ISP编程电缆对AT89S51在系统编程什么是在系统可编程(ISP)技术?什么是AT89S51单片机?&很多51单片机初学者会有这样的疑问。教科书和网络教程上介绍的都是和89C51等,并没有介绍89S**系列ISP单片机?!到底什么是89S51呢?89S**系列单片机对于以前的51产品有哪些优势呢?&&&&&&&点击马上查看ISP技术优势和AT89S51单片机的由来&&&&&&&二、板上集成硬件资源丰富RM单片机实验板可以说是&麻雀虽小,五脏俱全&,板上集成了学习单片机常用的各种硬件资源,按键扫描、6位数码管、8位流水灯、串行存储器24C04、继电器、小喇叭、1602字符型液晶模块、12864中文液晶模块、200米无线遥控、串行通信。。。,同时加强了接口功能的扩展,系统除了集成ISP在线下载接口外还集成了多媒体红外遥控接口和DS18B20温度传感器的(1-wire)单总线接口,采用全开放接口设计,单片机的32根I/O线和相关控制线均可以通过标准外扩接口进行升级,学习资源更丰富。1、集成了6位高亮度数码管。可以用于计数器试验、数字显示试验、单片机电子钟试验和温度测量试验等,您通过该试验可以掌握数码管动态扫描的用法。板上6位数码管最大计数可达&999999&,而其它网站实验板大部分使用4位数码管,计数最大值仅为&9999&,6位数码管在做是真实验时候就可以很好地显示时、分、秒了。也许当您通过该实验板步入神秘的单片机世界,成为单片机高手后,您仍可以让该实验板发挥余热,编程使该实验板成为一个高精度的电子温度计或高精度恒温自动控制器。。。&&&&&集成6位高亮度数码管&&&&比普通实验板的2位或4位数码管更多2、集成了红、绿、黄三色8位高亮度LED流水灯。可用于交通灯程序实验、流水灯试验,想怎么流就怎么流,可监视P1口状态或用作硬件标志位。通过流水灯试验学习单片机I/O口基本知识,掌握P1口作为输出口的使用方法,掌握移位指令的用法,红、绿、黄三色LED在做交通灯实验时候就可以很好的模拟交通灯的变换,并且光盘里面有配套的交通灯实验程序。3、4只独立按键K1~K4。可用于外中断试验、定时器计数试验、键盘扫描试验等,通过试验掌握外中断的编程方法、学习51单片机定时器计数器功能的应用、键盘扫描的原理和编程方法,掌握掌握单片机I/O引脚作为输入口的使用方法4、蜂鸣器(小喇叭)。可用于单片机音响试验,实现单片机唱歌、声音报警发声等,通过试验了解发声原理,掌握单片机音响程序设计方法5、继电器。通过继电器控制试验,掌握继电器的驱动原理和编程方法,继电器是弱电控制强电的最佳接口器件,被大量应用于各种工控设备中,如车床的驱动接口。。。本实验板继电器接口经过加强设计,采用3.96mm专用接线柱输出接点,接线更加方便,接触更加可靠;加大了继电器与其它电路之间的布线安全间距,可靠性和安全性更高,能够直接用于控制各种负载,成为一个实用化的嵌入式控制系统。&6、I2C串行接口EEPROM存储器24C04。I2C接口串行非易失存储器广泛应用于手机以及仪表等领域,由相同芯片封装而成的IC卡也在IC卡电表等产品中广泛使用,在家电产品中如电视机、卫星接收机等也有广泛应用,有些彩电存储电视节目的存储器就是24C04,一个芯片即可以存储上百个电视节目信息。24C04的工作电压2.7V~5.5V,存储空间为4K位,即512个8位字节,芯片具有写保护功能,存储的数据断电后可以保存100年,擦写次数大于1000000次。。。7、1602字符型液晶(LCD)接口。应用范围最广的带背光字符型液晶模块,1602LCD可显示2行,每行16个字符,广泛用于各种便携式仪器仪表中。。。通过试验掌握液晶模块的驱动方法。下图是RM单片机实验板驱动LCD1602液晶显示的效果:&温度传感器DS18B20测温实验时液晶模块LCD1602显示效果第一行:显示DS18B20温度传感器工作正常第二行:显示的是测到的温度值31.6875℃8、12864中文液晶模块液晶接口。可显示中文,开发中文液晶应用系统的最常用液晶器件,广泛用于各种便携式仪器仪表中。。。通过试验掌握中文液晶模块的驱动和开发方法。9、ISP下载线接口。在系统可编程ISP接口,接上ISP下载电缆后即可快速下载程序到单片机内部而不用把单片机从实验板上拔下来,非常实用的接口,可以极大地提高程序修改的效率。本站ISP接口具有防插反功能,保护您的实验板和下载器。&&&&不同ISP插座比较图&&&&本站使用了具有防插反功能的ISP插座,&保护被编程芯片。其它网站使用的简单ISP下载接口,没有防插反功能,下载线接反时会烧毁编程器和实验板及编程芯片10、RS232串行通信接口。用来实验单片机和电脑相互通信的接口,可以把单片机采集到的数据(如DS18B20测到的实时温度数据)通过RS232串口发送到电脑上进行后续处理、存储。同时电脑也可以通过RS232接口向单片机发出控制指令,比如控制实验板上的继电器动作等。。。本站,RS232接口电路采用RS232专用接口芯片MAX232C构成,具有极高的稳定性和可靠性,从根本上消除通信误码。非一般由三极管和阻容元件组成的简易RS232接口,简易接口成本低,可靠性和稳定性较差,容易造成通信失败。11、温度传感器DS18B20接口。DS18B20为美国DALLAS公司最新推出的新一代数字式单总线(1-wire)接口温度传感器,DS18B20是DS1820的更新产品。单总线接口,只有一根信号线与CPU连接,温度测量范围在-50℃~+125℃之间,在-10℃~+85℃之间测量精度为&&0.5℃,它能够直接读出被测温度并且可根据温度控制精度要求设置为9或12位的数字值读数方式,可以分别在93.75ms和750ms内将温度值转化9位和12位的数字量,传感器测量精度高,用户可设定非易失性的报警上下限温度值,通过报警搜索命令可以快速识别哪片DS18B20温度超限报警,因此使用DS18B20数字温度传感器可使您的测控系统系统结构更趋简单,可靠性更高,被广泛应用于工控系统中,如恒温控制室、大型粮仓监测、军火库温度监测、各种微机机房温度监测等。。。左图:实验板上的DS18B20接口,采用专用底座,可防止DS18B20插反而烧毁温度传感器。右图:已焊接好引线的DS18B20温度传感器,使用屏蔽线焊接,彻底消除各种干扰信号对传感器的影响。采用三线接法,此种接线方法工作更加可靠,特别适用于工控现场多点测温,在单总线上可以挂任意多个DS18B20,实现多点同时测温。把传感器插到实验板上即可做温度测量试验。点击图片放大查看12、红外遥控接收接口。非常实用的接口,有了红外遥控接口,我们就可以通过遥控器遥控单片机执行相应的遥控指令了,比如遥控实验板上的继电器,通过继电器接点再控制小灯泡亮与灭,DIY一个自己的遥控灯,在晚上可是特别有用哦,再也不用摸黑下床去找电灯开关了!!!当然您也可以把遥控器当成一个无线的矩阵键盘,编出功能强大的控制程序。。。左图:实验板上的红外遥控接口,采用专用底座,可防止红外接收头插反而烧毁。右图:已焊接好引线的红外接收头和对应的遥控器。接收头使用屏蔽线焊接,彻底消除各种干扰信号对接收头的影响,红外接收更稳定可靠,遥控距离更远,最远可达12m,在房间内通过反射信号就能够可靠地解码,没有方向性。把接收头插到实验板上即可做遥控实验。点击图片放大查看13、200米无线遥控解码接口。非常实用的接口,有了无线遥控接口,我们就可以开发无线遥控安全系统。弥补红外遥控信号不能穿透墙壁的缺点,实现无限制的远距离自由遥控。板载200米无线遥控接口,配合无线遥控收发实验套件,轻松开发无线遥控系统。&&&&查看详细介绍&&&&14、板载万用晶振插座。有了该插座,想要什么样的晶振频率都不费吹灰之力,把晶振拔下来换一个合适的,瞬间即可完成。比如12MHZ的晶振比11.0592MHZ晶振更适合做电子时钟试验,只要把11.0592MHZ的晶振拔下来,换上12M的即可;如果想让您的单片机运行速度更快,把晶振拔下来换上一个24M的,想换就换,随心所欲!!!左图:没有插入晶振时的万用晶振插座右图:插入11.0592MHZ晶振时的图片&&&&板载万用晶振插座&&&&15、板载液晶模块背光控制开关。我们通过该背光控制开关,我们可以控制液晶模块的背光16、板载数码管显示控制开关。我们通过该开关可以实现对数码管的显示控制17、电源总控制开关。&有了该总开关,在拔出芯片或更换实验配件时候就不用拔下USB电缆了,直接按压电源开关关闭电源即可更换,操作更加方便,更加人性化的设计。三、RM单片机实验板的硬件设计特点1、电源部分采用7805稳压电源和USB接口双电源设计,双电源自动切换。切换电源时不需要拔插跳线手动选择,只要USB接口或外接电源之中一个有电源,实验板就能够自动获得稳定的工作电源。2、USB接口过流短路保护电路。采用USB接口供电时,最大电流限制在500MA,有效避免&过载和短路&等给电脑USB口造成伤害。3、普通电源插座的后级采用集成全桥整流电路,外接输入的电源可以是交流或者直流,不分正负极,输入电压范围是交流8~12V,直流8~15V,不论交直流,保证在输出端可以得到稳定的5V标准电源电压,具有极高的兼容性,即使在地摊上买到的电源在这里都可以使用。4、稳压电路采用进口原装正品7805三端稳压集成电路,同时配备了专业的铝散热片,确保三端稳压集成电路7805的良好散热效果,输出的电源电压更稳定,纹波更低。5、增加了VCC、GND电源输出接口(如上图所示),进行扩展实验时,扩展实验板可以通过该接口取得5V工作电源,更加方便。6、电源部分采用了双1000UF大容量电解电容进行滤波,同时增加了高频滤波去偶电容C,电源质量更高。其他网站实验板电源部分仅用1个470UF电容和1个100UF电容进行滤波,没有高频滤波去偶电容。7、独有VCC和GND两个参考电位测试孔,测试更加方便。测试时可以把一根万用表表笔插入GND测试孔,另一根表笔对测试点进行测试,因此很方便实验时进行测试。不用再需要两个手都拿表笔进行测试,操作更加安全。大家都有这样的经历,测试时每个手要抓一根表笔进行测试,因为要同时兼顾两个手的操作,这样操作很容易发生表笔滑动,造成短路,严重时短路烧坏实验板。有了测试孔,想测就测,毕竟用万用表是我们认识硬件,了解硬件的最有效工具。8、PCB四角有开有标准3mm定位安装孔,方便加装外壳时进行电路板固定或加装绝缘底座。9、印刷板精心设计,采用优质双层PCB板,最佳的布局和完善的布线技术,加强了VCC、GND电源的布线宽度,采用大面积接地敷铜技术,大面积接地敷铜可以显著提高抗PCB的干扰能力,同时也加强了PCB的机械强度。10、对PCB的所有焊盘进行了补泪滴,泪滴焊盘可以加大焊盘的有效面积,增强了元件引脚和焊盘之间的连接强度,增大了焊盘的抗机械剥离强度。。。11、优化了布线技术,加强了电源设计,电源滤波电容就由双1000UF的电容组成,稳压集成电路7805安装了专业的铝散热片,使用外接电源时即使长期工作,也不用担心7805过热问题;加强了去偶电路设计,核心单片机CPU和每一个数字芯片如24C04、MAX232等芯片及电源部分都增加了1个高频去耦电容,去偶电容总数多达4个,因此整个实验板具有极高的稳定性和可靠性,并一般非简单实验板可以比拟。12、采用零拔插力缩紧(ZIF)插座,芯片锁紧接触更加可靠,绝对不会出现接芯片触不良的现象,操作手感更加好。。。14、增加了通信状态指示灯,调试单片机和电脑通信程序时可以直接观察到单片机通信端口(TXD)发送数据时的效果,更加直接,直观。&四、RM单片机实验板导购RM单片机实验板标准配置配件名称简要说明价格RM单片机实验板1台全面支持ISP编程、仿真、实验一体,键盘扫描、流水灯、继电器、串行通信、液晶模块、数码管、DS18B20温度监控、红外遥控等各种实验。。。全开放接口无限升级RS232串口通信线1条标准9芯RS232串口通讯线,开发串口通信程序时和PC联机通信实验USB电源线1条从电脑的USB接口取得工作电源,免去了笨重的变压器,体积更小实验板电路图提供实验板原理图(PDF格式),安装&Acrobat&Reader&5.0简体中文版查看产品配套资料光盘光盘主要内容:&产品详细使用说明书、编程器驱动软件、常用单片机开发工具软件、KeilC51v612完全破解版(单片机仿真开发集成环境)、Keil实用教程资料和使用详解、单片机实验板原理图、大量单片机实验例程、仿真监控芯片SST89E564RD核心资料和仿真芯片的最新版监控程序、经典的电子技术和单片机学习资料、单片机芯片及常用器件中文资料、单片机和Protel99se电路设计及电子技术书籍,超值单片机多媒体教程、Protel多媒体教程学习资料。。。等超值资料(共628M)RM51单片机实验板外观精美,标准化设计,硬件可以和教科书上的标准程序以及平凡老师提供的程序兼容,设计布局合理,稳定性、可靠性高,综合性能超群,系统硬件资源丰富,可以说是&麻雀虽小,五脏俱全&,板上集成了学习单片机常用的各种硬件资源,按键扫描、6位数码管、流水灯、串行存储器24C04、继电器、小喇叭、1602液晶模块、12864液晶模块、200米无线遥控模块、串行通信。。。,同时加强了接口功能的扩展,系统除了集成ISP在线下载接口外还集成了红外遥控接口和DS18B20温度传感器的(1-wire)单总线接口,同时采用USB电源和稳压电源双电源设计,增加了电源总控制开关,使用更加方便;全开放接口设计,单片机的32根I/O线和相关控制线均可以通过标准外扩接口实现无限升级。。。既是学习实验板,也是目标应用板。标准的在系统编程ISP接口,实现程序的ISP在系统下载,避免频繁拔插烧写实验单片机芯片,开发效率极高。具有极高的性价比,对于单片机初学者和广大单片机爱好者来讲是非常实惠的,是一款难得的单片机入门、单片机开发的利器!
答案创立者
以企业身份回答&
正在进行的活动
生意经不允许发广告,违者直接删除
复制问题或回答,一经发现,拉黑7天
快速解决你的电商难题
店铺优化排查提升2倍流量
擅长&nbsp 店铺优化
您可能有同感的问题
扫一扫用手机阿里看生意经
问题排行榜
当前问题的答案已经被保护,只有知县(三级)以上的用户可以编辑!写下您的建议,管理员会及时与您联络!
server is ok急求:使用四个独立按键控制四个LED灯亮灭的单片机汇编程序
本回答由提问者推荐
var sogou_ad_id=731547;
var sogou_ad_height=160;
var sogou_ad_width=690; 上传我的文档
 下载
 收藏
粉丝量:216
该文档贡献者很忙,什么也没留下。
 下载此文档
正在努力加载中...
MCS51单片机原理及应用
下载积分:3000
内容提示:MCS51单片机原理及应用
文档格式:DOC|
浏览次数:16|
上传日期: 15:16:52|
文档星级:
全文阅读已结束,如果下载本文需要使用
 3000 积分
下载此文档
该用户还上传了这些文档
MCS51单片机原理及应用
关注微信公众号

我要回帖

更多关于 单片机按钮 的文章

 

随机推荐