当前位置:首页 > 单片机 > 单片机
[导读] 在一个沒有規则性的内容转换中,查表程序是相当有用的,用户可以使用查表程序很快速的得到相关内容的转换。例:设计一个程序,將如下图所示中的PORT5读到的一个数值,将输入内容做转换,然后输出到PORT

在一个沒有規则性的内容转换中,查表程序是相当有用的,用户可以使用查表程序很快速的得到相关内容的转换。
例:设计一个程序,將如下图所示中的PORT5读到的一个数值,将输入内容做转换,然后输出到PORT6的7段显示器上。

上图中开关关闭,I/O引脚可以得到一个低电位,若是开关开启则I/O引脚可以得到一个高电位。


图5.2数码管八段说明
7段显示器的接线图如上,我們要編一个表做为读入内容以及输出内容的对映。

7段显示器各脚位电位状态PORT6输出PORT5输入
HGFEDCBA16进位数值10进位数值
001111110X3F0
000001100X061
010110110X5B2
010011110X4F3
011001100X664
011001100X6D5
011111010X7D6
000001110X077
011111110X7F8
011011110X6F9
011101110X7710
011111000X7C11
010110000X5812
010111100X5E13
011110010X7914
011100010X7115


程序清单如下:
PC==0X02;定义。
PORT5==5
PORT6==6
ORG0X10;设定程序起始位址。
MOV A,@0
IOWPORT6;设定PORT6为Output口。
MOV A,@0XFF
IOWPORT5;设定PORT5为Input口。
JMPSTART;跳转到主程序中。

TABLE:;输入及输出对映表。

ADDPC,A
RETL@0X3F
RETL@0X06
RETL@0X5B
RETL@0X4F
RETL@0X66
RETL@0X6D
RETL@0X7D
RETL@0X07
RETL@0X7F
RETL@0X6F
RETL@0X77
RETL@0X7C
RETL@0X58
RETL@0X5E
RETL@0X79
RETL@0X71
START:
MOV A,PORT5
ANDA,@0X0F
CALLTABLE
MOV PORT6,A
JMPSTART


本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除( 邮箱:macysun@21ic.com )。
换一批
延伸阅读
关闭