单片机的矩阵键盘检测,扫描程序已经写出来了,怎么显示呢

我的程序里是用MOVC A,@A+DPTR,MOV P2,A ;这两条指令显示的,p2 口接共阴数码管,但是我送给数码管的数是十进制的,那怎么在查表指令里给转换成,十六进制的

MOV A,R1 ;R1中是要显示的十进制
MOV DPTR,#TABEL ;使DPTR 指向TABEL(TABEL 中 是10进制对应的16进制表格)
MOVC A,@A+DPTR;查表
MOV P2,A ;此时A中即是 16进制

;-----------LED的 共阴码表------
TABEL:
DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH;0123456789
DB 77H,7CH,39H,5EH,79H,71H,73H,76H,40H,00H;AbCdEFPH-不显示追问

我就是这样弄的,但是不行啊,你有没有现成的汇编程序给我参考一下。我是反复看了我的程序了没问题啊。你要有的话,还是发给我看一下吧

追答

什么 现成的 查表只是程序的一小部分,给你看 也不好看懂得,你是要做什么程序就按我上面的程序就是对的,要查第二个数据的话就加一句 INC R1, 要么还是不行的话 就是你硬件电路 有问题啦 ,注意数码管 是共阴的 引脚别接错了

温馨提示:内容为网友见解,仅供参考
第1个回答  2011-09-05
用数组,数组的下标为你现在的十进制数,数组存一个数码管对应的数。你懂得~追问

汇编啊,不是C语言

追答

TAB查表,原理和数组一样,记得初始地址,然后加一……

第2个回答  2011-09-05
表格里放的就是十六进制的显示的段码。比如第1 个放的是0的段码,第2 个放的是1的段码。。。。

单片机的矩阵键盘检测,扫描程序已经写出来了,怎么显示呢
MOV A,R1 ;R1中是要显示的十进制 MOV DPTR,#TABEL ;使DPTR 指向TABEL(TABEL 中 是10进制对应的16进制表格)MOVC A,@A+DPTR;查表 MOV P2,A ;此时A中即是 16进制 ;---LED的 共阴码表--- TABEL:DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH;0123456789 DB 77H,7CH...

请教51单片机矩阵键盘扫描数码管显示的问题
51单片机矩阵键盘扫描与数码管显示是最典型的电路,画仿真图更简单,用四位一体的数码管显示按键,可模拟计算器输入数字,按键后,每个按键的数依此向左移位显示。如下图所示的仿真图。

矩阵键盘说明书矩阵键盘
1.按下键盘上的清除键,清除键盘输入区的数字显示。2.输入所选的显示器编号,该编号将显示在键盘的输入区域。3.按MON键,监视器号将显示在键盘监视器的监视器区。4.同时,系统主机会返回该显示器对应的图像编号,并显示在键盘的摄像头区域。5.输入选定的摄像机编号,该编号将显示在键盘的输入区域。6...

51单片机矩阵键盘检测方面的问题
第一个问题,应该是考虑如果先开锁存器,在那一时刻,P0的值还是上一次给P0赋的值,下在一条语句才将这次的值给P0,这样会造成数码管的余辉,静态显示的时候,因为太快看不到,动态显示时,就会比较明显了。第二个问题他的程序应该检测的是高四位,是否被拉低,因为temp和0xf0与,低四位不管是什...

51单片机 矩阵键盘 检测的命令
temp的值会受到按键的影响,例如变成:7e或别的值等。

51单片机矩阵键盘反转法扫描,按键后在lcd上显示的问题
主程序写的不对,这样写,开机后只读一次键盘,可是还没有按键就过去了,然后进入死循环了 while(1);这是死循环。改成这样 void main(){ unsigned char num;lcd_init();while(1) \/\/这行不能打分号;{ num=key_num();lcd_onedis(0,1,num);} } ...

单片机4*4矩阵键盘两位数码管显示0—16
步骤如下:1、将4x4矩阵键盘连接到单片机上,并将数码管连接到单片机上。2、编写程序以实现键盘扫描和数码管显示。3、使用行扫描法识别键盘输入。将行线设置为高电平,然后逐行扫描列线。4、使用两位数码管显示0-16的数值。将数码管的段选线连接到单片机的GPIO引脚上,并将位选线连接到另一个GPIO引脚...

51单片机的矩阵键盘检测问题
扫描按键有没有释放,如果释放再加个消抖延时,再扫描有没有释放,如果按键释放则确认已经松手了。我是这么做的,可以用

单片机行列式键盘扫描原理?
单片机行列式键盘扫描原理如下:1、行线P10~P13为输出线,列线P14~P17为输入线。一开始单片机将行线(P10~P13)全部输出低电平,此时读入列线数据,若列线全为高电平则没有键按下,当列线有出现低电平时调用延时程序以此来去除按键抖动。2、延时完成后再判断是否有低电平,如果此时读入列线数据还是有...

求助程序:51单片机矩阵键盘是否按下检测程序
矩阵按键实验 实现现象:下载程序后数码管显示0,按下矩阵按键上的按键显示对应的数字 S1-S4:0-3 S5-S8:4-7 S9-S12:8-B S13-S16:C-F。注意事项:如果不想让点阵模块显示,可以将74HC595模块上的JP595短接片拔掉。\/ include "reg52.h" \/\/此文件中定义了单片机的一些特殊功能寄存器 typedef...

相似回答