1、常 州 轻 工 职 业 技 术 学 院 单片机原理及应用 课 程 授 课 教 案 NO 14 授课日期授课班级课题并行I/O口的扩展授课类型讲授授课时数 教学目的理解和掌握并行I/O口的扩展方法重点难点并行I/O口的扩展方法及使用并行I/O口的扩展方法教具挂图多媒体课件、投影仪教学及过程分配主 要 教 学 内 容教学方法的运用10分钟一、并行IO口的扩展方法1总线扩展方法必须先扩展单片机外部三总线。使用通用IO扩展芯片(如8255)、TTL等芯片进行扩展。2串行口扩展方法下面只讨论前一种方法。二、外部三总线扩展(一)外部三总线的结构外部设备外部设备MCS51单片机数据存储器程序存储器I/O接口
2、I/O接口图5-1 MCS-51单片机外部三总线结构地址总线(AB) 数据总线(DB) 控制总线(CB)讲解10分钟图5-2 MCS51单片机片外三总线的扩展方法20分钟20分钟30分钟(二)外部三总线的扩展MCS-51单片机的外部三总线主要是由它的P0、P2口及P3口的部分结构扩展而成的。1、 地址总线地址总线共16条:P0口(P0.7P0.0)作低8位地址线(A7A0);P2口(P2.7P2.0)作高8位地址线(A15A8)。2、 数据总线数据总线有8条:P0口(P0.7P0.0)作8位数据线(D7D0)。3、 控制总线(1)ALE:地址锁存信号,实现对P0口上送出的低8位地址信号的锁存。
3、(2)(P3.7):片外读选通信号,低电平有效。(3) (P3.6):片外写选通信号,低电平有效。P0口既要用作低8位地址总线,又要用作数据总线,使用时只能是分时起作用。用地址锁存器锁存低8位地址。2.地址译码四、应用一(4)接口电路(PA作输出口)1用8255A 芯片扩展并行IO口 (1) 8255A 内部的并行IO口 3个并行IO口,均为8位:PA口: 通过编程可以分别设置成单向输出、单向输入或者分时输入输出。PB口: 通过编程可以分别设置成单向输出和单向输入。PC口: 可分为高4位PC74和低4位PC30两个独立部分。PC端口可否独立控制取决于PA端口和PB端口的工作方式。 另外,还有一
4、个命令口,放命令字。(2) 引脚数据总线D7D0:8255A与CPU交换控制和数据信息的路径。片选输入控制线CS:来自IO地址译码电路,低有效。读出控制RD和写入控制WR:来自CPU的读写输出控制信号,低有效。地址输入线A1、A0:来自地址锁存器输出,用于寻址内部PA端口、PB端口、PC端口和命令端口之一。 A1A0地址选中的端口0 0PA0 1PB1 0PC1 1命令端口复位控制输入线RESET:8255A电路与CPU同步复位。 PA70:PA端口的8位IO引脚,传送方向由编程决定。PB70:PB端口的8位IO引脚,传送方向由编程决定。PC70:PC端口的8位IO引脚,传送方向由编程决定。(
5、3)8255A的命令字格式与功能图5-6 8255A 命令字格式功能说明:D0PC3PC0方向设置,0-输出方向;1-输入方向D1PB端口方向设置 0-输出方向; 1-输入方向D2 PB端口工作模式 0-通用输入/输出口(模式0);1- 选通输入/输出口(模式1)D3PC7PC4方向设置 0-输出方向1-输入方向D4 PA端口方向设置 0-输出方向1-输入方向D6、D5PA端口工作模式 0 0 通用输入/输出(模式0) 0 1 选通输入/输出(模式1) 1 X 选通输入/输出(模式2)讲解讲解讲解讲解课后小记 授课教师 常 州 轻 工 职 业 技 术 学 院 单片机原理及应用 课 程 授 课
6、教 案 NO 15 授课日期授课班级课题并行I/O口的扩展授课类型现场教学授课时数 教学目的理解和掌握并行I/O口的扩展方法重点难点并行I/O口的扩展方法及使用并行I/O口的扩展方法教具挂图多媒体课件、计算机,小哨兵软件,wave6000软件、单片机实验仪教学及过程分配主 要 教 学 内 容教学方法的运用10分钟10分钟15分钟复习上一课内容2流水灯控制 用8255A的PA口接8个发光二极管,每隔0.1秒轮渡点亮一个发光二极管。ORG 0000HMOV DPTR,#8003HMOV A,#80HMOVX DPTR,A ;将PA口置为模式0,输出方式MOV A,#01HMOV DPTR,#800
7、0HLOOP:MOVX DPTR,ALCALL DELAYRL ASJMP LOOPDELAY:MOV R2, # 200 DEL1:MOV R3, # 126 NOP DEL2:DJNZ R3, DEL2 DJNZ R2, DEL1 RET ; 延时0.1秒子程序 END学生试验,要求将间隔时间改为1秒钟讲解程序分析巡回指导10分钟20分钟25分钟四、应用二LED 16x16 点阵显示汉字116x16点阵电路的原理2程序ROWLOW EQU 0B002H; 行低八位地址ROWHIGH EQU 0B003H; 行高八位地址COLLOW EQU 0B000H; 列低八位地址COLHIGH EQU
8、 0B001H; 列高八位地址 ORG 0000H LJMP MAINMAIN: MOV 40H, #0 MOV 41H,#0 ;清屏 MOV A,#00H ; 行驱动高有效 MOV DPTR,#ROWLOW MOVX DPTR,A MOV DPTR,#ROWHIGH MOVX DPTR,A MOV A,#0FFH ; 列驱动低有效 MOV DPTR,#COLLOW MOVX DPTR,A MOV DPTR,#COLHIGH MOVX DPTR,A MOV R5, #0 ;汉字个数LOOP0: MOV R4, #50 ;每个字显示的时间LOOP: MOV 40H, #01 ;选择显示行 MOV R2, #16 ;每行16列 MOV A,R5 ;字模的起始地址 MOV B,#32 MUL AB MOV DPTR,#FONT ADD A,DPL