第6章扩展系统设计IO

上传人:汽*** 文档编号:568269465 上传时间:2024-07-23 格式:PPT 页数:60 大小:1.62MB
返回 下载 相关 举报
第6章扩展系统设计IO_第1页
第1页 / 共60页
第6章扩展系统设计IO_第2页
第2页 / 共60页
第6章扩展系统设计IO_第3页
第3页 / 共60页
第6章扩展系统设计IO_第4页
第4页 / 共60页
第6章扩展系统设计IO_第5页
第5页 / 共60页
点击查看更多>>
资源描述

《第6章扩展系统设计IO》由会员分享,可在线阅读,更多相关《第6章扩展系统设计IO(60页珍藏版)》请在金锄头文库上搜索。

1、第第6 6章章 单片机扩展系统设计单片机扩展系统设计6.5 概述概述6.6 可编程并行可编程并行I/O接口芯片接口芯片8255A6.7 可编程可编程RAM/IO扩展器扩展器8155/8156下页下页6.9 显示器与键盘接口显示器与键盘接口6.8 用用TTL芯片扩展简单的芯片扩展简单的I/O接口接口6.10 并行打印机接口并行打印机接口 墅偷鸿拭迹笛篙捻室晓暖伪执子败蹈臭肥磷棵文遮射囤鞠髓醇蜗钢骇惟距第6章扩展系统设计IO第6章扩展系统设计IO常常用用的的接接口口器器件件8255:可编程通用并行接口电路:可编程通用并行接口电路 8253/8254:可编程定时:可编程定时/计数器计数器 8155/

2、8156:可编程:可编程RAM/IO/TIMER扩展芯片扩展芯片 8251:可编程串行接口电路:可编程串行接口电路 8279:可编程键盘显示接口电路:可编程键盘显示接口电路上页上页下页下页回目录回目录上页上页下页下页回目录回目录上页上页下页下页回目录回目录MCS-51单片机的单片机的I/O接口:接口:P0、P1、P2、P3口,最多提供口,最多提供32根口线。根口线。在扩展系统中:在扩展系统中:P0口做数据总线,口做数据总线,P2口做地址总线。口做地址总线。只有只有P1口、口、P3口部分口线可作口部分口线可作I/O使用,需根据应用系统使用,需根据应用系统需要进行需要进行I/O接口电路扩展,以满足

3、应用系统需要。接口电路扩展,以满足应用系统需要。郁量搂京瞪拱府鸥蹦秆置惦碘贵骄寝肮嚏火都簇柔藏骇薄迸语桃诬烽严物第6章扩展系统设计IO第6章扩展系统设计IO7.2 可编程并行可编程并行I/O接口芯片接口芯片8255A上页上页下页下页回目录回目录D0D7:双向数据总线:双向数据总线RESET:复位输入:复位输入 A0A1:地址线,选择端口地址:地址线,选择端口地址PA7PA0:端口:端口A,I/O线线PB7PB0:端口:端口B,I/O线线PC7PC0:端口:端口C,I/O线线:写选通:写选通一、一、8255的引脚功能的引脚功能:读选通:读选通:片选:片选炎碟离植各柯问驮蜡芽捍喜懦综逝论殃椅辆史别

4、尔撩尉虞洁适欺宣赖辖棚第6章扩展系统设计IO第6章扩展系统设计IOI/O端口端口PA、PB、PCA口口:可编程为:可编程为8位输入或输出,或双向传送等位输入或输出,或双向传送等 功能,具有功能,具有 锁存功能。锁存功能。B口口:可编程为:可编程为8位输入或位输入或8位输出,不能进行双向位输出,不能进行双向传送。具有锁存功能。传送。具有锁存功能。C口口:可编程为:可编程为8位输入或位输入或8位输出;也可分为两位输出;也可分为两个个4位口用于输入或输出;也可用做位口用于输入或输出;也可用做A口、口、B口的状态控制信号;具有位操作功能。口的状态控制信号;具有位操作功能。A组、组、B组控制电路组控制电

5、路A A组组控制控制PAPA口和口和PC4PC4PC7PC7B B组组控制控制PBPB口和口和PC0PC0PC3PC3上页上页下页下页回目录回目录玛劈歉唱馁喝表捅拎巍标峙付宋由羚伎棉央洼欧顶懂渠父犀叛嗅协温期辅第6章扩展系统设计IO第6章扩展系统设计IO(3) (3) 双向三态数据总线缓冲器双向三态数据总线缓冲器8位的双向三态驱动器。位的双向三态驱动器。D0D7和单片机的数和单片机的数据总线相连。在据总线相连。在CPU和和8255之间传送命令、数之间传送命令、数据、状态据、状态(4) (4) 读写和控制逻辑读写和控制逻辑A0A0、A1A1:口选择信号口选择信号地址线,接地址线,接CPUCPU地

6、址线。地址线。(5) RESET(5) RESET:复位信号,高电平有效:复位信号,高电平有效 上页上页下页下页回目录回目录RDRD、WRWR:接:接CPUCPU读、写信号线,实现读、写信号线,实现 信息读写操作。信息读写操作。CSCS:芯片片选信号线。:芯片片选信号线。A1A000PA口01PB口10PC口11状态寄存器滴谭由狂抱癣驻饵懈泞寞伐恍滚娩幌坷偿迎锻曾硼戈三存瞄趋引秽漳诽窘第6章扩展系统设计IO第6章扩展系统设计IO1. 82551. 8255工作方式选择工作方式选择工作方式的选择由工作方式的选择由“方式选择字方式选择字”决定,决定,下面介绍该控制字的作用:下面介绍该控制字的作用:

7、方式方式0 0:基本输入输出方式;:基本输入输出方式;方式方式1 1:选通输入输出方式;:选通输入输出方式;方式方式2 2:双向传送方式:双向传送方式( (仅仅A A口口) )82558255有三种基本工作方式,可通过编程来选择。有三种基本工作方式,可通过编程来选择。三、三、8255的操作说明的操作说明上页上页下页下页回目录回目录季纸镁欠笋琼浸陶拨舅姐会遣妓唤太畅春烦奔衫谭嫩喀曰险豫腺被叹碍张第6章扩展系统设计IO第6章扩展系统设计IO表表7-2 7-2 方式选择字格式方式选择字格式D7D7D6D6D5D5D4D4D3D3D2D2D1D1D0D01 1:方式方式特征特征标志标志A A 组组B

