历史上的今天
今天是:2025年04月11日(星期五)
2018年04月11日 | 单片机软件寻址技术介绍
2018-04-11 来源:eefocus
在80C31为控制核心的数据采集系统中,往往需要较大的外部RAM来存放数据。大家知道80C31是8位CPU,地址总线宽度为16位,其外部RAM,ROM可直接寻址范围各为64k字节(0000H——FFFFH)。在80C31的工作过程中,ROM和外部RAM的地址是重叠使用的,但使用不同的控制信号和指令,而扩展I/O口和外部RAM是统一编址的,它占用外部RAM的地址单元,并且使用外部RAM相同的读写控制信号和读/写指令。
在数据采集系统中,往往需要大容量的外部RAM,显示器、A/D转换、打印机等外部设备也必须进行I/O扩展。笔者在设计智能型声级计的过程中,要求80C31扩展外部RAM为64kB字节,扩展I/O口采用82C55芯片,连接字符型LCD、键盘、A/D转换输入和打印机。并采用了软件逻辑开关,实现了64k字节的外部RAM和扩展I/O口的地址重叠使用,充分利用80C31直接寻址的数据存储空间。电路如下图所示。

80C31扩展一片程序存储器(EPROM)27C64。80C31的P0口经地址锁存器74HC373提供低8位地址线,80C31的P2.0—P2.4为高5位地址线,共13根地址线(213=8k)。数据读取由80C31的PSEN控制,使用MOVC指令,由于只扩展一片EPROM,所以27C64的片选端CE接地。
80C31扩展2片数据存储器62256。62256是32kx8位静态随机存储器显片,采用CMOS工艺制作,由单一电源+5V供电,它有15根地址线(215=32k),其中低8位地址由80C31的P0口经地址锁存器74HC373提供。80C31的P2口的P2.0—P2.6地址线供应高7位地址,P2.7线不经反相器和经反相器分别连接到62256(1)和62256(2)的片选端CE1上。当P2.7=0时,62256(1)被选通,地址为0000H—7FFFH,这时P2.7为0,经反相器使62256(2)的片选端CE1为高电平,62256(2)被禁止。当P2.7=1,62256(1)的片选端CE1为高电平,62256(1)被禁止,经74HC04反相,62256(2)的片选CE1为低电平,62256(2)被选通,地址为8000H—FFFFH,80C31扩展外部RAM为64k字节(32KX2)。
为了满足智能声级计的工作要求,还需扩展I/O口来连接A/D转换输入、键盘、显示器和打印机。笔者采用了82C55芯片在可编程并行I/O口,其A口接MC14433双积分A/D转换芯片的并行输出,编程为输入方式,B口接打印机编程为输出方式,C口接键盘P6.0—P6.3编程为输入方式,作键盘输入线。P6.4—P6.7编程为输出方式,作扫描输出线。显示器采用DMC16230字符型LCD,其总线接80C31P0口数据总线,82C55的口地址选通端A0,A1(通过A0、A1的编程可分别选择A口、B口、C口和控制口的寄存器)和LCD的RS端(低电平选择指令寄存,高电平选择数据寄存器)及R/W端(读写选择)分别接到地址总线的低位地址线A0、A1,80C31的P1.0线,地址总线的A2线和62256的OE端(读控制端)、WE端(写控制端),8255的片选端CS及LCD的片选端E接软件逻辑开关。
软件逻辑开关由逻辑元件组成,由软件来控制,其工作原理是这样的,当程序设置80C31的P1.0=1时,接一个或门到82C55的片选端CS。CS=1,82C55被禁止(低电平选通)。P1.0口的信号经两个反相器和一个与非门接LCD的片选端E。使片选端E=0,LCD也被禁止(高电平选通)。P1.0=1的信号经反相器为低电平,再经两个或门接62256的OE、WE端。这样80C31的RD和WR的信号经两个或门就能分别控制62256的OE、WE端,正常地进行读写操作,所以P1.0=1时禁止。82C55,LCD仅对62256进行操作,而P1.0=0时,信号经反相器为高电平,通过两个或门分别使62256的OE、WE电平为高电平,从而禁止了80C31的RD和WE端对62256的读写操作(低位有效),P1.0=0的信号对82C55或LCD的选择还要看地址总线中A2的电平状态。当A2=1时,信号经过反相器为低电平和P1.0时的信号,再经过或门输到82C55的CS 端为低电平,82C55被选通。这时A2=1和P1.0=0的信号经反相器和与非门输到LCD的E端为低电平,LCD被禁止。82C55的口地址为FFFCH—FFFFH。当A2=0时,A2=0和P1.0=0的信号通过反相器和或门输到82C55的CS端为高电平,82C55被禁止,这时,A2=0和P1.0=0的信号经过反相和与非门输到LCD的E端为高电平,LCD被选通,其地址为FFF8H—FFFFBH。通过以上的电路分析(逻辑关系如表1所示)可以清楚地看到,通过软件逻辑开关用软件操作对80C31的P1.0和地址线A2的选择,有效地分别选通62256、82C55、或LCD,实现了它们之间的地址重叠使用,达到了80C31扩展全部外部RAM直接寻址范围的目的。
| 逻辑关系 | ||||
| 器件型号 | P1.0=1 | P1.0=0 | 地址 | |
| A2=0 | A2=1 | |||
| 62256 | 选通 | 禁止 | 禁止 | 0000H—FFFFFH |
| LCD | 禁止 | 选通 | 禁止 | FFF8H—FFFFBH |
| LCD | 禁止 | 禁止 | 选通 | FFFCH—FFFFFH |
上一篇:基于单片机的简易信号源设计
史海拾趣
|
前段时间使用英蓓特公司开发的EM-LPC1700开发板http://arm.embedinfo.com/list.asp?id=317(采用NXP公司的最新的Cortex-M3内核,主频有100M)做CAN的测试,没通过,最近采用他们提供的新的测试例程终于通过了。在这里跟大家分享一下 首先,将他们 ...… 查看全部问答> |
|
XILINX,ALTERA开发套件,下载线,并长期备有SPARTAN,VIRTEX系列常用芯片,并可免费提供ISE11.1,QUARTUS9.0软件及相关资料! QQ:379073540 MB:13910408597… 查看全部问答> |
|
“泛在”即“无所不在” ,也有人称之为“普适”即“普遍适用” 。20世纪80年代8位台式电脑开始普及,但有些办公设备的厂商认为计算不应只限于电脑,而是存在于社会的所有方面,也就是说任何电子设备里都应该包含计算技术。本世纪初日本东京工业大 ...… 查看全部问答> |
|
由于医疗服务成本的不断攀升、慢性病的流行、人口的老龄化,以及中国、印度和巴西等大规模新兴市场的崛起,对价格低廉又稳健可靠的医疗设备的需求非常庞大,以期改善全球数百万病患的治疗和护理条件,并扩大疾病治疗范围。另一方面,医疗设备设 ...… 查看全部问答> |
|
系统上电的时候,cs:ip 指向0xffff0,这个位置应该为ROM地址,这时RAM是不可用的,当ROM bios检测到RAM时,是否执行了代码拷贝?将ROM bios拷到1M高端的64k,如果bios大于64k怎么办呢?或者根本没有什么代码拷贝,只是进行了内存映射? video bios ...… 查看全部问答> |
|
我现在想使tcpmp能够播放一种新的视频文件(.avs格式),想请教高手怎么才能在里面注册这种格式,使tcpmp能够认识.avs格式呢??… 查看全部问答> |




