单片机IO扩展8155(课堂PPT)
- 格式:ppt
- 大小:689.50 KB
- 文档页数:15
单片机实验8155并行I/O口扩展和动态扫描程序编制1.实验目的(1)掌握8155并行I/O芯片扩展和使用方法(2)掌握数码管动态扫描汇编语言的编制方法2.预习要点(1)8155芯片基础知识(2)51单片机的总线时序、地址译码的原理(3)数码管动态扫描显示方法3.实验设备计算机、单片机实验箱。
4.实验内容基本要求:通过实验板的上的8155显示电路(在电路板上已经固定连接字形和字位控制线的8155部分),并通过跳线确定8155的地址,在八位数码管上显示30H到33H 存储单元的内容。
扩展要求:假定30H~33H的存储单元内容为高四位和低四位分存不同的BCD码,请依序将他们显示在LED上实验2ORG 0000H ;OGR为伪指令,不占用地址,只负责分配地址SJMP MAIN;********************************;主程序ORG 0030HMAIN:MOV SP,#70H ;可以随意用的内部RAM为30H-7FH,习惯上设置栈指针为70H LCALL INIT ;调用初始化子程序LOOP:LCALL DISPLAY;循环调用显示子程序SJMP LOOP;*********************************;初始化子程序INIT:;设置显示缓存区显示缓存区一般习惯上设为30H-37HMOV 30H,#1MOV 31H,#2MOV 32H,#3MOV 33H,#4MOV 34H,#5MOV 35H,#6MOV 36H,#7MOV 37H,#8;初始化8155 ;8155地址:1、控制字**00H PA为**01H PB为**02H PC为**03HMOV DPTR,#0100H ;8155控制字地址MOV A,#03H ;03H=0000 0011B A口B口为输出C口为输入具体看第5章MOVX @DPTR,ARET;**********************************;显示子程序DISPLAY:MOV R0,#30H ;每次进显示子程序的时候先从显示缓存区的第一个开始显示MOV R3,#0FEH ;R3为字位,控制哪个数码管亮【注意,每次只点亮一个数码管】LD0: ;控制字位MOV DPTR,#0102H ;把字位端PB的地址送DPTRMOV A,R3 ;把字位送AMOVX @DPTR,A;把字位送PB口;查表MOV DPTR,#DTAB ;把字形表的首地址给DPTRMOV A,@R0 ;把要查的字送AMOVC A,@A+DPTR ;查到字形并赋给A;控制字形MOV DPTR,#0101H ;把字形端PA的地址送DPTRMOVX @DPTR,A;把字形送到PA口LCALL DELAY;延时INC R0MOV A,R3JNB ACC.7,LD1 ;判断最后一个管子是否亮了,亮了之后就退出显示程序RL A;让下一个管子亮,左移字位MOV R3,ALJMP LD0LD1:RET;*****************************************;字形表DTAB:DB 3FH,06H,5BH,4FH,66H ;0-F的字形DB 6DH,7DH,07H,7FH,6FHDB 77H,7CH,39H,5EH,79HDB 71H;*******************************************;延时1ms的子程序DELAY:MOV R7,#02H ;具体延时时间T=250×2×2us=1000us=1ms (这个只是大概的,大概等于1ms而已)DEL1:MOV R6,#250 ;这个地方很多人直接写#0FFH了,这样误差也不大DEL2:DJNZ R6,DEL2 ;这条为双周期指令,所以上面250后面会乘以2 DJNZ R7,DEL1RET;********************************************实验2扩展ORG 0000HSJMP MAIN;**************************************;主程序ORG 0030HMAIN:MOV SP,#70HMOV 30H,#11H ;要显示的内容,这个自己可以随便改,MOV 31H,#22H ;只要能正确显示出来就可以了MOV 32H,#33HMOV 33H,#44HMOV DPTR,#0100H ;初始化8155 即控制字MOV A,#03HMOVX @DPTR,ALCALL SEPARA TE ;分离字LOOP:LCALL DISPLAY;循环调用显示程序SJMP LOOP;*****************************************SEPARA TE: ;分离字子程序MOV R0,#30H ;待分离的字MOV R1,#40H ;分离后的代显示的内容还是放在显示缓存区40H-47H里MOV R2,#04H ;要分离4个数据(字)R2为循环次数LP:MOV A,@R0ANL A,#0F0H ;取高4位SW AP AMOV @R1,A;存高4位INC R1MOV A,@R0ANL A,#0FH ;取低4位MOV @R1,A;存低4位INC R1INC R0 ;换下一个字DJNZ R2,LP;如果还没有转换完成就继续循环RET;*****************************************;显示子程序DISPLAY:MOV R0,#40H ;显示缓存区为40H-47H,其它的与实验二的一致)MOV R3,#0FEHLD0:MOV DPTR,#0102HMOV A,R3MOVX @DPTR,AMOV DPTR,#DTABMOV A,@R0MOVC A,@A+DPTRMOV DPTR,#0101HMOVX @DPTR,ALCALL DELAYINC R0MOV A,R3JNB ACC.7,LD1RL AMOV R3,ALJMP LD0LD1:RET;*****************************************;字形表DTAB:DB 3FH,06H,5BH,4FH,66H ;0-FDB 6DH,7DH,07H,7FH,6FHDB 77H,7CH,39H,5EH,79HDB 71H;*****************************************;延时1msDELAY:MOV R7,#02HDEL1:MOV R6,#250DEL2:DJNZ R6,DEL2DJNZ R7,DEL1RET;*****************************************亲爱的朋友,上文已完,为感谢你的阅读,特加送另一篇范文,如果下文你不需要,可以下载后编辑删除,谢谢!道路施工方案1、工程概况2、编制说明及编制依据3、主要施工方法及技术措施3.1施工程序3.2施工准备3.3定位放线3. 4土方开挖3.5卵石路基施工3.6天然砾基层施工3. 7高强聚酯土工格楞3.8水泥稳定砂砾基层施工3.9路缘石施工3. 10玻璃纤维土工格栅施工3.11沥青面层施工3. 12降水施工4、质量控制措施5、雨季施工安排6、安全技术措施1.工程概况本项目建设的厂址位于新疆石河子市。
8.6 RAM/IO接口芯片81558.6.1 8155内部结构及其引脚功能除8255并行接口芯片外,单片机常用的并行接口是8155芯片。
8155作为并行接口芯片有许多与8255类似之B、C等等。
8155是能并行传送8位数据,具有256字节内部RAM、1 个计数器、3个通道、4种工作方式的可编程并行接口内容,比较容易的理解8155的内部结构、8155引脚与CPU的连接方式等。
1.8155的内部结构8155内部结构框图如8-14所示,现按8155定义,叙述其内部结构。
(1)内部RAM8155有256字节单元的内部RAM数据存储器,供用户作数据缓冲器等使用。
(2)定时器8155还有一个14位的定时器,该定时器有一个计数器脉冲输入端TIMERIN与定时器输出端TIMEROUT。
定时器输出矩形波或脉冲波。
(3)3个通道8155有3个通道A、B、C与外设连接,其中A、B通道有8个引脚与外设连接,C通道口有6个引脚。
C口的6通信线。
(4)与CPU连接部分①地址/数据总线 AD0~AD7:分时的传送地址与数据信息。
②控制总线CBCPU要对8155的RAM、I/O口(A、B、C口)进行读、写、片选等操作,控制线为片选、复位、读、写等信号。
●RAM与I/O选择线=0 时选择片内RAM, =1 时选择I/O口。
与8255一样,8155是使用地址线的低3位A0、A1、A2选择I/O口及控制寄存器。
地址的高5 位在选择I/示:表8-4 8155 I/O口地址●片选信号:低电平有效,选择8155芯片。
●写信号:低电平有效,将AD0~AD7上信息写入8155的RAM或I/O口。
●读信号:低电平有效,将8155的RAM或I/O口中信息送上AD0~AD7。
●地址锁存信号 ALE:ALE的下降沿将AD0~AD7、、上信息锁存到8155内部锁存器中。
●复位信号 RST:RST将8155各寄存器与I/O口锁存器等复位初始化。
2. 8155芯片引脚及其与80C51单片机的连接8155为40引脚芯片,图8-15为8155与80C51的连接图。