8、B 组组A A组方式组方式PAPAPCHPCHB B组方组方式式PBPBPCLPCL0 00 0:方式:方式0 00 10 1:方式:方式1 11 1 :方式:方式2 20 0:输出输出1 1:输入输入0 0:输出输出1 1:输入输入0 0:方式方式0 01 1:方式方式1 10 0:输出输出1 1:输入输入0 0:输出输出1 1:输入输入(1) (1) 方式选择控制字方式选择控制字上页上页下页下页回目录回目录堆翠缉杰斋码撒抚梳恨煽胳彭砚蹦厨暴愚彬爽园飞病初葬腆秸溜技沸管戎第6章扩展系统设计IO第6章扩展系统设计IOD7D71 1D6D60 0D5D50 0D4D41 1D3D30 0D2D2

9、0 0D1D10 0D0D01 11 1:方式方式特征特征标志标志A A 组组B B 组组A A组方式组方式PAPAPCHPCHB B组方组方式式PBPBPCLPCL0 00 0:方式方式0 01 1:输入输入0 0:输出输出0 0:方式方式0 00 0:输:输出出1 1:输:输入入上页上页下页下页回目录回目录例例7-17-1。若将方式选择字。若将方式选择字91H91H写入控制寄存器写入控制寄存器由上表可知,由上表可知,82558255被编程为:被编程为:A A组组工作在基本输入输出方式,其中工作在基本输入输出方式,其中PAPA口为口为8 8位位 输入方式,输入方式, PC PC口高口高4 4

10、位为位为4 4位输出方式。位输出方式。 B B组组工作在基本输入输出方式,其中工作在基本输入输出方式,其中PBPB口为口为8 8位位输出方式,输出方式,PCPC口低口低4 4位为位为4 4位输入方式。位输入方式。 币窝爸彪隘屯店脱往侠食俏搔界时液瀑恳赫恿述也旋艘凄谓夜燥蘸愈够达第6章扩展系统设计IO第6章扩展系统设计IO表表7-5 PC7-5 PC口置口置/ /复位控制格式复位控制格式D7D7D D6 6D D5 5D D4 4D3D3D2D2D1D1D0D00 0:位位控控标标志志 未定义未定义0 0 00 0 0: PC0 PC0 0 0 10 0 1: PC1 PC10 1 00 1 0

11、: PC2 PC20 1 10 1 1: PC3 PC31 0 01 0 0: PC4 PC4 1 0 11 0 1: PC5 PC51 1 01 1 0: PC6 PC6 1 1 11 1 1: PC7 PC71 1:置置位位0 0:复复位位(2) PC(2) PC口按位置口按位置/ /复位控制字复位控制字上页上页下页下页回目录回目录惶栽康罕采髓狡蔬宽贰乐兰陶屈索疵希粤伯道镭谷钱挠鹊乔倡龄壁扬燃漠第6章扩展系统设计IO第6章扩展系统设计IO例如:例如:07H07H写入控制口,将写入控制口,将PC3PC3位置位置“1”“1”,若,若08H08H写写入控制器,入控制器,PC4PC4位被置位被置“

12、0”“0”,其它位不变。,其它位不变。上页上页下页下页回目录回目录由于由于82558255的方式选择字和的方式选择字和C C口置口置/ /复位控制字共复位控制字共用一个地址用一个地址( (即共用一个控制寄存器即共用一个控制寄存器) ),故其控,故其控制字的制字的D7D7位是特征标志位是特征标志。D7=1D7=1,表示该控制字,表示该控制字为为82558255方式选择字;方式选择字;D7=0D7=0,表示该控制字为,表示该控制字为PCPC口置口置/ /复位控制字复位控制字D7D7D D6 6D D5 5D D4 4D3D3D2D2D1D1D0D00 0 未定义未定义0 1 10 1 1: PC3

13、 PC31 0 01 0 0: PC4 PC4 1 1:置置位位00:复复位位侠容肢赤波簇壤蜒痈乡感酝陋蔚缝皇贫掺饵薄暑搜泻菌焉鸣粟臣廉佛抉煤第6章扩展系统设计IO第6章扩展系统设计IO四、应用举例四、应用举例例例7-3 8031扩扩展展8255A,将将PA口口设设置置成成输输入入方方式式,PB口口设设置置成成输输出出方方式式,PCH口口设设置置成成输输入入方方式式,PCL口口设设置置成成输输出出方方式式。试试设设计计扩扩展展接接口口电电路路,并给出初始化程序。并给出初始化程序。名瞧任霍楼凹此颤灼隋倾拭赚史霍解札流奏措当悠陶粪镜爆速瓣级佬薛侵第6章扩展系统设计IO第6章扩展系统设计IO8255

14、A芯芯片片的的PA端端口口的的地地址址为为7FFCH,PB端端口口的的地地址址为为7FFDH,PC端端口口的的地地址址为为7FFEH,控控制制寄寄存存器器的的地地址址为为7FFFH。可可用用“MOVX”指指令令来来访访问问这这些些端端口。口。MOVA,#98H ;方式控制字;方式控制字AMOVDPTR,#7FFFH ;选通控制寄存器;选通控制寄存器MOVX DPTR,A ;方式控制字送入;方式控制字送入8255AMOVDPTR,#7FFCH ;MOVX A,DPTR ;读;读PA口数据口数据MOVDPTR,#7FFDH ;MOVX DPTR,A ;送;送PB口输出口输出叹凯爱赘剪热懈扇正咬讯敖

15、洲辱稼支瓶饲乏实龟徐百枝驱起酚臀姬堵哦肘第6章扩展系统设计IO第6章扩展系统设计IO采用采用TTL或或CMOS电路的锁存器,如电路的锁存器,如74LS273、74LS373、74LS377、74LS244等。这些芯片结构简等。这些芯片结构简单,配置灵活方便,较易扩展,使系统降低了成本单,配置灵活方便,较易扩展,使系统降低了成本缩小了体积。因而在单片机应用系统中经常被采用。缩小了体积。因而在单片机应用系统中经常被采用。 7.4 用用TTL电路扩展简单的电路扩展简单的I/O接口接口毕跨淬叫赫层攻蝴久诈佩窥譬耳掇勃达灵释贼掣萨幼存荷猜骆呀瓷罚拍桔第6章扩展系统设计IO第6章扩展系统设计IO上页上页下

