PROTEUS仿真中的总线

来源:本站
导读:目前正在解读《PROTEUS仿真中的总线》的相关信息,《PROTEUS仿真中的总线》是由用户自行发布的知识型内容!下面请观看由(电工技术网 - www.9ddd.net)用户发布《PROTEUS仿真中的总线》的详细说明。
简介:89C51单片机扩展8155芯片 proteus仿真 七段数码管不显示的解决方法。

在使用PROTEUS进行仿真时,各元件的引脚,可以使用导线直接连接,也可以使用标号进行连接,还可以使用“总线”进行连接。

在PROTEUS零件库中,有些零件的引脚,就是使用“总线”形式的,如8031、8155、8255等。

那么,在这种零件的外部,就必须使用“总线”进行连接,而在总线上,也必须加上“总线形式”的标号,只有做了这样标记,该总线才能和零件内部的线路连通上。

下图就是51单片机和8155进行连接,为单片机系统扩充三个并行接口的电路图。

PROTEUS仿真中的总线

图中的8155是作为片外RAM来使用的,明确了地址之后,再写出驱动程序,是很简单事。

先进行初始化,之后,通过PA、PB输出两个字节的数据,全部代码如下:

COMMANDEQU7F00H

PORTAEQU7F01H

PORTBEQU7F02H

PORTCEQU7F03H

ORG0000H

LJMPMAIN

ORG0080H

MAIN:

MOVDPTR,#COMMAND

MOVA,#00000011B;PA方式0输出,PB方式0输出

MOVX@DPTR,A

INCDPTR;转到PA

MOVA,#00110011B;数据

MOVX@DPTR,A;输出

INCDPTR;转到PB

MOVA,#00001111B;数据

MOVX@DPTR,A;输出

LJMP$

END

原问题如下:

【问】89C51单片机扩展8155芯片 proteus仿真 七段数码管不显示

PROTEUS仿真中的总线

程序如下:

ORG0000H

COMMAND EQU 7F00H

PORTA EQU 7F01H

PORTB EQU 7F02H

PORTC EQU 7F03H

LJMPMAIN

ORG0080H

MAIN:

MOVSP,#0030H

MOVDPTR,#COMMAND

MOVA,#00000011B;设置为方式0且PA口输出,PB口输出

MOVX@DPTR,A

INCDPTR

MOVA,#00110011B;测试共阳极7段数码管

MOVX@DPTR,A

INCDPTR

MOVA,#00001111B

MOVX@DPTR,A

LJMP$

END

但是仿真时6个七段数码管都没有显示,不解。望指教

【答】

电路画的不仔细,总线的标号,都没有标上。

在粗蓝线上,应该标注AD[0..7]、PA[0..7]......,

这样,总线,才能和8255器件内部的标号对应连接上。

你看看PROTEUS软件所带的例子,就知道了。

按照楼主的电路,调整了零件布局,增加了总线标号;

程序一个字也不改,楼主所期望的输出,就都出来了。

请看下8155的使用方法图。

提醒:《PROTEUS仿真中的总线》最后刷新时间 2024-03-14 00:57:37,本站为公益型个人网站,仅供个人学习和记录信息,不进行任何商业性质的盈利。如果内容、图片资源失效或内容涉及侵权,请反馈至,我们会及时处理。本站只保证内容的可读性,无法保证真实性,《PROTEUS仿真中的总线》该内容的真实性请自行鉴别。