那个我要的是汇编程序,不是要C语言
用89C51单片机设计4*4矩阵式键盘计算器程序 要汇编的
NK1: CJNE A,#0D0H,NK2 ;如果扫描数据不为0D0H就转到NK2 MOV KEYBUF,#1 ;否者判断为1号键 AJMP DK ;转DK2查表程序NK2: CJNE A,#0B0H,NK3 ;如果扫描数据不为0B0H就转到NK3 MOV KEYBUF,#2 ;否者判断为2号键 AJMP DK ;转DK3查表程序NK3: CJNE A,#70H,NK4 ;如果扫描数据不为70H就转...
汇编语言设计的单片机4*4矩阵键盘
LJMP MAIN ;返回调用子程序反复循环显示 KEY: LCALL KS ;调用检测按键子程序 JNZ K1 ;有键按下继续 LCALL DELAY2 ;无键按下调用延时去抖动程序 AJMP KEY ;返回继续检测有无按键按下 K1: LCALL DELAY2 LCALL DELAY2 ;有键按下继续延时去抖动 LCALL KS ...
单片机4×4矩阵键盘扫描编程问题(里面详细,欢迎高手)
扫描第一行,就是将第一行电平置为低电平,其他的都为高,扫描哪一行就让哪一行的电平置零,其他行为高电平。这就是第一个问题。在没有键按下的时候,列线全部是高电平,有第一行的键按下的时候,相应的列线就为低电平了,n=P1;n&=0xf0;if(n!=0xf0)这几句就是判断有没有键按下。在第...
89C51单片机 4*4矩阵键盘加流水灯问题,求个汇编程序代码。
;其实很简单,都不用判断键值,有键按下暂停2S程序如下:ORG 0000H LJMP STA ORG 000BH LJMP T0ISR ORG 0030H STA:MOV TMOD,#01H MOV TH0,#3CH MOV TL0,#0B0H SETB ET0 SETB EA MOV 30,#0FEH MOV R2,#0 CLR 00H LOOP:MOV P1,#0F0H MOV A,P1 CJNE A,#0F0H,LOOP1 SJMP LOOP...
C51 4*4键盘扫描程序(c语言)
键盘为4*4矩阵式连接,一共有16个按键。 工作原理为。P1端的低四位为列,高四位行。所先置低四位为低,高四位为高,当有按键按下时高四位就会有某位被拉低。只要判断高四位不为全高就说明有按键按下。判断有按键按下后就要判断是某位按下的,方法为,选将高四位的某一位置低。判断低四位...
verilog HDL设计4*4矩阵键盘相乘...
定义两个reg型变量,a和b,分别存储两次按键输入的数值(很可能是扫描输入的,如果是扫描方式的话,就像楼上说的一样),然后定义一个c,根据开发软件的不同,有的可以直接写c=a*b,有的必须要调用乘法核。计算完成后,需要查表确定显示输出方式(以七段数码管为例,要做出一个表格,标志着每个数字...
求用汇编语言写的代码,要求:4x4矩阵键盘输入什么数字就在LCD显示屏上显...
lcd1602_e=0; lcd1602_e=1; }while(lcd1602_busy);}\/*** * 函数名称: lcd1602_WriteCmd() * 函数功能:写命令 * 入口参数:命令字 * 出口参数:无***\/void lcd1602_WriteCmd(const uchar cmd)
有没有高手能写写4*4的矩阵按键程序啊,还要加蜂鸣器的那种程序,急用...
4×4矩阵式键盘识别技术实验任务如图4.14.2所示,用AT89S51的并行口P1接4×4矩阵键盘,以P1.0-P1.3作输入线,以P1.4-P1.7作输出线;在数码管上显示每个按键的“0-F”序号。对应的按键的序号排列如图4.14.1所示图4.14.1硬件电路原理图图4.14.2系统板上硬件连线把“单片机系统“区域中的P3.0-P3.7端口用8芯排线连...
89c51单片机4*4矩阵键盘编程。
CLR P1.4 MOV A,P1 ANL A,#0FH XRL A,#0FH JZ SW1 LCALL DELAY10MS JZ SW1\/\/确认有键按下,但不知道哪个,此时可以之间让蜂鸣器叫 MOV P3.0,#1\/\/蜂鸣器发声(赋1还是赋0取决你用的蜂鸣器)MOV A,P1 ANL A,#0FH CJNE A,#0EH,K1 MOV COUNT,#0 LJMP DK K1: CJNE A,#0DH,K2 ...
数码管显示4×4键盘矩阵按键,如何用KEIL软件编写?谢谢大家了..._百...
break;case 4: KeyNO = 2; break;case 8: KeyNO = 3; break;default: KeyNO = 16;} P1 = 0xf0;DelayMS(1);Tmp = P1 >> 4 ^ 0x0f;switch(Tmp){ case 1: KeyNO += 0; break;case 2: KeyNO += 4; break;case 4: KeyNO += 8; break;case 8: KeyNO += 12;} ...