16、页下页回目录回目录图7-11 8031与74LS377接口逻辑1、用、用74LS377扩展扩展8位输出口位输出口其输出操作程序如下:其输出操作程序如下:MOV DPTR,#7FFFH ;指向;指向377口地址口地址MOV A,#data ;取数;取数MOVX DPTR,A ;送;送377锁存器锁存器图中图中377的口地址为的口地址为7FFFH(即即P2.7=0)相逼基诀鸽称信食挽捐祭晰甸垄喜呻饺汰裹述持挑尼楼谬凑缅痔鸳寡美矗第6章扩展系统设计IO第6章扩展系统设计IO 2、用、用74LS373扩展一个扩展一个8位并行输入口位并行输入口 肪纷线币询缘倘辫搽忙堂硒浸恋蚌沮犊砾墟达巳蔚河炸邮忽耻碱坪

17、轨诡镍第6章扩展系统设计IO第6章扩展系统设计IO眠纯坏盏狱踊宰后犀膜韵寸齿注渐帧划萍杨赞棚枪然咯惺呐菏件琶罐锅宇第6章扩展系统设计IO第6章扩展系统设计IO棒卒丙秉格茅择奠呼个抛宛颜臀欠磊骤逛慧拆烙镀斩翅谷苛厅簧弹酝冈军第6章扩展系统设计IO第6章扩展系统设计IO3、用、用74LS273和和74LS244扩展输入扩展输入/输出口输出口MOV DPTR,#0BFFFH ;指向;指向244输入口输入口MOVX A,DPTR ;输入数据;输入数据MOV DPTR,#7FFFH ;指向;指向273输出口输出口MOV A,#DATA ;取数;取数MOVX DPTR,A;输出数据;输出数据辖才蔼绽塑净怯

18、薯擦街伤囊渍吭募闰责龙迷碴螟柑氦耿惹误铭涣弦咳膛雅第6章扩展系统设计IO第6章扩展系统设计IO7.5 开关量输入开关量输入/输出通道的抗干扰技术输出通道的抗干扰技术1、I/O接口单元的延时复位接口单元的延时复位在单片机应用系统中,某些在单片机应用系统中,某些I/O接口芯片(如接口芯片(如8255、8155)的复位端口与单片机复位端口接在一起,即)的复位端口与单片机复位端口接在一起,即统一复位。接口芯片因生产厂家不同复位时间稍有统一复位。接口芯片因生产厂家不同复位时间稍有不同;复位线较长也有较大的分布电容,导致芯片不同;复位线较长也有较大的分布电容,导致芯片的复位过程滞后与单片机,芯片初始化失败

19、。因此,的复位过程滞后与单片机,芯片初始化失败。因此,有必要当单片机进入有必要当单片机进入0000H后首先执行后首先执行110ms的软的软件延时,再对接口芯片初始化件延时,再对接口芯片初始化。2、开关量输入开关量输入软件抗干扰措施软件抗干扰措施对接口中的输入数据信息进行多次检测,若检测结对接口中的输入数据信息进行多次检测,若检测结果一致,则是真的输入信号;若相邻检测内容不一果一致,则是真的输入信号;若相邻检测内容不一致,或多次检测结果不一致,则是伪输入信号。致,或多次检测结果不一致,则是伪输入信号。两次检测之间要有一定的时间间隔。两次检测之间要有一定的时间间隔。沼蚁品贵嫁靴莱济苏肪搏婴堑椽泳恕

20、勋犹臀昧歪庞酸搏坞墅陛深薯粤诞住第6章扩展系统设计IO第6章扩展系统设计IO3、开关量输出信号开关量输出信号软件抗干扰措施软件抗干扰措施1)输出数据锁存器尽可能和)输出数据锁存器尽可能和CPU安装在同一电路板上,安装在同一电路板上,使传输线上传送的都是已锁存的电位控制信号。使传输线上传送的都是已锁存的电位控制信号。2)对重要的输出设备,最好建立检测通道,)对重要的输出设备,最好建立检测通道,CPU可以通可以通过检测通道检查输出结果是否正确。过检测通道检查输出结果是否正确。3)在软件上,最为有效的方法就是重复输出同一个)在软件上,最为有效的方法就是重复输出同一个数据,重复周期尽可能短。数据,重复

21、周期尽可能短。4)采用负逻辑传输)采用负逻辑传输定义低电平为有效电平,高电平为无效电平,减少干扰引起定义低电平为有效电平,高电平为无效电平,减少干扰引起的误动作,提高数字信号传输的可靠性。的误动作,提高数字信号传输的可靠性。(因为干扰源作用在高阻的线路上容易形成大幅度干扰信号)(因为干扰源作用在高阻的线路上容易形成大幅度干扰信号) 诛附硷却拆泼屏仅叠姜慑植娄轩钳纲艘邱妈哮短映不咕漫翻恤径婴押贬肾第6章扩展系统设计IO第6章扩展系统设计IO7.5 显示器与键盘接口显示器与键盘接口一、一、LED显示器特点与接口显示器特点与接口1. LED显示器显示器LED(Light Emitting Diode

22、)显示器称为发光二极管)显示器称为发光二极管也称为数码管,由也称为数码管,由8个发光二极管组成,分共阴极和共个发光二极管组成,分共阴极和共阳极两种。阳极两种。段段码码位位码码牲圣挝聊盖詹谚床邢伦吱享堵灼昭晕妖篇瘸泣祈云直楷赞乱弗衷恶忧模骡第6章扩展系统设计IO第6章扩展系统设计IO上页上页下页下页回目录回目录abcdefghh g f e d c b a高电平高电平共阴极共阴极R8comD7 D6 D5 D4 D3 D2 D1 D0段码段码显示字符显示字符段选码段选码03F10625BA77能显示:能显示:09,A、B、C、D、E、F、P、U、Y等有限字符等有限字符a b c d e f g

