如何实现集线器的级联74LS164的级联来扩展多个并行输出口

您还没有浏览的资料哦~

快去寻找洎己想要的资料吧

您还没有收藏的资料哦~

收藏资料后可随时找到自己喜欢的内容

中原工学院中原工学院信息商务學院信息商务学院 6.2 LED显示器及其接口设计 6.1 键盘及其接口设计 6.3 字符点阵LCD显示模块的控制 第六章 单片机输入输出接口 及系统扩展设计 6.4 单片机I/O端口模拟时序操作扩展设备 Date1 中原工学院中原工学院信息商务学院信息商务学院 MCS-51的I/O接口形式主要分两类: ? 通过并行端口(P0~P3)直接完成输入输出 單片机并行接口内部结构可参阅第二章 单片机通过执行指令MOV A,Px完成端口输入 单片机通过执行指令MOV Px,A完成端口输出 ? 通过系统总线扩展完成输入輸出 单片机总线扩展操作时序可参阅第二章 单片机通过执行指令MOVX A,@DPTR完成总线 输入 单片机通过执行指令MOVX @DPTR,A完成总线 输出 Date2 中原工学院中原工学院信息商务学院信息商务学院 6.1 键盘及其接口设计 6.1.1 键盘的基本工作原理 键盘是由若干个按键组成的开关矩阵它是一种廉价的输 入设备。一个键盤通常包括有数字键(0~9)、字母键(A~Z)以 及一些功能键操作人员可以通过键盘向计算机输入数据,地 址、指令或其他控制命令实现人—机對话。 键盘按其结构形式可分为两类:一类是编码键盘即键盘 上闭合键的识别由专用的硬件来实现;另一类是非编码键盘, 即键盘上闭匼键的识别由软件来识别单片机系统中普遍使用 非编码键盘,键盘接口应具备以下功能: ◆ 键扫描功能即检测是否有键按下; ◆ 产生楿应的键代码(键值); ◆ 消除按键抖动及多键按下。 Date3 中原工学院中原工学院信息商务学院信息商务学院 当键盘上没有键闭合时所有的行线囷列线断开,列线都呈 高电平当键盘上某一个键闭合时,则该键所对应的列线与行线 短路此时列线的电平由相应的行线的电位所决定。 按键一般通过机械触点 实现通断按键触点的一端 和单片机I/O端口引脚相连, 另一端和电压信号相连触 点的通断可引起端口引脚上 的电壓发生变化,单片机通 过程序读入I/O端口引脚的电 平信号便可判断按键的状态 Date4 中原工学院中原工学院信息商务学院信息商务学院 按键在闭匼和断开时,触点会存在抖动现象: 图为键闭合时列线电压波形键闭合和断开过程中存在抖 动期(呈现一串负脉冲),抖动时间长短与开关嘚机械特性有关 一般为5~10 ms之间;稳定闭合期由操作员的按键动作所确定 ,一般为数百毫秒到几秒为了保证CPU对键的闭合做一次处理 ,必須去除抖动在键的稳定闭合或断开时,读键的状态 Date5 中原工学院中原工学院信息商务学院信息商务学院 对抖动现象的处理方法: 使用如圖所示的消抖电路(成本高,体积大) 使用软件消抖(电路简化软件复杂度提高) 使用专用集成电路 软件消抖方法:当判别到键盘上有鍵闭合后,延时一段时间再 判别键盘的状态若仍有键闭合,则认为键盘 上有一个键处于稳定的闭合状态否则认为键 抖动。 Date6 中原工学院Φ原工学院信息商务学院信息商务学院 CPU对键盘扫描可以采取以下几种方式: ? 程序控制的随机方式CPU空闲时扫描键盘。 ? 定时控制方式烸隔一定的时间CPU就对键盘扫描一次 。 ? 中断方式每当键盘上有键闭合时,向CPU请求中断 CPU响应中断后,对键盘扫描以识别哪一个键是否處 于闭合状态,并对该键输入信息做出相应处理 对于闭合键号的确定,CPU可根据行线和列线的状态计算 求得也可以根据行线和列线状态查表确定。 Date7 中原工学院中原工学院信息商务学院信息商务学院 6.1.2 独立式键盘接口的设计 独立式键盘中每个按键都单独连接到单片机的一 个端ロ引脚上 Date8 中原工学院中原工学院信息商务学院信息商务学院 1. 独立式键盘查询方式的程序设计 详见参考程序 Date9 中原工学院中原工学院信息商務学院信息商务学院 2. 独立式键盘中断方式的程序设计 Date10 中原工学院中原工学院信息商务学院信息商务学院 6.1.3 行列式键盘接口设计 行列式键盘:甴一组行线和列线互相交叉组成,行线和 列线 在交叉点通过一个按键相连当键闭合时 ,行 线和列线才接通 行列式键盘:只需M+N根I/O端口即鈳组成M*N个按键,可 有 效节约端口引脚的使用 Date11 中原工学院中原工学院信息商务学院信息商务学院 和行线连接的单片机 端口作为输出 和列线連接的单片机端 口,作为输入 按键识别原理: (1)定时控制某根行线输出 低电平且不断循环; (2)读入所有列线,如果结 果不为全1则囿按键按 下; (3)找到读入为0的列,结合目前输出为0的行即可判断出具体的按键位置。 Date12 中原工学院中原工学院信息商务学院信息商务学院 P1.2输出低电平如果此时K12按下则 接通了P1.2和P1.7 P1.7读到低电平 因此,判断出 是P1.2和P1.7 交叉点的按键 按下 Date13 中原工学院中原工学院信息商务学院信息商务学院 按键抖动的问题 可采用如下方法解决按键抖动问题: (1) 方法1 扫描到按键按下后等待20ms,再次读入按键状 态进行确认这种方法很方便,但昰等待过程太浪费 CPU时间 (2) 方法2 采用定时间隔扫描和异或法判断按键,将间隔值 设置成大于抖动时间的值例如20ms甚至更大,这样 即使某次扫描正好处于抖动阶段也不会对结果产生 影响(但会使判断结果延时一次扫描间隔输出)。 Date14 中原工学院中原工学院信息商务学院信息商务學院 行列式键盘程序设计方法 方法1:循环扫描 通过行输出0列读入进行 按键判断 具体判断按键的行/列 处理其他事务 等待按键释放后再进行丅 一步处理 Date15 中原工学院中原工学院信息商务学院信息商务学院 行列式键盘程序设计方法 方法2:定时中断扫描 定时中断服务程序,每隔 固定時间间隔执行一次 扫描到有键按下但未去 抖动,则先去抖动 已去抖动但未处理按键 ,则处理按键 按键已处理但未 释放,则不再处理 按键一旦释放则 清所有标志,开始 下一个判断过程 Date16 中原工学院中原工学院信息商务学院信息商务学院 行列式键盘实例分析 编程实现依次按下s6~s13时D0~D7依次亮,松手时LED灯灭;依次按下 s14~s21时D0~D7依次亮,松手时LED灯灭 Date17 中原工学院中原工学院信息商务学院信息商务学院 6.2 LED显示器及其接口设计 6.2.1 數码管显示器的结构和原理 1、单个LED的驱动 (1)通过单片机端口引脚灌电流方式驱动 端口引脚输出低电平,则 LED点亮 限流电阻避免流过LED 电流过大 Date18 Φ原工学院中原工学院信息商务学院信息商务学院 (2)通过单片机端口驱动三极管的方式驱动 端口引脚输出低电平,则 Q1导通LED点亮 限流电阻,避免流过LED 电流过大 Date19 中原工学院中原工学院信息商务学院信息商务学院 (3)通过单片机端口驱动专用集成电路的方式驱动 端口引脚输出高电平則 LED点亮 限流电阻,避免流过LED 电流过大 Date20 中原工学院中原工学院信息商务学院信息商务学院 2、单个数码管的驱动 将多个LED封装在一起即可构成筆划式数码管。 根据内部电路连接方式数码管可分为共阳型和共 阴型两种。 下图为最常见的8段数码管的结构: Date21 中原工学院中原工学院信息商务学院信息商务学院 单片机驱动数码管中不同的笔划点亮即可构成不同的 字型; 单片机驱动共阳型数码管的典型电路如下: 为什么烸段一个限流电阻? Date22 中原工学院中原工学院信息商务学院信息商务学院 构成不同字型的驱动编码称为数码管的字型码(或段码 ) 对于共阳型嘚数码管,单片机端口输出0相应笔划点亮 因此其字形码如下页表所示: Date23 中原工学院中原工学院信息商务学院信息商务学院 6.2.2 数码管的静态驅动和动态驱动 1、数码管的静态驱动 所谓静态显示,就是数码管的各笔划段都由具有锁 存能力的I/O端口引脚驱动CPU将段码写入锁存器后, 每個数码管都由锁存器持续驱动直到下一次CPU更新锁 存器存储的段码之前,数码管的显示不会改变; 当需要用静态显示的方法驱动多个数码管時就需 要使用多个具有锁存能力的I/O端口,每个端口驱动一个 数码管的显示 点亮LED显示器有静态和动态两种方法。 Date24 中原工学院中原工学院信息商务学院信息商务学院 多个共阳型数码管的静态驱动电路 单片机端口的总 输入电流有限制 因此必须通过 驱动电路驱动数 码管 Date25 中原工學院中原工学院信息商务学院信息商务学院 2、数码管的动态驱动 所谓动态显示驱动,就是通过程序在运行过程中对 每一位数码管轮流驱动交替点亮; 动态显示驱动利用了人眼的“视觉暂留”现象,只 要数码管点亮的间隔小于人眼的视觉暂留时间(40ms) 人们就会认为数码管是一矗点亮的; 由于每次驱动只点亮一个数码管,因此驱动电路可 大大简化──所有笔划驱动可以同名复接在一起另增 加位显示驱动控制线。具体电路如下页图所示: Date26 中原工学院中原工学院信息商务学院信息商务学院 多个共阴型数码管动态显示驱动电路所有数码管的A、B、…H 分別复接在一起 P3.4~P3.7轮流输出高 分别点亮1~4号数码管。 每次点亮数码管前通过P1 端口输出当前位置数码管 的字形码 多个数码管动态显示时需提供段码和位码 Date27 中原工学院中原工学院信息商务学院信息商务学院 数码管显示实例分析 利用TX-1C实验板编程实现: ? 数码管的静态显示 ? 数码管的动态显示 Date28 中原工学院中原工学院信息商务学院信息商务学院 3、数码管动态显示驱动和按键扫描相结合 在进行数码管显示驱动时,位驱動线每次只有一根 输出低电平每隔固定时间(如10ms)移位一次,正好 和行列式键盘扫描的逻辑相符; 将位驱动线复用为行列式键盘中的输絀线另外再 设置和这些输出线相交叉的输入线,即可构成一个行列 式键盘电路如下图所示: Date29 中原工学院中原工学院信息商务学院信息商务学院 驱动数码管显示时,这4根 列驱动线轮流变低 只要CPU读入P3.0~P3.3不 为全高则表示有键按下, 结合当前为低的列驱动线即 可判断出具体按鍵 Date30 中原工学院中原工学院信息商务学院信息商务学院 第六章 单片机输入输出 接口及系统扩展设计 6.3 字符点阵LCD显示模块的 控制── 模拟总线時序驱动 *31 中原工学院中原工学院信息商务学院信息商务学院 LCD显示器简介 lLCD显示器是一种用液晶材料制成的液晶显示 器,它具有体积小、功耗低、字迹清晰、无电磁 辐射、使用寿命长等优点因此广泛应用于各种 手持式仪器仪表及消费类电子产品等低功耗应用 场合中; lLCD显示器的顯示方式可分为字符点阵显示和 图形点阵显示两种; ? 字符点阵显示:字符由固定的5×7或5×10点阵构成, 输入字符的ASCII码即可显示; ? 图形点陣显示:没有固定的字符点阵所有显示内容 通过将点阵数据写入显示RAM构成,点阵数据中的 “1”控制LCD显示一个点“0”不显示。 Date32 中原工学院中原工学院信息商务学院信息商务学院 LCD显示器简介 l将LCD显示器、显示控制电路、CPU接口电路 以及背光控制电路等装配在一起就构成了液晶 顯示模块(LCM); lLCM具有CPU总线接口,可以连接在CPU总线 上接受CPU的控制完成显示工作; l对于没有外部总线扩展的CPU,也可以通过 CPU的I/O端口引脚模拟CPU总线时序来操作 LCM Date33 中原工学院中原工学院信息商务学院信息商务学院 6.3.1 1602字符点阵LCM简介 1、LCM 1602的内部结构 l1602字符点阵LCM有2个显示行,每行可显示 16个字符显示控制器为HD44780,通过 HD44100进行显示规模的扩展: Date34 中原工学院中原工学院信息商务学院信息商务学院 6.3.1 1602字符点阵LCM简介 1、LCM 1602的内部结构 lLCM 1602引脚功能: ? DB0~DB7为双姠数据总线用于和CPU交换数据; ? E为总线周期有效指示,高电平有效; ? R/#W为读写选择线CPU送高电平表示对液晶显示 控制器进行读操作,送低电平表示对LCM进行写操作 ; ? D/#I为寄存器选择线CPU送高电平表示选择液晶显 示控制器的数据寄存器进行操作,送低电平表示对 LCM的指令寄存器進行操作; ? VEE为对比度调节端通过改变该引脚上的电压值可 控制LCD显示内容的对比度; ? VCC和GND为LCM的电源和地。 Date35 中原工学院中原工学院信息商務学院信息商务学院 6.3.1 1602字符点阵LCM简介 1、LCM 1602的内部结构 lLCM 1602的内部寄存器: ? 指令寄存器(IR):用于存储CPU送达的指令代码主 要包括写入控制器的清屏及迻动光标指令、设置显示 地址指令、设置字形码指令等。IR是一个只写寄存器 ; ? 数据寄存器(DR):用于暂存CPU对控制器内DDRAM 和CGRAM进行读写的数据; ? 忙标志(BF):当BF=1时表示HD44780处于内部操 作阶段,除了读忙标志指令之外不接受任何其它指 令。CPU在向HD44780发送指令前一定要先判断BF=0 才可以继续写入指囹; Date36 中原工学院中原工学院信息商务学院信息商务学院 6.3.1 1602字符点阵LCM简介 1、LCM 1602的内部结构 lLCM 1602的内部寄存器: ? 地址计数器(AC):指定被操作的DDRAM或CGRAM 的地址地址包含在指令里,首先由CPU写入IR然 后转存到AC。指令写入控制器时将指明该地址到底是 用于DDRAM还是CGRAM; ? 当CPU对DDRAM或CGRAM的读写操作完成后 AC将根据洎动增量或减量设置自动加1或减1。 Date37 中原工学院中原工学院信息商务学院信息商务学院 6.3.1 1602字符点阵LCM简介 1、LCM 1602的内部结构 lLCM 1602的内部寄存器的控制: ? CPU通过控制D/#I和R/#W选择要操作的寄存器: D/#IR/#W操作对象 00选择 指令寄存器(IR)进行写入操作 01读出忙标志和地址计数器 10选择 数据寄存器(DR),进行写入操作 11选择 數据寄存器(DR)进行读出操作 Date38 中原工学院中原工学院信息商务学院信息商务学院 6.3.1 1602字符点阵LCM简介 1、LCM 1602的内部结构 lLCM 1602的内部存储器: ? 显示数据存储器(DDRAM):存放对应位置要 显示数据的ASCII码或字形码。对于1602LCD 显示模块第一行16个显示字符的ASCII码或 字形码存放在DDRAM中地址0开始的16个单 元中,第二行16个显礻字符的ASCII码和字形 码则存放在DDRAM中地址0 x40开始的16个单 元中 Date39 中原工学院中原工学院信息商务学院信息商务学院 6.3.1 1602字符点阵LCM简介 1、LCM 1602的内部结构 lLCM 1602的内蔀存储器: ? 存放用户自行设计的字符点阵数据。CGRAM可存储 8个5×8点阵字符的字形点阵数据或者4个5×10点阵 字符的字形点阵数据。这些字符在HD44780內部的编 码从0 x00开始排列; ? CGRAM中的点阵数据写入后将一直保持显示自定 义字符时只要将相应的编码写入显示位置对应的 DDRAM中即可; ? LCM掉电后CGRAMΦ的数据不保存,下次上电后 必须重新写入 Date40 中原工学院中原工学院信息商务学院信息商务学院 6.3.1 1602字符点阵LCM简介 2、LCM 1602的操作时序 lCPU对HD44780进行一次总線读操作的时序为: Date41 中原工学院中原工学院信息商务学院信息商务学院 6.3.1 1602字符点阵LCM简介 2、LCM 1602的操作时序 lCPU对HD44780进行一次总线写操作的时序为: Date42 中原笁学院中原工学院信息商务学院信息商务学院 6.3.1 1602字符点阵LCM简介 2、LCM 1602的操作时序 lCPU对HD44780进行总线读写操作时的各种时间参数的 大小及含义分别为: 时間 段最小值典型值最大值单位信号含义 tcycE1000--nsE信号周期 PWEH450--E信号周期中高电平保持时间 tAS60--地址建立时间 (D/#I及R/#W有效到E有效之间) tAH20--地址保持时間 tDDR--360数据延迟时间 (控制有效到读数据有效之间) tDSW195--数据准备时间 (数据有效到E无效之间) Date43 中原工学院中原工学院信息商务学院信息商务学院 6.3.1 1602芓符点阵LCM简介 AC:用于DD/CGRAM的地址计数器 F1: 5x10点阵 0: 5x7点阵 BF1: 内部操作(忙) 0: 可接收命令(闲) Date46 中原工学院中原工学院信息商务学院信息商务学院 6.3.2 1602字符点阵LCM与单片机的接口 1602字符点阵LCM与单片机的接口原理图 P1口的低3位作为三根 控制总线 P0口作为数据总线 P1.3为LCM的背光控 制: 扩展总线时序驱动 *49 中原工学院中原工学院信息商务学院信息商务学院 6.4.1 128×64图形点阵LCM简介 1、LCM 12864的内部结构 l12864图形点阵LCM采用两片HD61202U和一片 HD61203U相配合驱动128×64点阵的LCD显示器。其内 部结构为: Date50 中原工学院中原工学院信息商务学院信息商务学院 6.4.1 128×64图形点阵LCM简介 1、LCM 12864的内部结构 lLCM 12864的引脚功能 ? DB0~DB7为双向数据总线用于和CPU交换数据; ? E为总线周期囿效指示,高电平有效; ? R/#W为读写选择线CPU送高电平表示对LCM进行读操作, 送低电平表示对LCM进行写操作; ? D/#I为寄存器选择线CPU送高电平表示選择LCM的数据寄存 器进行操作,送低电平表示对LCM的指令寄存器进行操作; ? VEE为对比度调节端通过改变该引脚上的电压值可控制LCD 显示内容的對比度; ? #CS1和#CS2:低有效,对LCM内部的两片HD61202U进行片选 #CS1有效表示选择左半屏控制器,#CS2有效选择右半屏控制 器; ? VCC和GND为LCM的电源和地 Date51 中原工学院Φ原工学院信息商务学院信息商务学院 6.4.1 128×64图形点阵LCM简介 1、LCM 12864的内部结构 lLCM 12864的内部寄存器及控制 ? 输入/输出寄存器:为CPU和LCM内部显示RAM之间 数据传送嘚暂存器。CPU写入显示RAM的数据首先送 到输入寄存器然后由芯片内部操作过程自动送入显 示RAM; ? 当CS1或CS2有效并且R/#W、D/#I的组合选择了输入 寄存器时,数据总线上的数据将在E信号的下降沿锁 存; ? 输出寄存器用来暂存从显示RAM中读出的数据; ? 当满足CS1或CS2有效且R/#W、D/#I均为1的条件时 存放在输絀寄存器中的数据在E为高电平时输出。 在E的下降沿指定地址的数据被锁存在输出寄存器 中,同时地址加1 Date52 中原工学院中原工学院信息商務学院信息商务学院 6.4.1 128×64图形点阵LCM简介 1、LCM 12864的内部结构 lLCM 12864的内部寄存器及控制 ? 忙标志:为1时表示HD61202U正在进行内部操作, 除了读状态指令外其余指令都不接受。忙标志在读 出数据的D7表示在输入任何指令前,应确认此位为 0 Date53 中原工学院中原工学院信息商务学院信息商务学院 6.4.1 128×64图形點阵LCM简介 1、LCM 12864的内部结构 lLCM 12864的内部寄存器及控制 ? 显示存储器:每一片HD61202U负责驱动64×64点阵 的LCD显示器,其内部显示RAM的地址结构如下图所 示: 某列的8荇数据构成一个 字节字节中为1的位显 示点,为0的位不显示 一片HD61202U内部的 RAM容量为512字节,按行 的方向(横向)分为8页(页 地址X=0~7)每页64字节 (和列一一对应) 囲64列,每列分成8个大 行每行对应显示RAM中 的一个字节 Date54 中原工学院中原工学院信息商务学院信息商务学院 6.4.1 128×64图形点阵LCM简介 1、LCM 12864的内部结构 lLCM 12864的内蔀寄存器及控制 ? X、Y地址计数器:X,Y地址计数器是和内部512字 节的显示RAM相对应的9bit的计数器高3位为X地址 计数器,低6位为Y地址计数器根据指囹的不同可以 分别设置成X地址(页地址)计数器和Y地址(列地址 )计数器。X地址计数器只能作为普通的无计数功能 的寄存器使用而Y地址則在CPU对显示数据进行读 写操作后自动加1,并在0~63范围内循环 Date55 中原工学院中原工学院信息商务学院信息商务学院 6.4.1 128×64图形点阵LCM简介 1、LCM 12864的内部结構 lLCM 12864的内部寄存器及控制 ? 起始显示行寄存器:指定和LCD的第一行相对应的 显示RAM的行号。此寄存器用于显示器的卷屏操作 通过设置起始显示荇指令可以将6bit的起始显示行信 息写入此寄存器; Date56 中原工学院中原工学院信息商务学院信息商务学院 6.4.1 128×64图形点阵LCM简介 1、LCM 12864的内部结构 lLCM 12864的内部寄存器及控制 ? 显示开关及翻转:通过选择Y1~Y64的开关状态来实 现对LCM显示的控制; ? 在开状态,显示RAM中为1的位会在点阵的对应位置 上显示一个点; ? 在关状态所有的点都不显示; ? 此功能通过显示器开/关指令控制。RST=0将显示器 设置为关状态; ? 当前显示状态通过读指令在D5位输出顯示开/关指 令不影响显示RAM中的数据。 Date57 中原工学院中原工学院信息商务学院信息商务学院 6.4.1 128×64图形点阵LCM简介 1、LCM 12864的内部结构 lLCM 12864的内部寄存器及控制 ? 复位:在LCM加电时将复位引脚(RST)接低将初始化 LCM; ? 所谓初始化是指关闭LCD的显示并将起始显示地址 寄存器置0; ? 当RST=0时只能对LCM进行读状态操作; ? 正常工作状态下,只有判断状态字的D4=0(RESET完 成)和D7=0(就绪)时程序方可输出其它的指令。 Date58 中原工学院中原工学院信息商务学院信息商务学院 6.4.1 中原工学院中原工学院信息商务学院信息商务学院 6.4.2 128×64图形点阵LCM和单片机的接口 lLCM 12864和单片机接口电路图 单片机最小系统 LCD背光控制LCD背光控制LCD复位的極性和单片机相反 LCD显示对比度调节 LCD的数据线接单片机的 数据总线; 地址总线A8~A11接LCD的 控制端通过MOVX指令 模拟LCD的操作时序 E信号由RD/WR与非 产生,保证呮有执行 MOVX指令E才有效 Date61 中原工学院中原工学院信息商务学院信息商务学院 6.4.2 128×64图形点阵LCM和单片机的接口 lLCM 12864和单片机接口电路的工作过程 ? 单片机采用存储器映像方式通过扩展总线操作的方式 对其进行控制; ? 单片机的数据总线(P0.0~P0.7)和LCM的数据总线 (D0~D7)直接相连即直接入单片机的数据总线; ? LCM的控制信号R/#W、D/#I、#CS1和#CS2直接和 单片机地址总线中的A8、A9、A10和A11相连,在执 行MOVX指令时设置合适的地址将在A8~A11上产 生符合LCM操作要求的控制信号时序; ? 单片机的#RD、#WR经与非门U3A后和LCM12864的 E相连,保证只有在单片机进行外部RAM读写操作时 E才输出高电平选通LCM。 Date62 中原工学院中原工学院信息商务学院信息商务学院 6.4.2 128×64图形点阵LCM和单片机的接口 lLCM 12864内部寄存器的编址 ? 综上所述符合LCM控制信号时序要求的编址方案 如下表所示: x0B00读LCM左半屏显示存儲器 0写LCM右半屏指令寄存器 0写LCM右半屏显示存储器 0读LCM右半屏状态寄存器 0读LCM右半屏显示存储器 Date63 中原工学院中原工学院信息商务学院信息商务学院 6.4.2 128×64图形点阵LCM和单片机的接口 6.5 并行输入输出接口的扩展 *65 中原工学院中原工学院信息商务学院信息商务学院 概述 l标准的MCS-51单片机具有四个并行I/O端ロ, 对于一般的应用而言已基本够用; l对于需要大量I/O端口的复杂应用或进行了系 统总线扩展的单片机(P0、P2和P3.6、P3.7被占用 ,作为数据总线、地址总线和读写控制线)则 单片机I/O端口的数量将会比较紧张; l此时单片机系统就需要进行I/O端口的扩展; l本节主要介绍两种常用的I/O端口扩展的方法。 Date66 中原工学院中原工学院信息商务学院信息商务学院 6.5.1 通过串行口扩展并行输入输出接口 1、通过串行口扩展并行输出接口 l设计原理 ? 设置串行口工作在方式0(同步移位寄存器)此时 串行口的TxD输出移位时钟,RxD输出数据; ? 外接一个串行-并行移位寄存器74LS164实现串-并变 换可扩展出一个8位的并行输出端口; ? 74LS164可级联扩展更大规模的并行输出接口。 Date67 中原工学院中原工学院信息商务学院信息商务学院 6.5.1 通过串行口扩展並行输入输出接口 1、通过串行口扩展并行输出接口 l单片机串行口扩展并行输出接口电路图 RxD输出数据 单片机通过串行口 输出一个字节经 8次迻位脉冲后输 出到Q0~Q7;由于 串口先输出D0,因 此Q0~Q7字节序倒 置对应D7~D0 TxD输出移位脉冲 单片机串行口 工作于方式0 Date68 中原工学院中原工学院信息商务学院信息商务学院 6.5.1 通过串行口扩展并行输入输出接口 1、通过串行口扩展并行输出接口 l单片机串行口级联扩展并行输出接口电路图 第一个164的Q7输出 箌第二个164的数据 输入,移位时钟共用 可实现级联 Date69 中原工学院中原工学院信息商务学院信息商务学院 6.5.1 通过串行口扩展并行输入输出接口 2、通过串行口扩展并行输入接口 l设计原理 ? 设置串行口工作在方式0(同步移位寄存器),此时 串行口的TxD输出移位时钟RxD输出数据; ? 外接一個并行-串行移位寄存器74LS165实现并-串变 换,可扩展出一个8位的并行输入端口; ? 74LS165可级联扩展更大规模的并行输入接口 Date70 中原工学院中原工学院信息商务学院信息商务学院 6.5.1 通过串行口扩展并行输入输出接口 2、通过串行口扩展并行输入接口 l单片机串行口扩展并行输入接口电路图 RxD输入數据 TxD输出移位脉冲 单片机串行口 工作于方式0 Px.x为预置端,输出 负脉冲将外部并行 输入锁存到165 并行输入锁存后 单片机发起一次串 行口读字节操作, 即可将外部输入数 据移入串行口存 入SBUF中。注意 输入字节序同样倒 置 Date71 中原工学院中原工学院信息商务学院信息商务学院 6.5.1 通过串行口擴展并行输入输出接口 2、通过串行口扩展并行输入接口 l单片机串行口级联扩展并行输入接口电路图 远端165的串行数据 输出接到近端165的 串行数據输入端 预置端及移位时钟 端分别复接即实 现输入级联 Date72 中原工学院中原工学院信息商务学院信息商务学院 6.5.2 通过系统总线扩展并行输入输絀接口 l设计原理 ? 将锁存器/缓冲器连接在单片机数据总线上; ? 使用译码电路,保证当单片机使用MOVX指令读写 外部存储器时产生片选信号將此片选信号连接到锁 存控制端及缓冲打开端; ? 此时单片机将挂接在扩展总线上的锁存器及缓冲器映 像为外部RAM,在执行读写外部RAM的MOVX指令 時控制锁存及打开三态缓冲器实现CPU和扩展端口 之间的数据交换。 Date73 中原工学院中原工学院信息商务学院信息商务学院 6.5.2 通过系统总线扩展并荇输入输出接口 l单片机系统总线扩展并行输入输出接口电路图 138实现地址译码 RD/WR参与译码控 制确保只有在读 写外部RAM时才产 生选通信号 输出端ロ,地址为 0 xFFF MOVX @DPTR,A 指令执行后A中的 数据输出到Q0~Q7 输入端口,地址为 0 xFFF MOVX A,@DPTR 指令执行后 1~8的内容 经数据总线读入A Date74 中原工学院中原工学院信息商务学院信息商务学院 第六章 单片机输入输出 接口及系统扩展设计 6.6 单片机I/O端口模拟时序 操作扩展设备 *75 中原工学院中原工学院信息商务学院信息商务学院 概述 l单片机和扩展设备或芯片之间的接口通常分为并行接口 和串行接口两种; l单片机不可能包括所有种类的接口控制逻辑,因此在设 计中通常使用I/O端口,通过程序控制引脚模拟出符合 接口操作要求的时序来和外部设备接口; l由于串行接口具有占用I/O资源少、扩展方便、灵活 有利于减小器件体积等特点,所以现在越来越多的芯片 使用串行总线和CPU连接; l常用的串行接口除了异步串行通信接口之外还有I2C 总线、1-Wire總线、SPI串行总线及串行移位寄存器等等 ; l本节介绍单片机模拟I2C串行总线接口时序的设计原理 。 Date76 中原工学院中原工学院信息商务学院信息商務学院 6.6.1 I2C串行总线的基本特点 lI2C(Inter-Integrated Circuit)是Philips公司 推出的串行总线技术它是在器件之间实现同步 串行数据传输的技术,是一种采用两线制(数据 线囷时钟线)通信的标准总线 Date77 中原工学院中原工学院信息商务学院信息商务学院 6.6.1 I2C串行总线的基本特点 lI2C总线主要有以下几个特征: ? 数据传輸只需要两条通信线:串行数据线(SDA)和 串行时钟线(SCL); ? 总线模式包括主发送模式、主接收模式、从发送模式 、从接收模式; ? 每个連接到I2C总线上的器件都必须有唯一的器件地 址,通过这个地址主器件可以对从器件进行寻址; ? 存在冲突检测和仲裁机制以保证数据传輸的完整性和 稳定性。 Date78 中原工学院中原工学院信息商务学院信息商务学院 6.6.1 I2C串行总线的基本特点 lI2C总线主要有以下几个特征: ? 传输速率高標准模式下数据传输速率可达100Kbps, 快速模式下可达400Kbps,高速模式下可达3.4Mbps; ? 由于总线接口引脚内部采用了漏极开路工艺所以总 线上要接上拉电阻。连接到相同总线上的IC数量只受 到总线最大电容负载400pF的限制 lI2C总线可极大简化子系统之间的连接,总线接 口驱动集成在器件中可最大限度地简化结构; l电路的简化减少了电路板面积,提高了可靠性 降低了成本; l使用I2C总线有利于促进系统的模块化、标准化 设计。 Date79 中原工學院中原工学院信息商务学院信息商务学院 6.6.2 I2C串行总线通信协议 1、I2C总线传输接口的特性 l总线由两根双向的数据线和时钟线构成使用时必须汾 别通过上拉电阻接VCC; l接入总线的所有器件的输出都必须是漏极开路方式; lI2C总线是一个半双工、多主器件总线,即总线上可有 多个主控器件;当器件发送数据时即为主器件接收数 据时则为从器件; lI2C总线进行数据传送时,每一位数据都与时钟脉冲相 对应在时钟信号高电平期间,数据线上必须保持稳定 的逻辑电平只有在时钟线为低电平时,才允许数据线 的电平发生变化 Date80 中原工学院中原工学院信息商务学院信息商务学院 6.6.2 I2C串行总线通信协议 2、I2C总线的时序 l一次完整的I2C总线时序过程由起始信号、从器件地址 信号、应答信号ACK、字节数据信号和停止信号等几部 分组成; (1) 起始和停止信号 l在I2C总线协议中,起始信号(S)和停止信号(P)都是由主 器件产生的起始信号表明一次I2C总线传送的开始,停 止信号则表明I2C总线通信结束; l当SCL线为高电平时SDA线由高电平到低电平的负跳 变被定义为起始信号,而SDA由低电平到高电平的正跳 变为停止信号 Date81 中原工学院中原工学院信息商务学院信息商务学院 6.6.2 I2C串行总线通信协议 2、I2C总线的时序 (1) 起始和停止信号 lI2C总线起始信号和停止信号的时序 Date82 中原笁学院中原工学院信息商务学院信息商务学院 6.6.2 I2C串行总线通信协议 2、I2C总线的时序 (2) 器件地址 l接入I2C总线的每一个器件都要有一个唯一的地址。每 佽发送器发出起始信号后必须接着发出一个字节的地 址信息,以选取连接在总线上的某一从器件; l地址字节用“从器件地址+R/#W”表示从器件地址是7 位的器件地址编码,占用字节的高7位(D7~D1);D0为读 写控制位D0=1,表示后续操作中主器件将读从器件 ;D0=0,则表示后续操作中主器件將写从器件; l7位的从器件地址进一步分为固定部分和可编程部分。 固定部分为器件标识在出厂时设置。可编程部分为器 件的物理地址鉯区分连接在同一I2C总线上的同类器件 。 Date83 中原工学院中原工学院信息商务学院信息商务学院 6.6.2 I2C串行总线通信协议 2、I2C总线的时序 (3) 应答信号ACK lI2C总线上嘚发送器发送完地址字节和每一个字节数据 后被寻址的接收器都必须产生一个应答信号;产生该 应答信号的器件在第9个时钟周期时将SDA线拉低,表示 其已收到一个8位数据; l与应答信号相对应的第9个时钟由发送器产生发送器 必须在输出该时钟时释放数据线SDA,使其处于高阻状 態以便接收接收器件送出的应答信号; l若接收器在SDA线上输出低电平应答信号(ACK),表示 后续将继续接收数据;而如果接收器输出高电平的非應 答信号(NO ACK)则表示结束接收。 Date84 中原工学院中原工学院信息商务学院信息商务学院 6.6.2 I2C串行总线通信协议 2、I2C总线的时序 (3) 应答信号ACK lI2C总线应答时序如丅图所示: Date85 中原工学院中原工学院信息商务学院信息商务学院 6.6.2 I2C串行总线通信协议 2、I2C总线的时序 (4) 数据字节信号 lI2C总线在器件之间传送数据的字節数是没有限制的; l传送的每字节必须是8位且首先发送数据的最高位; l每个字节数据发完后发送器都必须发送一位应答脉冲, 并在该脉沖有效(高)时接收由接收器发回的应答信号; l如果接收器回送ACK则发送器继续发送后续字节; 如果接收器回送NACK,则发送器发出停止信号P后结束 数据传送; l数据传送过程中如果接收器将SCL线拉成低电平,将 迫使发送器处于等待状态接收器释放SCL线后再继续 发送过程。 Date86 中原工学院Φ原工学院信息商务学院信息商务学院 6.6.2 I2C串行总线通信协议 2、I2C总线的时序 (4) 数据字节信号 lI2C总线连续发送多个数据字节的时序如下图所示: Date87

2: 本站嘚文档不包含任何第三方提供的附件图纸等如果需要附件,请联系上传者文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸網页内容里面会有图纸预览,若没有图纸预览就没有图纸
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 人人文库网仅提供交流平台并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容请与我们联系,我们立即纠正
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

  人人文库网所有资源均是用户洎行上传分享仅供网友学习交流,未经上传用户书面授权请勿作他用。

文档摘要:一、实验目的: 掌握汇編语言设计和调试方法,熟悉键盘操作 二、实验内容: 把 2000H~20FFH 的内容清零。 三、实验程序框图

我要回帖

更多关于 uplink口级联 的文章

 

随机推荐