23、h 某段为高电平时某段为高电平时 该段点亮发光该段点亮发光到财室珠堤绥闰撂磺彭畅稼鹿副坍犁箩偷颧菌崩坤钡靴申龚辖咋兹杖缄病第6章扩展系统设计IO第6章扩展系统设计IO点阵点阵LED数码数码LED交通灯交通灯像束管像束管留蛋热妮崖芒缆于娄贡穴育庙黔俗神冻枝橱稠早穆鹿瓣壕隘汲得篆穗雅崭第6章扩展系统设计IO第6章扩展系统设计IO2、LED数码管特点数码管特点上页上页下页下页回目录回目录1、能在低电压、小电流(工作电流一般在、能在低电压、小电流(工作电流一般在10MA/段)段)条件下发光,能与条件下发光,能与CMOS、TTL电路兼容;电路兼容;2、发光时间极短(、发光时间极短(0.1US),高频特性

24、好,单色性),高频特性好,单色性好,亮度高;好,亮度高;3、体积小,重量轻,抗冲击性能好;、体积小,重量轻,抗冲击性能好;4、寿命长,使用寿命在、寿命长,使用寿命在10万小时以上,甚至万小时以上,甚至可达可达100万小时,成本低。万小时,成本低。广泛应用作数字仪器仪表、数控装置、计算机数显器件。广泛应用作数字仪器仪表、数控装置、计算机数显器件。有有7段码、米字码、点阵段码、米字码、点阵LED(可显汉字)等多种产品形式。(可显汉字)等多种产品形式。兵圾刀训弊乡撕品辣霹粤织歪副碟筛黄撰增郧铡贝某垮鱼赚公斥之肥班敞第6章扩展系统设计IO第6章扩展系统设计IO3、 LED显示接口显示接口 静态静态 动

25、态扫描动态扫描显示方式显示方式 动态扫描动态扫描用用8155设计动态扫描驱动接口设计动态扫描驱动接口上页上页下页下页回目录回目录h g f e d c b aPA0PA7 PC0PC3 同相同相驱动器驱动器同相同相驱动器驱动器8155AD0AD7 ALERESETIO/MCERDWRCPUA口送口送段码段码C口送口送位码位码共阴极共阴极 用用A口做段码锁存器口做段码锁存器 用用C口做位码锁存器口做位码锁存器LED为共阴极显示为共阴极显示 动态分时轮流扫描动态分时轮流扫描四位四位LED的同名端连在一起的同名端连在一起OC门门沼禄凰夹涵蚌肩稍枷蝗盅氨冀店掏抗扎稽酞辽肯耀幢慷能笛窟辞偶铸家详第6章扩

26、展系统设计IO第6章扩展系统设计IO上页上页下页下页回目录回目录PA0PA7 PC0PC3 同相同相驱动器驱动器同相同相驱动器驱动器8155AD0AD7 ALERESETIO/MCERDWRh g f e d c b aCPUA口送口送段码段码C口送口送位码位码共阴极共阴极PA7 PA0 段码段码PC0 PC1 PC2 PC3 分时动态扫描时序分时动态扫描时序:h g f e d c b a0 0 0 03FH06H5BH4FH1ms0000四位四位LED的同名端连在一起的同名端连在一起位位码码该时序是自左至右动态轮流扫描显示产生的效果该时序是自左至右动态轮流扫描显示产生的效果自右至左自右至左

27、玩桌逻谐瘪碧术伯憎花襟痈羊辽低雕台久罚物喧卵赊诬诡才衡买溢刨钙沧第6章扩展系统设计IO第6章扩展系统设计IO上页上页下页下页回目录回目录3. 软件驱动软件驱动 要对要对8155初始化初始化: A口、口、C口均设为输出口均设为输出要设置一个显示缓冲区:要设置一个显示缓冲区:DISBUF 存放要显示的数,利用内部存放要显示的数,利用内部RAM(70H73H) 在程序中建立一个段码(字形码)表:在程序中建立一个段码(字形码)表:TAB利用查表指令:利用查表指令:MOVC A,A+DPTR 取出段码取出段码轮流扫描显示(位码左移,指向下一位轮流扫描显示(位码左移,指向下一位LED)设:设:8155的控

28、制口地址为:的控制口地址为:CWRA口地址为:口地址为:PAC口地址为:口地址为:PC软件驱动程序如下:软件驱动程序如下:显显示示要要点点捅沃陪拄端耗烂缺错妇梨取刃娜寞热吁咸硬逞冶轨哩挛德们峰二歧眨赣傀第6章扩展系统设计IO第6章扩展系统设计IO上页上页下页下页回目录回目录 DIR:MOVDPTR,#CWRMOVXDPTR,AMOVA,#4DHRLAMOVXDPTR,AMOVR5,AMOVR0,#DISBUFLCALLDLYMOVR5,#0FEHINCR0MOVR4,#4DJNZR4,DIR0CLRARETCPLATAB:DB3FH,06H,5BH,4FHMOVDPTR,#PCDB66H,6D

29、H,7DH,07HMOVXDPTR,ADB7FH,6FH,77H,7CHDIR0:MOVA,R0DB39H,5EH,79H,71HMOVDPTR,#TABDLY:MOVR7,#3MOVCA,A+DPTRDLY1:MOVR6,#250MOVDPTR,#PADJNZR6,$MOVXDPTR,ADJNZR7,DLY1MOVA,R5RETMOVDPTR,#PC疡眯钳击提露撵怯雹化食赴挽赢龚伎隙种塞札匙诵机描肚妆憾捷删侮涵受第6章扩展系统设计IO第6章扩展系统设计IO二、液晶显示器特点与接口二、液晶显示器特点与接口1、液晶显示器特点、液晶显示器特点1)功耗小,同样的显示面积,其功耗比)功耗小,同样的显示

30、面积,其功耗比LED小几百倍,小几百倍,特别适宜与低功耗的特别适宜与低功耗的CMOS电路匹配,用于各种便携式仪电路匹配,用于各种便携式仪器仪表、微型计算机的终端显示。器仪表、微型计算机的终端显示。 2)可在明亮环境下使用,在黑暗环境中不能使用,需)可在明亮环境下使用,在黑暗环境中不能使用,需采用辅助光源。采用辅助光源。3)尺寸小,外型薄,使用方便。)尺寸小,外型薄,使用方便。4)响应时间和余辉时间长,响应速度较慢,为)响应时间和余辉时间长,响应速度较慢,为MS级。级。5)使用寿命较长()使用寿命较长(5X104)。)。6)工作温度范围较窄,约)工作温度范围较窄,约-570。7)显示内容丰富,可

31、显示字符、汉字、图形。)显示内容丰富,可显示字符、汉字、图形。8)有液晶字符、液晶点阵字符、液晶点阵图形等多种产品。)有液晶字符、液晶点阵字符、液晶点阵图形等多种产品。檬攫罚勤障碑镀引竹暮材魂雹早籍乱径右杏挣拆卿绊块棒赁谋涩蹲邪筹浑第6章扩展系统设计IO第6章扩展系统设计IO2、点阵图形、点阵图形LCM与单片机接口与单片机接口产品形式多样,不一定完全兼容,需认真选择。产品形式多样,不一定完全兼容,需认真选择。毙嚣目度在复现未莎蜕添安情痉涕隙齐搜彼横廷王稚截汹批瘩炒觅藉主坍第6章扩展系统设计IO第6章扩展系统设计IO1、灭零处理、灭零处理在显示的时候,在显示的时候,应将高位的零熄灭应将高位的零熄

32、灭,如,如00345应显示成应显示成345,这样可以减少阅读误差,符合阅读习惯。,这样可以减少阅读误差,符合阅读习惯。处理规则:处理规则:整数部分整数部分从高位到低位的连续零均不显示,从高位到低位的连续零均不显示,从遇到的第一个非零数值开始均要显示;从遇到的第一个非零数值开始均要显示;小数部分小数部分个个位的零和小数部分均要显示。位的零和小数部分均要显示。设计显示程序应注意问题设计显示程序应注意问题锦鞠按开别缩熄凭捷馋貉煎爽娥簿锯哄谈拜颈斜递轧疯奎仓吮愁寝硝灿叉第6章扩展系统设计IO第6章扩展系统设计IO2、闪烁处理理在显示过程中,有时为了提醒操作者注意,可对显示进行在显示过程中,有时为了提醒

33、操作者注意,可对显示进行闪烁处理。闪烁处理。闪烁方式有两种闪烁方式有两种:1、全闪、全闪:即整个内容进行闪烁,多:即整个内容进行闪烁,多用于异常状态的提示用于异常状态的提示,如参数超范围,提醒操作者进行及时处理,以免引起更大如参数超范围,提醒操作者进行及时处理,以免引起更大的异常情况;的异常情况;2、单字闪烁:、单字闪烁:多用于定位提示,如采用按键来调整一个多用于定位提示,如采用按键来调整一个多位数字参数时,可用单字闪烁的方法来指示当前被调整多位数字参数时,可用单字闪烁的方法来指示当前被调整的数字位置。的数字位置。进行闪烁处理的进行闪烁处理的 基本方法:基本方法:一段时间正常显示,一段时一段时

34、间正常显示,一段时间熄灭显示,互相交替产生闪烁效果。一般每秒闪烁间熄灭显示,互相交替产生闪烁效果。一般每秒闪烁14次。次。悬绳臃恫鹰提倡赴灵莲桂点掏笔吃天钾楚侠讨亮播镀的坎怀秘欲样磺告忱第6章扩展系统设计IO第6章扩展系统设计IO6.9.2 键盘接口键盘接口 键盘的工作原理:键盘的工作原理:一、独立式按键(非扫描方式):一、独立式按键(非扫描方式):直接用一根直接用一根I/O口线组成的单个按键电路。口线组成的单个按键电路。在在SW-PB 键键 没有按下以前,没有按下以前,CPU自自P1.0 读入信号为高电平读入信号为高电平在在SW-PB键键 按下后,按下后,CPU自自P1.0 读入信号为低高电

35、平读入信号为低高电平按键触点在闭合和断开时均会产生抖动,这时触点的逻辑按键触点在闭合和断开时均会产生抖动,这时触点的逻辑电平是不稳定的,现在一般均用软件延时方法来避开抖动电平是不稳定的,现在一般均用软件延时方法来避开抖动阶段,阶段,延时时间应大于延时时间应大于5MS,一般可取,一般可取1020MS。蛙训里脑浊邯埔拇响夷俏泣藏产够孜泄娠漓咳纤厄裕型赏挨闹史丑俄握尖第6章扩展系统设计IO第6章扩展系统设计IOVCC80315.1KP1.4P1.0独立式键盘设计:独立式键盘设计:也可利用各种也可利用各种I/O接口设计接口设计KEY:MOV P1 , #0FFH MOV A , P1 ANL A ,

36、#1FH CJNE A , #1FH , AN1 RETAN1: LCALL DEALY;延时去抖;延时去抖 MOV A , P1 ANL A , #1FH CJNE A , #1FH , AN2 RET ;无键按下,返回;无键按下,返回AN2: JNB P1.0 , JIA;判按下的键;判按下的键 JNB P1.1 , JIAN JNB P1.2 , HUICHE JNB P1.3 , ZUOYOU JNB P1.4 , SHXIA RETJIA: ; “加加” 键操作子程序键操作子程序 RET JIAN: ; “减减” 键操作子程序键操作子程序 RET 妈唤余淆浪黔尖堡腺介基椎桥斡手史低腊

37、托曲刷颧仔张熏氨乖佬桅绦怨今第6章扩展系统设计IO第6章扩展系统设计IO二、阵列式键盘接口二、阵列式键盘接口狭纂惑患懊彻进害履逃盼字滨类熄比髓卉农雏绣厄掳额休庇旗冀酒吓论鸣第6章扩展系统设计IO第6章扩展系统设计IO当没有键按下时,行线和列线之间是不相连的。当没有键按下时,行线和列线之间是不相连的。若第若第N N行第行第M M列的键被按下,那么第列的键被按下,那么第N N行与第行与第M M列的线就被接列的线就被接通。通。如果在如果在 行线上加上信号行线上加上信号,根据列线的状态根据列线的状态,便可得,便可得知是否有键按下。知是否有键按下。如果如果在行线上在行线上逐行加上一个扫描信号,就可以根据

38、逐行加上一个扫描信号,就可以根据行、列信号判断按键的位置。行、列信号判断按键的位置。洁亲售拿绘添江掉妥爷毙音曼化笺么沟砰琴凡滇喉诚状辊属土燥嗅瘁铰仓第6章扩展系统设计IO第6章扩展系统设计IO当当P1.4、P1.5输出高电平,无论键是否按下,输出高电平,无论键是否按下,CPU自自P1.0、P1.1 输入信号为高电平,无法识别按键输入信号为高电平,无法识别按键 当当P1.4 =0,P1.5=0,任何键,任何键 按下时,自按下时,自P1.1、P1.0 读入信号读入信号不再全为高电平,说明有键按下。不再全为高电平,说明有键按下。解决的第二个问题:哪个键按下?解决的第二个问题:哪个键按下?采用行列扫描

39、方法,先扫描第一行:采用行列扫描方法,先扫描第一行:解决的第一个问题:是否有键按下?解决的第一个问题:是否有键按下?同样原理,扫描第同样原理,扫描第2行、第行、第3行、行、输输 出出输输 入入作作 用用P1.5 P1.4 P1.1 P1.010扫描扫描第一第一行行10J11键按下键按下, P1=XX10 XX10B01J12键按下键按下, P1=XX10 XX01B00两个键都按下两个键都按下, P1=XX10 XX00B11该行无键按下该行无键按下,P1=XX10 XX11B盒偏敲棘类奥攻消爪云操迈笺拄孟谊肉曝则审怯莽皆情盈嘶赁霓编萧狼肾第6章扩展系统设计IO第6章扩展系统设计IO上页上页下

40、页下页回目录回目录8155键盘接口键盘接口PA0PA7 PC0PC3 8155AD0AD7 ALERESETIO/MCERDWR012345678910111213141516171819202122232425262728293031+5VPA0PA1PA2PA3PA4PA5PA6PA7PC0 PC1 PC2 PC3CPU(8 8行行4 4列列 = 32= 32键键)小键盘)小键盘PA口作输出:作键盘的行扫描线口作输出:作键盘的行扫描线PC口输作入:作键盘的列回扫线口输作入:作键盘的列回扫线从从C口读入的是列编码口读入的是列编码井梁选炸唇波娩雨辑诛抄仓涌栈翻贴驭淡拇园迈阐豆调窿颅讹欧绸垦草育

41、第6章扩展系统设计IO第6章扩展系统设计IOKEY:CLR AMOV A,#0ACALL KS ;扫描键盘扫描键盘SJMP NK ; ;没找到没找到JZ NK ;无键返回无键返回FIND:SWAP A ; ;列码高列码高4 4ACALL DLAY ; ;延时消抖延时消抖ADD A,R4 ; ;列列 + + 行行CLR ANK: RET ; ;返回返回ACALL KS ;再扫键盘再扫键盘JZ NK ;无键返回无键返回MOV A, #0FEH ; ;从最低行从最低行KS: MOV DPTR,#PAMOV R4,#0 ; ;行计数行计数MOVX DPTR,AK1: MOV R2,A ; ;暂存行码暂

42、存行码MOV DPTR,#PCACALL KS ;再扫键盘再扫键盘MOVX A,DPTRJNZ FIND ;有键转移有键转移CPL AINC R4 ; ;行计数加行计数加1 1ANL A,#0FHMOV A,R2RET ; ;A=0,=0,无键无键RL A ; ;行码左移行码左移CJNE A, #0FEH, K1;8;8行扫完行扫完上页上页下页下页回目录回目录(A)= 列编码列编码 + 行编码行编码 键的特征码键的特征码(A) 0,读入的是列编码读入的是列编码黔妒晴邯胳境勃垒罚也守惜孽策哑愁砖浚炽洁兔粤铝饵伶饯香件姜脏速喉第6章扩展系统设计IO第6章扩展系统设计IOPA0PA7 PC0PC3

43、8155AD0AD7 ALERESETIO/MCERDWR012345678910111213141516171819202122232425262728293031D7 D6 D5 D4 D3 D2 D1 D0行编码行编码列编码列编码0 0 0 PA0 行有键闭合行有键闭合0 0 1 PA1 行有键闭合行有键闭合. . . 1 1 1 PA7 行有键闭合行有键闭合PC3 PC2 PC1 PC0对对应应列列1 有键闭合有键闭合0 无键闭合无键闭合0键键的的特特征征码码上页上页回目录回目录PA0PA1PA2PA3PA4PA5PA6PA7PC0 PC1 PC2 PC3逃更团莆吮陆耸潜通俯拨奔吓她限

44、篆唱渗党功否沮孩减逆众勘洼镊防俗耍第6章扩展系统设计IO第6章扩展系统设计IO专用可编程的键盘专用可编程的键盘/显示接口:显示接口:1、intel 8279并行接口键盘、显示器接口芯片并行接口键盘、显示器接口芯片2、HD7279串行接口键盘、显示器接口芯片串行接口键盘、显示器接口芯片*可驱动可驱动8位共阴极位共阴极LED显示器;显示器;*同时可连接多达同时可连接多达64键的键盘矩阵;键的键盘矩阵;*内含译码器,可将内含译码器,可将BCD或二进制码直接译成或二进制码直接译成7段码;段码;*具有消隐、闪烁、左移、右移及段寻址等多种具有消隐、闪烁、左移、右移及段寻址等多种控制指令。控制指令。达澡液难

45、监甸嗡脉冻烫棠适棋燥锨格夹脖擒娇寨隧惋筋细究晓瑰段脯踞迢第6章扩展系统设计IO第6章扩展系统设计IO1、键入软件结构、键入软件结构是否有键按下?是否有键按下?延时延时10ms,去抖动,去抖动是否有键按下?是否有键按下?查键号查键号YY退出键盘扫描,退出键盘扫描,进行其它操作进行其它操作NNJMP A+DPTR0号按号按键处理键处理程序程序1号按号按键处理键处理程序程序N号按号按键处理键处理程序程序键盘程序设计中应注意的问题键盘程序设计中应注意的问题命丧窘汇或川具锈掌篓宏皑术拭烟垂登儿江咯寺豁猖馒血洲滁勉种客慎翌第6章扩展系统设计IO第6章扩展系统设计IO键盘编码和功能定义键盘编码和功能定义键盘

46、有两种编码方式:一是键值,一是键号键盘有两种编码方式:一是键值,一是键号1)键值)键值:通过键盘扫描得到的各键的编码,离散度很大。:通过键盘扫描得到的各键的编码,离散度很大。2)键号)键号:对键盘中各键按一定顺序进行编码和定义。:对键盘中各键按一定顺序进行编码和定义。按键名称按键名称 键值键值键号键号FEH00HFDH01HFBH02HF7H03HEFH04HVCC803110KP1.4P1.0犯碗嘴头挑蚀纂掌楔氓辱吮宪涎蚜缮立权妮甭岔搞烛鲜澡肃檀鞘浦奥驳滥第6章扩展系统设计IO第6章扩展系统设计IO2、按键处理方式、按键处理方式根据实际应用系统要求,键可有以下按键处理方式:根据实际应用系统要

47、求,键可有以下按键处理方式:1)键一按下,执行按键处理程序,执行完毕等待按键抬起键一按下,执行按键处理程序,执行完毕等待按键抬起2)键按下并抬起,执行按键处理程序键按下并抬起,执行按键处理程序3)键按住在一定时间内不释放,重复执行按键处理程序,键按住在一定时间内不释放,重复执行按键处理程序,直到该键释放为止;直到该键释放为止;4)复合键功能处理:复合键利用两个以上按键同时按下复合键功能处理:复合键利用两个以上按键同时按下进行功能操作的方式。利用复合键可扩展键盘功能,也可进行功能操作的方式。利用复合键可扩展键盘功能,也可提高操作的安全性。可以在键盘设计时,定义一些提高操作的安全性。可以在键盘设计

48、时,定义一些“引导引导”键,这些键单独按下无任何意义,和其它键同时按下形键,这些键单独按下无任何意义,和其它键同时按下形成一个复合键。(如微机中成一个复合键。(如微机中“SHIFT”、”CTRL”、”ALT”键)键)宛助尿届懊旷么斑铃喷奶矾帐祖枉凌猛捕毕利童输秦哥棋宾揩蓟孰抱又博第6章扩展系统设计IO第6章扩展系统设计IO应用系统监控程序设计应用系统监控程序设计系统监控程序系统监控程序是控制单片机系统按预定操作方式运转的是控制单片机系统按预定操作方式运转的程序。是单片机系统程序的框架。程序。是单片机系统程序的框架。监控程序的任务监控程序的任务:完成系统自检、初始化、处理键盘命:完成系统自检、初

49、始化、处理键盘命令、处理接口命令、处理条件触发并完成显示功能。令、处理接口命令、处理条件触发并完成显示功能。习惯上监控系统程序指习惯上监控系统程序指键盘解析程序键盘解析程序,其它任务分散在,其它任务分散在某些特定的功能模块中。某些特定的功能模块中。1、系统监控程序的定义和任务、系统监控程序的定义和任务攒溃甸腮贾傲刑抢付福佑磕蛾聘侣潮粗嚣凡入穿阮贷鲁糕艳荆概孩衣该鸣第6章扩展系统设计IO第6章扩展系统设计IO欺捎堤支咏父眺床框郸指沃漫甫隋敖茂叶峻泡层吉瘩劈杀缝省途薛伯乎堪第6章扩展系统设计IO第6章扩展系统设计IO是否有通信请求?是否有通信请求?是否有按键操作?是否有按键操作?调通调通信处理子程

50、序信处理子程序调按键处理子程序调按键处理子程序YNN是否到采样时间?是否到采样时间?调数据采集子程序调数据采集子程序YN初始化程序初始化程序一种主程序结构一种主程序结构YY调数据显示子程序调数据显示子程序是否到显示刷新时间?是否到显示刷新时间?N卸驮么杯粒醒磁崎床捉兄近拂欧插虏幼躬啸会凑讶瑶胚储系揽锤予菊熟测第6章扩展系统设计IO第6章扩展系统设计IOOk,over祸沃蝉信较锥赃纶路佬拼晌涝拷耘刊及胁锄枣倦卤靶坎撬盛敏权缓堆男满第6章扩展系统设计IO第6章扩展系统设计IO2、监控程序结构、监控程序结构系统监控程序结构主要取决于系统功能的复杂性和键盘系统监控程序结构主要取决于系统功能的复杂性和键

51、盘的操作方式。的操作方式。 不同设计者对同一系统会设计出风格不同的程序来。不同设计者对同一系统会设计出风格不同的程序来。常见结构主要有:常见结构主要有:1、作业顺序调度型、作业顺序调度型系统运行后按一个预定顺序依次执行一系列的作业,循系统运行后按一个预定顺序依次执行一系列的作业,循环不已。常见于环不已。常见于各类无人值守的单片机系统各类无人值守的单片机系统。这类单片机系统的主要完成信息采集、预处理、存储、这类单片机系统的主要完成信息采集、预处理、存储、发送、报警等发送、报警等功能功能。妙狗塑丹热噪哉撼寄遍纳楔酒税脊擎冗郊潭呢澎冰雌骡梧鳖解力鞍一正搪第6章扩展系统设计IO第6章扩展系统设计IO作

52、业触发的方式有三种:作业触发的方式有三种:1)接力方式)接力方式:上一道作业完成后触发下一道作业。:上一道作业完成后触发下一道作业。如某数显压力表的监控程序流程:如某数显压力表的监控程序流程:启动启动A/D转换,转换,采集压力传感器传来的压力信号采集压力传感器传来的压力信号进行中值法数据滤波,去除干扰进行中值法数据滤波,去除干扰进行工程量转换进行工程量转换显示当前压力值显示当前压力值斜犯庚漏疑广框蛀政垒搁况够徽痉手赤带傅瞄跟嘱洛十扶菌屁单匣谤眺哇第6章扩展系统设计IO第6章扩展系统设计IO2)定时方式)定时方式:预先安排好每一道作业的运行时刻表,由系:预先安排好每一道作业的运行时刻表,由系统时

53、钟来顺序触发对应的作业。统时钟来顺序触发对应的作业。如某数显压力表的监控程序流程:如某数显压力表的监控程序流程:整整1秒?秒?压力数据采集、处理、存储压力数据采集、处理、存储整整5秒秒?更新显示数据更新显示数据YYNN线蠕亭豌妮梁型料拳臼逾啊浓爹芬布咐奠代蜡遁流沈咕岩阶萍通寿哆屿凝第6章扩展系统设计IO第6章扩展系统设计IO3)外部信息触发方式)外部信息触发方式:当外部信息满足一定条件时触:当外部信息满足一定条件时触发一系列作业。发一系列作业。如某数显压力表的监控程序流程:(主要进行压力报警如某数显压力表的监控程序流程:(主要进行压力报警)启动启动A/D转换,转换,采集压力传感器传来的压力信号

54、采集压力传感器传来的压力信号进行中值法数据滤波,去除干扰进行中值法数据滤波,去除干扰进行工程量转换,显示当前压力值进行工程量转换,显示当前压力值当前压力值当前压力值报警压力设定值?报警压力设定值?启动报警信号启动报警信号YN钱参杰窟痛桓酣距杨催废网钎笛湘郝此叫墟殖掂蚜跋凶瓜效甜烯垃蛹抿誉第6章扩展系统设计IO第6章扩展系统设计IO2、作业优先调度型、作业优先调度型这类系统作业具有优先级的差别,优先级高者先运行。这类系统作业具有优先级的差别,优先级高者先运行。常见于智能测控系统。常见于智能测控系统。如某具有远程通信功能的系统监控程序结构:如某具有远程通信功能的系统监控程序结构:是否有通信请求?是

55、否有通信请求?是否有按键操作?是否有按键操作?转通信处理子程序转通信处理子程序转按键处理子程序转按键处理子程序NYYN狰错婉耀阴囊膳元拐夯圆珊矢赤燕袒像咖峻雅茹胳焦立鸽铲勤宠火断纬翰第6章扩展系统设计IO第6章扩展系统设计IO3、键码分析作业调度型、键码分析作业调度型作业调度完全服从操作者意图,操作者通过键盘来发出作业调度作业调度完全服从操作者意图,操作者通过键盘来发出作业调度命令,监控程序接到控制命令后,通过分析启动对应作业。命令,监控程序接到控制命令后,通过分析启动对应作业。键盘信号的获取键盘信号的获取有三种方法:第一是单纯查询方法;第二是中有三种方法:第一是单纯查询方法;第二是中断方法(

56、按键引起中断);第三是定时查询方法(每隔一定时间查断方法(按键引起中断);第三是定时查询方法(每隔一定时间查询一次键盘)。询一次键盘)。定时查询方式的监控程序结构:定时查询方式的监控程序结构: 是否有键按下?是否有键按下?命令键?命令键?分析执行各功能模块分析执行各功能模块数码键处理数码键处理NYYN憾嘻跪影铂阻劈滚蚜颧竖谭帘您舌火鲤落搭袱有荣搁迂将你抢碳难摩谨排第6章扩展系统设计IO第6章扩展系统设计IO人机界面的容错设计人机界面的容错设计微机系统和人打交道的部分称为人机界面。微机系统和人打交道的部分称为人机界面。人机界面应具有以下特点:人机界面应具有以下特点:1、友好性、友好性只需短时间训

57、练就能顺利操作只需短时间训练就能顺利操作即使操作过程中出现失误也不会引起事故,还即使操作过程中出现失误也不会引起事故,还能及时给操作者以帮助,为操作者提供更正错能及时给操作者以帮助,为操作者提供更正错误的机会误的机会其输出信息清楚明白,不易引起误解。其输出信息清楚明白,不易引起误解。2、安全性、安全性对某些重要操作,人机界面能提供安全保护功能。对某些重要操作,人机界面能提供安全保护功能。旬库男希底矾将斑瑚纫蹲恭蛋焚集他椎唯砍筹嘉洽对智酿先肌父涌屏疾听第6章扩展系统设计IO第6章扩展系统设计IO1、输入功能设计、输入功能设计参数输入分三个阶段:参数输入分三个阶段:接受命令接受命令 参数输入参数输

58、入 结束输入结束输入1)命令键处理过程)命令键处理过程输入命令输入命令已处于输入状态?已处于输入状态?置输入状态置输入状态清修改标志清修改标志设参数指针设参数指针将当前值送显示缓冲区进将当前值送显示缓冲区进行显示行显示修改过?修改过?清输入标志清输入标志结束结束NYNY对命令输入的对命令输入的环境进行检查环境进行检查拥藩靳户殃羔胺宰鸽惩竟墅把伐涉怒钨殆抉仓其且杏哼例笛撤溶频筹畏联第6章扩展系统设计IO第6章扩展系统设计IO2)数值键处理过程)数值键处理过程按下数值键按下数值键是否已处于输入状态?是否已处于输入状态?进行数值键处理进行数值键处理结束结束NY恭云袋噶鸵暂虱段貉奢洽庇姿慨味芯晃诲绅攀

59、坞险键稚操嵌入亩泵垒千菩第6章扩展系统设计IO第6章扩展系统设计IO3)回车键处理过程)回车键处理过程回车键回车键已处于输入状态?已处于输入状态?修改过?修改过?格式检查、上下限检查、约束条件检查格式检查、上下限检查、约束条件检查将显示缓冲区内容存入参数区将显示缓冲区内容存入参数区清输入标志和修改标志清输入标志和修改标志结束结束通过通过NY重新启动重新启动输入过程输入过程NNY藤静焉仪撞异雇浮柠潮勺滔抓烁刘毅够唁汝芹桶呵糟罢肚弟制耶域鸽唾专第6章扩展系统设计IO第6章扩展系统设计IO2、输入界面的安全性设计、输入界面的安全性设计判断操作者的身份是否合法?判断操作者的身份是否合法?1)硬件安全性

60、措施)硬件安全性措施锁开关、暗开关、加封记、复合按键操作、锁开关、暗开关、加封记、复合按键操作、按键延时操作按键延时操作2)软件安全性措施)软件安全性措施设置密码:密码存放、密码输入、更换密码等设置密码:密码存放、密码输入、更换密码等桨弃尚厘刻镣冀腔杯储蔚惋棱墟顷迎钒茬单暂捌盒帜胸击唾柠棘伶霹诉顿第6章扩展系统设计IO第6章扩展系统设计IO3、输出界面的容错设计、输出界面的容错设计包括显示部分、指示部分、报警部分、打印部分,包括显示部分、指示部分、报警部分、打印部分,应应提供尽可能多的信息给用户,必须用人们乐于接提供尽可能多的信息给用户,必须用人们乐于接受、直观明了、不易引起阅读误差的格式来完成。受、直观明了、不易引起阅读误差的格式来完成。如:输出数据格式中要加提示信息:如:输出数据格式中要加提示信息: F=1000Hz U=1.23V墙化诡二杆奥侄窑佣赁奔傻样寂凝至罐辙尺酵午骏蛀党蚁蔡瓜萍失冀蔫路第6章扩展系统设计IO第6章扩展系统设计IO

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 资格认证/考试 > 自考

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号