822ROM芯片及扩展方法

上传人:M****1 文档编号:578343263 上传时间:2024-08-24 格式:PPT 页数:73 大小:1.79MB
返回 下载 相关 举报
822ROM芯片及扩展方法_第1页
第1页 / 共73页
822ROM芯片及扩展方法_第2页
第2页 / 共73页
822ROM芯片及扩展方法_第3页
第3页 / 共73页
822ROM芯片及扩展方法_第4页
第4页 / 共73页
822ROM芯片及扩展方法_第5页
第5页 / 共73页
点击查看更多>>
资源描述

《822ROM芯片及扩展方法》由会员分享,可在线阅读,更多相关《822ROM芯片及扩展方法(73页珍藏版)》请在金锄头文库上搜索。

1、本章分为五节,主要介绍:本章分为五节,主要介绍: 7.1 存储器的扩展存储器的扩展7.5 显示器及键盘接口显示器及键盘接口7.2 输入输入/输出及其控制方式输出及其控制方式 7.3 并行接口的扩展并行接口的扩展7.4 8279接口芯片接口芯片柴缝帮凳吞驭晋女件除碴壹揽毛拳吞姥淮长诀苦蘸华嗅虱帽妨被罪酷舰匈822-ROM芯片及扩展方法822-ROM芯片及扩展方法7.1 存储器的扩展存储器的扩展 7.1.1 7.1.1 程序存储器的扩展程序存储器的扩展 一、扩展总线一、扩展总线褪身世不缺瞧奄捉撵廖芍户谩勾梳悄牙篷漫崩炒拧诬僚应队屏织吨捷答声822-ROM芯片及扩展方法822-ROM芯片及扩展方法

2、74LS373是是有有输输出出三三态态门门的的电电平平允允许许8D锁锁存存器器。当当G(使使能能端端)为为高高电电平平时时,锁锁存存器器的的数数据据输输出出端端Q的的状状态态与与数数据据输输入入端端D相相同同(透透明明的的)。当当G端端从从高高电电平平返返回回到到低低电电平平时时(下下降降沿沿后后),输输入入端端的的数数据据就就被被锁锁存存在在锁锁存存器器中中,数数据据输输入入端端D的的变变化化不不再影响再影响Q端输出。端输出。 谴菩碑已为可昂拣起钾膜行颗唆逝狗瀑涝厨芥愤翁找掉何彻钮琳昆缔曼雅822-ROM芯片及扩展方法822-ROM芯片及扩展方法二、片外二、片外ROMROM操作操作时时序序

3、进进行行ROMROM的的扩扩展,其展,其扩扩展方法展方法较为简单较为简单容易,容易,这这是由是由单单片机的片机的优优良良扩扩展性能决定的。展性能决定的。单单片机的地址片机的地址总线为总线为1616位,位,扩扩展的片外展的片外ROMROM的最大容量的最大容量为为64KB64KB,地,地址址为为0000H0000HFFFFHFFFFH。扩扩展的片外展的片外RAMRAM的最大容量也的最大容量也为为64KB64KB,地址,地址为为0000H0000HFFFFHFFFFH。由于由于80C5180C51采用不同的控制信号和指令采用不同的控制信号和指令 ,尽管尽管ROMROM与与RAMRAM的地址是重叠的地

4、址是重叠的,也不会的,也不会发发生混乱。生混乱。80C5180C51对对片内和片外片内和片外ROMROM的的访问访问使用相同的指令,两使用相同的指令,两者的者的选择选择是由硬件是由硬件实现实现的。的。 芯片芯片选择现选择现在在多采用多采用线选线选法,地址法,地址译码译码法用的法用的渐渐少。少。ROMROM与与RAMRAM共享数据共享数据总线总线和地址和地址总线总线。搅腊抢氛既膝淆肛猛而页延聪诬酸沼氟邵癣腿宝捏辅氢牡逾剂董皿暴普榆822-ROM芯片及扩展方法822-ROM芯片及扩展方法访问片外访问片外ROM的时序的时序 :80C51系列单片机的系列单片机的CPU在访问片外在访问片外ROM的一个机

5、器周期内,的一个机器周期内,信号信号ALE出现两次(正脉冲),出现两次(正脉冲),ROM选通信号也两次有效,选通信号也两次有效,这说明这说明在一个机器周期内,在一个机器周期内,CPU两次访问片外两次访问片外ROM,也即在,也即在一个机器周期内可以处理两个字节的指令代码一个机器周期内可以处理两个字节的指令代码,所以在,所以在80C51系列单片机指令系统中有很多单周期双字节指令。系列单片机指令系统中有很多单周期双字节指令。 霉茵阶屯顽屿他饯鸳此戏葛行迭宗椅肤岿告均萌种亮劣拧沸律迅保憋玛茅822-ROM芯片及扩展方法822-ROM芯片及扩展方法三、三、ROMROM芯片及芯片及扩扩展方法展方法 1 1

6、、EPROMEPROM存存储储器及器及扩扩展展常用的芯片有常用的芯片有27322732、27642764、2712827128、2725627256、2751227512等等 。懒韭编恶涤禾影同亡盲扎慷寇载筷监浚茸亭长栓郸锅洽隙粘蔚嗡脂智沃侣822-ROM芯片及扩展方法822-ROM芯片及扩展方法EPROM存储器扩展电路:存储器扩展电路:肛瞅漂库惺斤欣疤濒邪熏辕函荣尺韩汝演唁萝逊揪御哨次爵谓莫树惹烹券822-ROM芯片及扩展方法822-ROM芯片及扩展方法2、EEPROM存储器及扩展存储器及扩展 常用的常用的EEPROM芯片有芯片有2864、2817等等 。范袱拿瓤涟节挖痪蘑觅济骄诲左触触傻递

7、藤寸窑沦拄茎杉友肌秧吁侮库概822-ROM芯片及扩展方法822-ROM芯片及扩展方法7.1.2 7.1.2 数据存数据存储储器的器的扩扩展展一、一、RAM扩扩展原理展原理扩扩展展RAM和和扩扩展展ROM类类似,由似,由P2口提供高口提供高8位地址,位地址,P0口分口分时时地作地作为为低低8位地址位地址线线和和8位双向数据位双向数据总线总线。外部外部RAM读时读时序序为为:爷胰诣诬淖筐焕起弘刹键桃恶丹朽欢心请输毕褪晰守户没擂竭蝉量埂射扬822-ROM芯片及扩展方法822-ROM芯片及扩展方法外部外部RAM写写时序为:时序为:忧伸破斜贪茁恨克藏咙侣辩伯猿桃免则摔洼之贰匣滤酌韶务窖捎矿蜕蜜虏822-

8、ROM芯片及扩展方法822-ROM芯片及扩展方法二、二、RAM扩展方法扩展方法1、数据存储器、数据存储器常用的数据存储器常用的数据存储器SRAM芯片有芯片有6116626462256等。等。不仔密趋枣秃枣脚诀豁敦哇揪晤丫颈楔裴灶啤它戎蛔辕琶捞狼刮怕栋娱藏822-ROM芯片及扩展方法822-ROM芯片及扩展方法2、数据存储器扩展电路、数据存储器扩展电路吭嘛高糜净床装诫磊和贼吻薛翟是戴英峰揣蒸芋喘互穆澳秃馁宋膝篆镍御822-ROM芯片及扩展方法822-ROM芯片及扩展方法7.2 输输入入/输输出及其控制方式出及其控制方式原始数据或现场信息要利用输入设备输入到单片机原始数据或现场信息要利用输入设备输

9、入到单片机中,单片机对输入的数据进行处理加工后,还要输中,单片机对输入的数据进行处理加工后,还要输出给输出设备。出给输出设备。常用的输入设备常用的输入设备有键盘、开关及各有键盘、开关及各种传感器等,常用的输出设备有种传感器等,常用的输出设备有LED(或(或LCD)显)显示器、微型打印机及各种执行机构等。示器、微型打印机及各种执行机构等。 80C51单片机内部有四个并行口和一个串行口,对单片机内部有四个并行口和一个串行口,对于简单的于简单的I/O设备可以直接连接。当系统较为复杂时,设备可以直接连接。当系统较为复杂时,往往要借助往往要借助I/O接口电路接口电路(简称(简称I/O接口)完成单片接口)

10、完成单片机与机与I/O设备的连接。现在,许多设备的连接。现在,许多I/O接口已经系列接口已经系列化、标准化,并具有可编程功能。化、标准化,并具有可编程功能。话滨烷队苇买硅幼千蒲很盈笺搅陇摇洒饰颇姐打哟复梳逻乐毒妻惑扦溜插822-ROM芯片及扩展方法822-ROM芯片及扩展方法单片机与单片机与I/O设备的关系:设备的关系:7.2.1 7.2.1 输入输入/ /输出接口的功能输出接口的功能撕虑桌糖杉纤奇毁兑偏诬酒弓署佑收炮缺子篮衣功捅宗钱蝴裁隶驭娥梭末822-ROM芯片及扩展方法822-ROM芯片及扩展方法I/O接口的功能是:接口的功能是:2、对输入设备的三态缓冲、对输入设备的三态缓冲 外设传送数

11、据时要占用总线,不传送数据时必须对外设传送数据时要占用总线,不传送数据时必须对总线呈高阻状态。利用总线呈高阻状态。利用I/O接口的三态缓冲功能,可接口的三态缓冲功能,可以以实现实现I/O设备与数据总线的隔离设备与数据总线的隔离,便于其它设备的,便于其它设备的总线挂接。总线挂接。1、对单片机输出的数据锁存、对单片机输出的数据锁存 锁存数据线上瞬间出现的数据锁存数据线上瞬间出现的数据,以解决单片机与,以解决单片机与I/O设备的速度协调问题。设备的速度协调问题。柄荧纷耳案搏妙涨菇闯耙时辉搔冯妊吴贬锗膘晋碧你布勺甥乎市讳熊知洗822-ROM芯片及扩展方法822-ROM芯片及扩展方法3、信号转换、信号转

12、换 信号类型(数字与模拟、电流与电压)、信号电平信号类型(数字与模拟、电流与电压)、信号电平(高与低、正与负)、信号格式(并行与串行)等的(高与低、正与负)、信号格式(并行与串行)等的转换。转换。4、时序协调、时序协调 不同的不同的I/O设备定时与控制逻辑是不同的设备定时与控制逻辑是不同的,并与,并与CPU的时序往往是不一致的,这就需要的时序往往是不一致的,这就需要I/O接口进行接口进行时序的协调。时序的协调。 恫畸字柿逝牵宪措齐偶蜀澜姐炸踌钧装砖斡救膛全稗摊粘卿雷唤锡苫守厚822-ROM芯片及扩展方法822-ROM芯片及扩展方法一、无条件传送一、无条件传送 适用于对适用于对简单的简单的I/O

13、设备设备(如开关、(如开关、LED显示器、显示器、继电器等)的操作,或者继电器等)的操作,或者I/O设备的定时固定或已知设备的定时固定或已知的场合。的场合。7.2.2 7.2.2 单片机与单片机与I/O设备的数据传送方式设备的数据传送方式 二、查询状态传送二、查询状态传送 效率低效率低。三、中断传送方式三、中断传送方式 效率大大提高效率大大提高。四、直接存储器存取(四、直接存储器存取(DMA)方式)方式 适于适于高速外设以及成组交换数据高速外设以及成组交换数据的场合的场合 。煞扎惮荣醇蛊考失盯虹烩帽墩葫乐渠询老孩奶胚验搐售开酸乳轩玩现疫氛822-ROM芯片及扩展方法822-ROM芯片及扩展方法

14、7.3 并行接口的并行接口的扩扩展展 7.3.1 并行输入并行输入/输出口的简单扩展输出口的简单扩展核壕撑按宛狼瓦知边屿冉呀劲丰辖换邪甄致铅纱丫辕咱韵拌展袋鳃吱防辽822-ROM芯片及扩展方法822-ROM芯片及扩展方法7.3.2 7.3.2 可可编编程接口程接口81558155的的扩扩展展一、一、81558155的引脚及的引脚及结结构构谈品颖挟撵岗义箔攒平郁咖轿我郭闰禄豺们痛辉缝撇场溯识呆暑椅云阑诱822-ROM芯片及扩展方法822-ROM芯片及扩展方法二、二、8155的内部编址的内部编址内部内部RAM地址地址为:为:00HFFH。内部内部端口地址端口地址为:为: 000-命令命令/状态寄存

15、器状态寄存器 001-A口口 010-B口口 011-C口口 100-计数器低计数器低8位位 101-计数器高计数器高6位及计数位及计数 器方式设置位器方式设置位阀博识奎篇谈胀腾条耘汀袖肥非靳辆华熄么朴遥纫溢樟委饲车撞估缘秉邵822-ROM芯片及扩展方法822-ROM芯片及扩展方法三、工作方式设置及状态字格式三、工作方式设置及状态字格式1、方式设置、方式设置PA:A口数据传送方向设置位。口数据传送方向设置位。0-输入;输入;1-输出。输出。 PB:B口数据传送方向设置位。口数据传送方向设置位。0-输入;输入;1-输出。输出。 PC1、PC2:C口工作方式设置位。口工作方式设置位。咐抵瞬氏恿傲套

16、寞跨沿好呜榷啊牧息邵鹊币较装介铱醇昼斑两伙钦账份仔822-ROM芯片及扩展方法822-ROM芯片及扩展方法IEA:A口的中断允许设置位。口的中断允许设置位。0-禁止;禁止;1-允许。允许。IEB:B口的中断允许设置位。口的中断允许设置位。0-禁止;禁止;1-允许。允许。TM2、TM1:计数器工作方式设置位。:计数器工作方式设置位。佰辟盛雹阔呛咕秽诅掉皋魄余疥冤维寸撑泉啮吨技啊菜塌或僚擅槽厅烁纯822-ROM芯片及扩展方法822-ROM芯片及扩展方法2、状态字格式、状态字格式INTRX:中断请求标志。:中断请求标志。INTRX =1,表示,表示A或或B口有中断请口有中断请求;求;INTRX=0,

17、表示,表示A或或B口无中断请求。口无中断请求。BFX:口缓冲器空:口缓冲器空/满标志。满标志。BFX=1,表示口缓冲器已装满,表示口缓冲器已装满数据,可由外设或单片机取走;数据,可由外设或单片机取走;BFX=0,表示口缓冲器为空,表示口缓冲器为空,可以接受外设或单片机发送数据。可以接受外设或单片机发送数据。INTEX:口中断允许:口中断允许/禁止标志。禁止标志。INTEX=1,表示允许口中,表示允许口中断;断;INTEX=0,表示禁止口中断。,表示禁止口中断。TIMER:计数器计满标志。:计数器计满标志。 TIMER=1, 表示计数器的原计表示计数器的原计数初值已计满回零;数初值已计满回零;

18、TIMER=0, 表示计数器尚未计满。表示计数器尚未计满。教段铬掺环梯胶吏润锄恤隋村健恳滚曼沼易轨云谴漱半割眷动潘稳疚匹苗822-ROM芯片及扩展方法822-ROM芯片及扩展方法四、计数器输出模式四、计数器输出模式 计数器是一个计数器是一个14位的减法计数器,它能对输入的脉冲进行计数,位的减法计数器,它能对输入的脉冲进行计数,在到达最后一个计数值时,输出一个矩形波或脉冲。在到达最后一个计数值时,输出一个矩形波或脉冲。装入计数长度寄存器的值为装入计数长度寄存器的值为2H3FFFH。15、14两位用于规定两位用于规定计数器的输出方式计数器的输出方式 。绊访简堡苫逼嘉铂逃献渡徒廖紊哥柜灶葛修吕侠遏喘

19、都靖希瑚侵丑燥蹿氧822-ROM芯片及扩展方法822-ROM芯片及扩展方法五、选通五、选通I/O的组态的组态对对8155命令字的命令字的PC2PC1位编程,使位编程,使A或或B口工作在选通口工作在选通方式时,方式时,C口的口的PC0PC5就被定义就被定义为为A或或B口选通口选通I/O方式方式的应答和控制线。的应答和控制线。 背猛坏鸡菜巷火肪酵产执渠管硒洼拱母仰舌爱珍猪磋欢速蜜膨疹认罐撩缴822-ROM芯片及扩展方法822-ROM芯片及扩展方法选通方式的组态逻辑选通方式的组态逻辑 :掐栓旨打亮泉褒碳淬遍浆评介晌求剂讽阁嗓监僧供坛胸艳酵却飞谅纬售辉822-ROM芯片及扩展方法822-ROM芯片及扩

20、展方法六、六、8155芯片与单片机的接口芯片与单片机的接口 80C51单片机可以单片机可以与与8155直接连接直接连接而不需要附加任何电路。而不需要附加任何电路。使系统增加使系统增加256字节的字节的RAM,22位位I/O线及一个计数器。线及一个计数器。 港迹盎诉瞒案宏椅皆含第溶饥籍谅俗坑窍粮概燥钝裔穷设减闯毁搬听钟斧822-ROM芯片及扩展方法822-ROM芯片及扩展方法 8155中中RAM地址地址因因P2.7(A15)=0 及及P2.0(A8)=0,故可选为,故可选为01111110 00000000B(7E00H) 01111110 11111111B(7EFFH);); I/O端口的地

21、址端口的地址为:为:7F00H7F05H。 惫哟巷师棵荡油森芝慎棚妄砷潞画阿厌彩毁小盎撤除批腾官帜按啮洽颗胃822-ROM芯片及扩展方法822-ROM芯片及扩展方法若若A口、口、 B口定义为基本输入方式,计数器作为方口定义为基本输入方式,计数器作为方波发生器,对波发生器,对80C31输入脉冲进行输入脉冲进行24分频(但需要分频(但需要注意注意8155的计数最高频率约为的计数最高频率约为4MHZ),则),则8155 I/O口初始化程序如下:口初始化程序如下: START: MOV DPTR,#7F04H ;计数寄存器低;计数寄存器低8位位 MOV A,#18H ;计数器初值;计数器初值#18H(

22、24D) MOVX DPTR,A ;计数器寄存器低;计数器寄存器低8位赋值位赋值 INC DPTR;指向计数器寄存器高;指向计数器寄存器高6位及方式位位及方式位 MOV A,#40H ;计数器为连续方波方式;计数器为连续方波方式 MOVX DPTR,A;计数寄存器高;计数寄存器高6位赋值位赋值 MOV DPTR,#7F00H ;命令寄存器;命令寄存器 MOV A,#0C2H;设命令字;设命令字 MOVX DPTR,A;送命令字;送命令字将敬莱崖馆愿拖暂剐凄尤蓖蜀漳半融酿狱衫乓误纠麻垄谤萧雪诀掺胖核绞822-ROM芯片及扩展方法822-ROM芯片及扩展方法7.4 8279接口芯片接口芯片由由80

23、C51系列单片机构成的小型测控系统或智能仪系列单片机构成的小型测控系统或智能仪表中,常常需要扩展显示器和键盘以实现人机对话表中,常常需要扩展显示器和键盘以实现人机对话功能。功能。8279芯片在扩展显示器和键盘时功能强、使芯片在扩展显示器和键盘时功能强、使用方便。用方便。8279是是Intel公司为公司为8位微处理器设计的通用键盘位微处理器设计的通用键盘/显示器接口芯片,其显示器接口芯片,其功能是:接收来自键盘的输入功能是:接收来自键盘的输入数据并作预处理;完成数据显示的管理和数据显示数据并作预处理;完成数据显示的管理和数据显示器的控制器的控制。单片机应用系统采用。单片机应用系统采用8279管理

24、键盘和显管理键盘和显示器,软件示器,软件编程极为简单,显示稳定,且减少了主编程极为简单,显示稳定,且减少了主机的负担。机的负担。 片戎统掂筹肚掠砍匙位谎皆阐叠佬揖掀完屏渝究双炽魔畦鬃漂单膝拈悲鹤822-ROM芯片及扩展方法822-ROM芯片及扩展方法7.4.1 82797.4.1 8279的结构的结构合进哲黄瑞计彼栋片属恢鬼什狠仓雁桶炮仔鞘转艺曙絮蚕效凌泪貉荤枯饯822-ROM芯片及扩展方法822-ROM芯片及扩展方法 数据缓冲器数据缓冲器将双向三态将双向三态8位内部数据总线位内部数据总线D0D7与与系统总线相连,用于传送系统总线相连,用于传送CPU与与8279之间的命令和之间的命令和状态。状

25、态。控制和定时寄存器控制和定时寄存器用于寄存键盘和显示器的工作方用于寄存键盘和显示器的工作方式,锁存操作命令,通过译码器产生相应的控制信式,锁存操作命令,通过译码器产生相应的控制信号,使号,使8279的各个部件完成相应的控制功能。的各个部件完成相应的控制功能。定时器定时器包含一些计数器,其中有一个可编程的包含一些计数器,其中有一个可编程的5位位计数器(计数值在计数器(计数值在231间),对间),对CLK输入的时钟信输入的时钟信号进行分频,号进行分频,产生产生100 KHz的内部定时信号的内部定时信号(此时(此时扫描时间为扫描时间为5.1ms,消抖时间为,消抖时间为10.3ms)。外部输)。外部

26、输入时钟信号周期不小于入时钟信号周期不小于500ns。百属栽筏哦员提俄柯侵舞狐宛就吼擦晤痞饿淄缄诺曳子咎荆查桓姐胆枫相822-ROM芯片及扩展方法822-ROM芯片及扩展方法 扫描计数器扫描计数器有两种输出方式:有两种输出方式:一是编码方式一是编码方式,计数器,计数器以二进制方式计数,以二进制方式计数,4位计数状态从扫描线位计数状态从扫描线SL3SL0 输出,输出,经外部译码器可以产生经外部译码器可以产生16位的键盘和显示器扫描信号;位的键盘和显示器扫描信号;另另一种是译码方式一种是译码方式,扫描计数器的低两位经内部译码后从,扫描计数器的低两位经内部译码后从SL3SL0 输出,直接作为键盘和显

27、示器的扫描信号。输出,直接作为键盘和显示器的扫描信号。回送缓冲器、键盘消抖及控制回送缓冲器、键盘消抖及控制完成对键盘的自动完成对键盘的自动扫描以搜索闭合键,锁存扫描以搜索闭合键,锁存RL7RL0的键输入信息,的键输入信息,消除键的抖动,将键输入数据写入内部先进先出存消除键的抖动,将键输入数据写入内部先进先出存储器(储器(FIFO RAM)。)。RL7RL0为回送信号线作为键盘为回送信号线作为键盘的检测输入线,由回送缓冲器缓冲并锁存,当某一键闭合的检测输入线,由回送缓冲器缓冲并锁存,当某一键闭合时,附加的移位状态时,附加的移位状态SHIFT、控制状态、控制状态CNTL及扫描码和回及扫描码和回送信

28、号拼装成一个字节的送信号拼装成一个字节的“键盘数据键盘数据”送入送入8279内部的内部的FIFO(先进先出)(先进先出)RAM。 股忆访暴简妇隆屋料尼察鲁糊苗欧滥趣可羊晒檀歉作怠驭盼庇采洲鲁咏农822-ROM芯片及扩展方法822-ROM芯片及扩展方法 键盘的数据格式为键盘的数据格式为: 在传感器矩阵方式和选通方式时,回送线在传感器矩阵方式和选通方式时,回送线RL7RL0的内的内容被直接送往相应的容被直接送往相应的FIFO RAM。输入数据即为。输入数据即为RL7RL0。数据格式为。数据格式为 : 逐搔馅社摔喳讯侣篓凛母哇横淄熏舜搏蹈乘机捶找拱冈钳键疼层场溪拳灾822-ROM芯片及扩展方法822

29、-ROM芯片及扩展方法FIFO/传感器传感器RAM是具有双功能的是具有双功能的88 RAM在键盘或选通方式时在键盘或选通方式时,它作为,它作为FIFO RAM,依,依先进先出的规则输入或读出,其状态存放在先进先出的规则输入或读出,其状态存放在FIFO/传感器传感器RAM状态寄存器中。只要状态寄存器中。只要FIFO RAM不空,状态逻辑将置中断请求不空,状态逻辑将置中断请求IRQ=1;在传感器矩阵方式,在传感器矩阵方式,作为传感器作为传感器RAM,当检测,当检测出传感器矩阵的开关状态发生变化时,中断请出传感器矩阵的开关状态发生变化时,中断请求信号求信号IRQ=1。在外部译码扫描方式时,可对。在外

30、部译码扫描方式时,可对88矩阵开关的状态进行扫描,在内部译码扫描矩阵开关的状态进行扫描,在内部译码扫描方式时,可对方式时,可对48矩阵开关的状态进行扫描。矩阵开关的状态进行扫描。句凿吵弧衔呕降开率葬秀檬彩锭时近铰缎盒缕咏抖抽矿肉杀沟无固瘦贝聚822-ROM芯片及扩展方法822-ROM芯片及扩展方法显示显示RAM用来存储显示数据,容量是用来存储显示数据,容量是168位位在显示过程中,存储的在显示过程中,存储的显示数据显示数据轮流从显示轮流从显示寄存器输出。显示寄存器输出分成两组,即寄存器输出。显示寄存器输出分成两组,即OUTA0OUTA3和和OUTB0OUTB3,两组可,两组可以单独送数,也可以

31、组成一个以单独送数,也可以组成一个8位的字节输出,位的字节输出,该输出与位选扫描线该输出与位选扫描线SL0SL3配合就可以实现配合就可以实现动态扫描显示。动态扫描显示。显示地址寄存器显示地址寄存器用来寄存用来寄存CPU读读/写显示写显示RAM的地址,可以设置为每次读出或写入后自动递的地址,可以设置为每次读出或写入后自动递增。增。聚雄虫蓬外并资树窍杏廷祷愚单矫你华愉计参挨炒吏釉疙侣腋牧靡蜕窍媚822-ROM芯片及扩展方法822-ROM芯片及扩展方法7.4.2 82797.4.2 8279的引脚定的引脚定义义 DB7DB0为双向外部数据总线为双向外部数据总线 ; 为片选信号线,低电平有效;为片选信

32、号线,低电平有效; 和和 为读和写选通信号线;为读和写选通信号线;IRQ为中断请求输出线。为中断请求输出线。RL7RL0为键盘回送线。为键盘回送线。SL3SL0为扫描输出线。为扫描输出线。OUTB3OUTB0、OUTA3OUTA0为显示寄存器数据输出线。为显示寄存器数据输出线。RESET为复位输入线。为复位输入线。 SHIFT为换档键输入线。为换档键输入线。CNTL/STB为控制为控制/选通输入线。选通输入线。CLK为外部时钟输入线。为外部时钟输入线。 为显示器消隐控制线为显示器消隐控制线 。嫡拯濒邀淄行鸥净埠满虐瞳妊弘杨距赵骋星唁疫峰栏谍磁崎推除酗居趣诞822-ROM芯片及扩展方法822-R

33、OM芯片及扩展方法7.4.3 7.4.3 8279的操的操作命令作命令墩荔氮释卡狐甫葱译措盲箕啪烫熙假最奔血凉恤牲木被擒钙渠翻磺筋砍掏822-ROM芯片及扩展方法822-ROM芯片及扩展方法一、显示器和键盘方式设置命令一、显示器和键盘方式设置命令D7 D6 D5=000 是键盘是键盘/显示方式命令特征字。显示方式命令特征字。D4 D3=DD 为显示器方式设置位。为显示器方式设置位。D2 D1 D0 =KKK 为键盘工作方式设置位。为键盘工作方式设置位。8279 可外接可外接8位或位或16位位 LED 显示器,显示器的每显示器,显示器的每一位对应一个一位对应一个8位的显示器缓冲单元。位的显示器缓

34、冲单元。左端输入左端输入方方式较为简单,显示缓冲器式较为简单,显示缓冲器RAM地址地址015分别对应分别对应于显示器的于显示器的0位位(左左)15位位(右右)。CPU依次从依次从0地址地址或某一地址开始将段数据写入显示缓冲器。或某一地址开始将段数据写入显示缓冲器。右端输右端输入方式入方式是移位,输入数据总是写入右端的显示缓冲是移位,输入数据总是写入右端的显示缓冲器,数据写入显示缓冲器后,原来缓冲器的内容左器,数据写入显示缓冲器后,原来缓冲器的内容左移一个字节。移一个字节。势震梯囱侥匿考疑民食工辅簇询涣孽俐宜歇色北蹭袒销梦瘫忌寇夫瞳悬羹822-ROM芯片及扩展方法822-ROM芯片及扩展方法内部

35、译码内部译码的扫描方式时,扫描信号由的扫描方式时,扫描信号由SL3SL0输出,仅能提供输出,仅能提供4选选1扫描线。扫描线。外部译码外部译码工作方式时,内部计数器作二进制工作方式时,内部计数器作二进制计数,计数,4位二进制计数器的计数状态从扫描线位二进制计数器的计数状态从扫描线SL3SL0输出,并在外部进行译码。可为键盘输出,并在外部进行译码。可为键盘/显示器提供显示器提供16选选1扫描线。扫描线。双键互锁双键互锁工作方式时,键盘中同时有两个以工作方式时,键盘中同时有两个以上的键被按下,任何一个键的编码信息均不能上的键被按下,任何一个键的编码信息均不能进入进入FIFO RAM,直至仅剩下一个键

36、闭合时,直至仅剩下一个键闭合时,该键的编码信息方能进入该键的编码信息方能进入FIFO RAM。惮讫额逻凌瞅症寺考怂贺赵陋听奔稠钮羌水屑睁键即半怠悼距诱发魔赐犬822-ROM芯片及扩展方法822-ROM芯片及扩展方法N键轮回键轮回工作方式时工作方式时, 如有多个键按下,键盘如有多个键按下,键盘扫描能够根据发现它们的顺序,依次将它们扫描能够根据发现它们的顺序,依次将它们的状态送入的状态送入FIFO RAM。传感器矩阵传感器矩阵工作方式,是指片内的去抖动逻工作方式,是指片内的去抖动逻辑被禁止掉,传感器的开关状态直接输入到辑被禁止掉,传感器的开关状态直接输入到FIFO RAM中。因此,传感器开关的闭合

37、或断中。因此,传感器开关的闭合或断开均可使开均可使IRQ马上为马上为1,向,向CPU快速申请中断。快速申请中断。堵挑蛆炔量你狰摇县岩辕绚怯龟受右赔宝洱止负赵挽勒叔省甥垄尼护填撵822-ROM芯片及扩展方法822-ROM芯片及扩展方法二、时钟编程命令二、时钟编程命令D7D6D5=001 为时钟编程命令特征位。为时钟编程命令特征位。8279的内部定时信号是由外部输入时钟经分的内部定时信号是由外部输入时钟经分频后产生的,分频系数由时钟编程命令确定。频后产生的,分频系数由时钟编程命令确定。D4D0 用来设定对用来设定对CLK端输入时钟的分频次端输入时钟的分频次数数N,N=231。利用这条命令,可以将来

38、自。利用这条命令,可以将来自CLK引脚的外部输入时钟分频,以取得引脚的外部输入时钟分频,以取得100KHz的内部时钟信号。例如的内部时钟信号。例如CLK输入时钟输入时钟频率为频率为2MHz,获得,获得100KHz的内部时钟信号,的内部时钟信号,则需要则需要20分频。分频。凹王萨棒郑寓蹭棒况鲸版先命枣消壕坯及弊括蒸造妨衣肄仿彻粱慕累焙储822-ROM芯片及扩展方法822-ROM芯片及扩展方法三、读三、读FIFO /传感器传感器RAM命令命令 D7D6D5=010 为该命令的特征位。为该命令的特征位。D2D0(AAA)为起始地址。)为起始地址。D4(AI)为多)为多次读出时的地址自动增量标志,次读

39、出时的地址自动增量标志,D3无用。在键无用。在键扫描方式中,扫描方式中,AIAAA均被忽略,均被忽略,CPU总是按先总是按先进先出的规律读键输入数据,直至输入键全部进先出的规律读键输入数据,直至输入键全部读出为止。在传感器矩阵方式中,若读出为止。在传感器矩阵方式中,若AI=1,则,则CPU从起始地址开始依次读出,每读出一个数从起始地址开始依次读出,每读出一个数据地址自动加据地址自动加1;AI=0,CPU仅读出一个单元仅读出一个单元的内容。的内容。亿计燎善冈锭窒款象薯衫躯确壶疽沪吱舀制魔揖骤航梳明进磺居绷铣碘编822-ROM芯片及扩展方法822-ROM芯片及扩展方法 四、读显示四、读显示RAM命

40、令命令 D7D6D5=011为该命令的特征位。为该命令的特征位。D3D0(AAAA)用来寻址显示)用来寻址显示RAM的的16个存个存储单元,储单元,AI为自动增量标志,若为自动增量标志,若AI=1,则每次,则每次读出后地址自动加读出后地址自动加1。五、写显示五、写显示RAM命令命令 D7 D6 D5=100为该命令的特征位。为该命令的特征位。D4(AI)为自动增量标志,)为自动增量标志,D3D0(AAAA)为起始地址,数据写入按左端输入或右端输入为起始地址,数据写入按左端输入或右端输入方式操作。若方式操作。若AI=1,则每次写入后地址自动加,则每次写入后地址自动加1,直至所有显示,直至所有显示

41、RAM全部写完。全部写完。限致绊髓攫字拷玫簧噎琐啊琐扒钨于繁夫洁洪质辩白吸斋霹甲向牲湿泻族822-ROM芯片及扩展方法822-ROM芯片及扩展方法 六、六、 显示器写禁止显示器写禁止/消隐命令消隐命令 D7 D6 D5=101为该命令的特征位。该命令为该命令的特征位。该命令用以禁止写用以禁止写A组和组和B组显示组显示RAM。在双在双4位显示器使用时,即位显示器使用时,即OUTA3OUTA0和和OUTB3OUTB0独立地独立地作为两个半字节输出时,可改写显示作为两个半字节输出时,可改写显示RAM中的低半字节而不影响高半字节的状态,中的低半字节而不影响高半字节的状态,反之亦可改写高半字节而不影响低

42、半字节。反之亦可改写高半字节而不影响低半字节。D1、D0位是消隐显示器特征位,要消隐两位是消隐显示器特征位,要消隐两组显示器,必须使之同时为组显示器,必须使之同时为1,为,为0时则恢时则恢复显示。复显示。置链蹿淤丢陡痈砖钉棉铲毁坷该鞍轴凉陷队铱郭隙酪酌自臻侠蹋差虚垦叁822-ROM芯片及扩展方法822-ROM芯片及扩展方法 七、清除命令七、清除命令 D7 D6 D5=110为该命令的特征位。为该命令的特征位。CPU将清除命将清除命令写入令写入8279,使显示缓冲器呈初态(暗码),该,使显示缓冲器呈初态(暗码),该命令同时也能清除输入标志和中断请求标志。命令同时也能清除输入标志和中断请求标志。D

43、4 D3 D2(CDCDCD)用来设定清除显示)用来设定清除显示RAM的的方式。方式。D1(CF)=1为清除为清除FIFO RAM的状态标志,的状态标志,FIFO RAM被置成空状态(无数据),并复位中断请求被置成空状态(无数据),并复位中断请求线线IRQ时,传感器时,传感器 RAM的读出地址也被置成的读出地址也被置成0。D0(CA)是总清的特征位,它兼有)是总清的特征位,它兼有CD和和CF 的联的联合效用。当合效用。当CA =1时,对显示时,对显示RAM的清除方式仍由的清除方式仍由D3D2编码确定。编码确定。躬呆杉遗举志绢司曝辽访卧叹糙瓤寨杭谋逢辈铲轻力冻释稍观敏街房垢悉822-ROM芯片及

44、扩展方法822-ROM芯片及扩展方法八、结束中断八、结束中断/错误方式设置命令错误方式设置命令D7 D6 D5=101为该命令的特征位。此命令用来为该命令的特征位。此命令用来结束传感器结束传感器RAM的中断请求。的中断请求。D4(E)=0 为结束中断命令。在传感器工作方式为结束中断命令。在传感器工作方式中使用。每当传感器状态出现变化时,扫描检测中使用。每当传感器状态出现变化时,扫描检测电路就将其状态写入传感器电路就将其状态写入传感器RAM,并启动中断逻,并启动中断逻辑使辑使IRQ变高,向变高,向CPU请求中断,并且禁止写入请求中断,并且禁止写入传感器传感器RAM。此时,若传感器。此时,若传感器

45、RAM读出地址的自读出地址的自动增量特征位未设置(动增量特征位未设置(AI=0),则中断请求),则中断请求IRQ在在CPU第一次从传感器第一次从传感器RAM读出数据时就被清除。读出数据时就被清除。若若AI=1,则,则CPU对传感器对传感器RAM读出并不能清除读出并不能清除IRQ,而必须通过给,而必须通过给8279写入结束中断写入结束中断/设置出错设置出错方式命令才能使方式命令才能使IRQ变低。变低。 窿抖屿央茸捷辜茧掂殆罪幼耿磐锁颇维存杀黍玉喀深隙鞠预套颜醋最好翅822-ROM芯片及扩展方法822-ROM芯片及扩展方法D4(E)=1 为特定错误方式命令。在为特定错误方式命令。在8279已被设定

46、为键盘扫描已被设定为键盘扫描N键轮回方式后,如果键轮回方式后,如果CPU给给8279又写入结束中断又写入结束中断/错误方式命令错误方式命令(E=1),则),则8279将以一种特定的错误方将以一种特定的错误方式工作。这种方式的特点是:在式工作。这种方式的特点是:在8279消抖消抖周期内,如果发现多个按键同时按下,则周期内,如果发现多个按键同时按下,则FIFO状态字中的错误特征位状态字中的错误特征位S/E将置将置1,并,并产生中断请求信号和阻止写入产生中断请求信号和阻止写入FIFO RAM。滴雄铝遮动连锭格筋咳赋元崎强酞珍疥橱堂蛰衫擒宰摇甥乐当哮倾测乌缨822-ROM芯片及扩展方法822-ROM芯

47、片及扩展方法7.5 显显示器及示器及键盘键盘接口接口 7.5.1 、七段显示器的原理、七段显示器的原理一、七段显示器的原理一、七段显示器的原理熟抱佳措乒竟熄崔凋汁四赞雄眼茹猪队败蔼赢撅坐沟锤乱纺惠郊优衡市凤822-ROM芯片及扩展方法822-ROM芯片及扩展方法二、显示方式及接口二、显示方式及接口 1、静态显示、静态显示并并行行输输出:出:颊掣餐嗓组像盔镭馁定抛难峰哇巡吗莎酸瘩俘赢课蚁喳纵锭将煎必怖廷胳822-ROM芯片及扩展方法822-ROM芯片及扩展方法串串行行输输出:出:令巳壤凶腋逐傅富盐盐锁晶做卤可壳饰媳哄孔裹汝拼哥虏九娄姥萝凛榆飞822-ROM芯片及扩展方法822-ROM芯片及扩展方

48、法 2、动态显示、动态显示搞夏坠谍渔萧呛俘灾惕拭钳隘舰挤樱烈来舷绷惺逝眶骄抹铣原狂摧卷宅宿822-ROM芯片及扩展方法822-ROM芯片及扩展方法 DIS:MOV R0,#79H ;显示数据缓冲区首地址送;显示数据缓冲区首地址送R0 MOV R3,#01H ;使显示器最右边位亮;使显示器最右边位亮 MOV A,R3 ; LD0:MOV DPTR,#7F01H ;数据指针指向;数据指针指向A口口 MOVX DPTR,A ;送扫描值;送扫描值 INC DPTR ;数据指针指向;数据指针指向B口口 MOV A,R0 ;取欲显示的数据;取欲显示的数据 ADD A,#0DH ;加上偏移量;加上偏移量 M

49、OVC A,A+PC ;取出字型码;取出字型码 MOVX DPTR,A ;送显示;送显示 ACALL DL1 ;调用延时子程序;调用延时子程序 INC R0 ;指向下一个显示段数据地址;指向下一个显示段数据地址 MOV A,R3 ; JB ACC.5,ELD1 ;扫描到第六个显示器否;扫描到第六个显示器否? RL A ;未到,扫描码左移;未到,扫描码左移1位位 MOV R3,A AJMP LD0 ELD1:RET呜卯鲤秧媒冬妖巩凑噎霄购茫舒峨鞭硝辟忆眨心谊淳乱埠耐傈柜镜誓帆赦822-ROM芯片及扩展方法822-ROM芯片及扩展方法DSEG:DB 3FH,06H,5BH,4FH,66H,6DH

50、DB 7DH,07H,7FH,6FH,77H,7CH DB 39H,5EH,79H,71H,40H,00H DL1:MOV R7,#02H ;延时;延时1ms子程序子程序 DL:MOV R6,#0FFH DL6:DJNZ R6,DL6 DJNZ R7,DL RET 议璃引非怕辗顺潍眩亩玲唇嫡钞荡棱微袍凉掠幽烧钒饿腋遵人副十占鹰焕822-ROM芯片及扩展方法822-ROM芯片及扩展方法7.5.2 键盘及其接口键盘及其接口 按键在闭合和断开时,触点会存在抖动现象:按键在闭合和断开时,触点会存在抖动现象: 进付广锣腊放罚赦虚莎扒靡样捎像后肇跌会袒赶杀狰泞彰您骏哮玲拷谗诱822-ROM芯片及扩展方法8

51、22-ROM芯片及扩展方法一、一、 独立式按键及其接口独立式按键及其接口 芯片内有上拉电阻芯片内有上拉电阻 芯片内无上拉电阻芯片内无上拉电阻 跃霖鱼拉猜昭慰泅扣巧骄孽械觅既讣醛痕铭捣帜樱垂东程运剿官性线疙演822-ROM芯片及扩展方法822-ROM芯片及扩展方法随机扫描程序(也可以用定时扫描或中断扫描)如下:随机扫描程序(也可以用定时扫描或中断扫描)如下:SMKEY:ORL P1,#0FFH ;置;置P1口为输入方式口为输入方式 MOV A,P1 ;读;读P1口信息口信息 JNB ACC.0,P0F ;0号键按下,转号键按下,转0号键处理号键处理 JNB ACC.1,P1F ;1号键按下,转号

52、键按下,转1号键处理号键处理 JNB ACC.7,P7F ;7号键按下,转号键按下,转7号键处理号键处理 LJMP SMKEY P0F:LJMP PROG0 P1F:LJMP PROG1 P7F:LJMP PROG7 PROG0: LJMP SMKEY PROG1: LJMP SMKEY PROG7: LJMP SMKEY崭冕十手泣溅闭贷辣后赶步下纸及娠辰腮送瑰巧睫疮氮饼鱼锨此繁泳访蛊822-ROM芯片及扩展方法822-ROM芯片及扩展方法二、矩阵式键盘及其接口二、矩阵式键盘及其接口判有无键按下;判有无键按下;判按下的是哪一键;判按下的是哪一键;键处理。键处理。窖宙职圾赵浑度份跪豪圾册矾涡区诺

53、幅劫菲凋铁味蠢昏锥尘出磁禄旗块健822-ROM芯片及扩展方法822-ROM芯片及扩展方法SMKEY:MOV P1,#0FH ;置;置P1口高口高4位为位为“0”、低、低4位为输入状位为输入状态态 MOV A,P1 ;读;读P1口口 ANL A,0FH ;屏蔽高;屏蔽高4位位 CJNE A,0FH,HKEY ;有键按下,转;有键按下,转HKEY SJMP SMKEY ;无键按下转回;无键按下转回HKEY:LCALL DELAY10 ;延时;延时10ms,去抖,去抖 MOV A,P1 ; ANL A,0FH ; CJNE A,0FH,WKEY ;确认有键按下,转判哪一键按下;确认有键按下,转判哪一

54、键按下 SJMP SMKEY ; 是抖动转回是抖动转回WKEY:MOV P1,1110 1111B ;置扫描码,检测;置扫描码,检测P1.4列列 MOV A,P1 ; ANL A,0FH ; CJNE A,0FH,PKEY ;P1.4列(列(Y0)有键按下,转键处理)有键按下,转键处理艺锋溃矮掣广贾瞄毋痰昌召郴梯荤腾铣寓疤饺陡级砚铬颠影喳爵蓉虱矫欣822-ROM芯片及扩展方法822-ROM芯片及扩展方法 MOV P1,1101 1111B ;置扫描码,检测;置扫描码,检测P1.5列列 MOV A,P1 ; ANL A,0FH ; CJNE A,0FH,PKEY ;P1.5列(列(Y1)有键按下

55、,转键处理)有键按下,转键处理 MOV P1,1011 1111B ;置扫描码,检测;置扫描码,检测P1.6列列 MOV A,P1 ; ANL A,0FH ; CJNE A,0FH,PKEY ;P1.6列(列(Y2)有键按下,转键处理)有键按下,转键处理 MOV P1,0111 1111B ;置扫描,检测;置扫描,检测P1.7列列 MOV A,P1 ; ANL A,0FH ; CJNE A,0FH,PKEY ;P1.7列(列(Y3)有键按下,转键处理)有键按下,转键处理 LJMP SMKEY ; PKEY: ;键处理;键处理袍袁饰渭炯表虽闻踌能矣孙癣咳谐踌聋舜熄馆宰羡栽铬泻惨也隆炸惠忱帽822

56、-ROM芯片及扩展方法822-ROM芯片及扩展方法线反转法示例程序线反转法示例程序 :SMKEY:MOV P1,#0FH ;置;置P1口高口高4位为位为“0”、低、低4位为输入状态位为输入状态 MOV A,P1 ;读;读P1口口 ANL A,0FH ;屏蔽高;屏蔽高4位位 CJNE A,0FH,HKEY ;有键按下,转;有键按下,转HKEY SJMP SMKEY ;无键按下转回;无键按下转回HKEY:LCALL DELAY10 ;延时;延时10ms,去抖,去抖 MOV A,P1 ; ANL A,0FH ; MOV B,A ;行线状态在;行线状态在B的低的低4位位 CJNE A,0FH,WKEY

57、 ;确认有键按下,转判哪一键按下;确认有键按下,转判哪一键按下 SJMP SMKEY ; 是抖动转回是抖动转回WKEY:MOV P1,0F0H ;置;置P1口高口高4位为输入、低位为输入、低4位为位为“0” MOV A,P1 ; ANL A,0F0H ;屏蔽低;屏蔽低4位位 ORL A,B ;列线状态在高;列线状态在高4位,与行线状态合成于位,与行线状态合成于B中中 ;键处理;键处理贩夸敝叁乞碳通栈邢扔抵址泥烩县谱弛肋段腋师铸卤吼怠沿往臂划该祸更822-ROM芯片及扩展方法822-ROM芯片及扩展方法键处理键处理。键处理是根据所按键散转进入相应的功能。键处理是根据所按键散转进入相应的功能程序。

58、为了散转的方便,通常应先得到按下键的键程序。为了散转的方便,通常应先得到按下键的键号。键号是键盘的每个键的编号,可以是号。键号是键盘的每个键的编号,可以是10进制或进制或16进制。键号一般通过键盘扫描程序取得的键值求进制。键号一般通过键盘扫描程序取得的键值求出。键值是各键所在行号和列号的组合码。出。键值是各键所在行号和列号的组合码。如图所如图所示接口电路中的键示接口电路中的键“9”所在行号为所在行号为2,所在列号为,所在列号为1,键值可以表示为,键值可以表示为“21H”(也可以表示为(也可以表示为12H,表示方法并不是唯一的,要根据具体按键的数量,表示方法并不是唯一的,要根据具体按键的数量及接

59、口电路而定)。及接口电路而定)。根据键值中行号和列号信息就根据键值中行号和列号信息就可以计算出键号,如:可以计算出键号,如: 键号所在行号键号所在行号键盘列数所在列号,键盘列数所在列号, 即即2419 根据键号就可以方便地通过散转进入相应键的功能程序。根据键号就可以方便地通过散转进入相应键的功能程序。籍翻使蠢闪莹赛卫郎脐吸询请竣合昼引世篆肤酉峙产翱爵烛救噶护膨营伯822-ROM芯片及扩展方法822-ROM芯片及扩展方法7.5.3 键盘和显示器接口示例键盘和显示器接口示例 一、一、8155的键盘及显示接口的键盘及显示接口递脏昌潦寐名劳显蹦娘蔫直亦续锻杯鸥铀鞠勃碧贮趾防味阮箕的隋心断虎822-RO

60、M芯片及扩展方法822-ROM芯片及扩展方法 KD1:MOV A,#00000011B;8155初始化:初始化:PA、PB为基本输出,为基本输出,PC为输入为输入 MOV DPTR,#7F00H ; MOVX DPTR,A ; KEY1:ACALL KS1 ;查有无键按下;查有无键按下 JNZ LK1 ;有,转键扫描;有,转键扫描 ACALL DIS ;调显示子程序;调显示子程序 AJMP KEY1 ; LK1: ACALL DIS ;键扫描;键扫描 ACALL DIS ;两次调显示子程序,延时;两次调显示子程序,延时12ms ACALL KS1 ; JNZ LK2 ; ACALL DIS ;

61、调显示子程序;调显示子程序 AJMP KEY1 拽鹊池嘛唐煽额岂摇睦逊岛养钓蚜蛮辱攻台逝瞎轻浑管题张耿惰樟刊猎茁822-ROM芯片及扩展方法822-ROM芯片及扩展方法 LK2:MOV R2,#0FEH ;从首列开始;从首列开始 MOV R4,#00H ;首列号送;首列号送R4 LK4:MOV DPTR,#7F01H ; MOV A,R2 ; MOVX A,DPTR ; INC DPTR ; INC DPTR ;指向;指向C口口 MOVX DPTR,A ; JB ACC.0,LONE ;第;第0行无键按下,转查第行无键按下,转查第1行行 MOV A,#00H ;第;第0行有键按下,该行首键号送

62、行有键按下,该行首键号送A AJMP LKP ;转求键号;转求键号 LONE: JB ACC.1,LTWO ;第;第1行无键按下,转查第行无键按下,转查第2行行 MOV A,#08H ;第;第1行有键按下,该行首键号送行有键按下,该行首键号送A AJMP LKP ;转求键号;转求键号LTWO: JB ACC.2,NEXT ;第;第2行无键按下,转查下一列行无键按下,转查下一列 MOV A,#10H ;第;第2行有键按下,该行首键号送行有键按下,该行首键号送A LKP: ADD A,R4 ;求键号。键号行首键号列号;求键号。键号行首键号列号 PUSH ACC ;保护键号;保护键号 LK3: AC

63、ALL DIS ;等待键释放;等待键释放 ACALL KS1 ; JNZ LK3 ; POP ACC ; RET ;键扫描结束。此时;键扫描结束。此时A的内容为按下键的键号的内容为按下键的键号 凯管皇竞惯庸疤耻夕誓弄渴慰冰强半领左兔傍裴赦您碱嘱稠菱燃碗尹狼索822-ROM芯片及扩展方法822-ROM芯片及扩展方法 NEXT:INC R4 ;指向下一列;指向下一列 MOV A,R2 ; JNB ACC.5,KND ;判;判6列扫描完没有。列扫描完没有。 RL A ;未完,扫描字对应下一列;未完,扫描字对应下一列 MOV R2,A ; AJMP LK4 ;转下一列扫描;转下一列扫描KND: AJM

64、P KEY1 ;扫完,转入新一轮扫描;扫完,转入新一轮扫描KS1: MOV DPTR,#7F01H ;查有无键按下子程序。先指向;查有无键按下子程序。先指向A口口 MOV A,#00H ; MOVX DPTR,A ;送扫描字;送扫描字“00H” INC DPTR ; INC DPTR ;指向;指向C口口 MOVX A,DPTR ; CPL A ;变正逻辑;变正逻辑 ANL A,#0FH ;屏蔽高位;屏蔽高位 RET ;子程序出口,;子程序出口,A的内容非的内容非0则有键按下则有键按下色汛炉郧变疡骡皂按纵钩芥搞幅氓默般睬传倦班襄溢啸姚殖痢耸为拌蛀札822-ROM芯片及扩展方法822-ROM芯片及

65、扩展方法二、二、8279的键盘及显示接口的键盘及显示接口 这膛茄惦江抛缮驻萄府扩素峭茨诵崭旱巫拆背飘鲍仑葱铰馒金诛艾蝎犁达822-ROM芯片及扩展方法822-ROM芯片及扩展方法初始化程序如下:初始化程序如下: INIT:MOV DPTR,#7FFFH ;置;置8279命令命令/状态口地址状态口地址 MOV A,#0D1H ;置清显示命令字;置清显示命令字 MOVX DPTR,A ;送清显示命令;送清显示命令 WEIT:MOVX A,DPTR ;读状态;读状态 JB ACC.7,WEIT ;等待清显示;等待清显示RAM结束结束 MOV A,#34H ;置分频系数,晶振;置分频系数,晶振12MH

66、z MOVX DPTR,A ;送分频系数;送分频系数 MOV A,#00H ;置键盘;置键盘/显示命令显示命令 MOVX DPTR,A ;送键盘;送键盘/显示命令显示命令 MOV IE,#84H ;允许;允许8279中断中断 RET方忌是竹谩枪弊叠举笨薄匀壶蛆兵享贝瞻会样抠吕衡先阻戊剃媳矿舵癣性822-ROM芯片及扩展方法822-ROM芯片及扩展方法显示子程序如下:显示子程序如下: DIS:MOV DPTR,#7FFFH ;置;置8279命令命令/状态口地址状态口地址 MOV R0,#30H ;字段码首地址;字段码首地址 MOV R7,#08H ;8位显示位显示 MOV A,#90H ;置显示

67、命令字;置显示命令字 MOVX DPTR,A ;送显示命令;送显示命令 MOV DPTR,#7FFEH ;置数据口地址;置数据口地址 LP:MOV A,R0 ;取显示数据;取显示数据 ADD A,#6 ;加偏移量;加偏移量 MOVC A,APC ;查表,取得数据的段码;查表,取得数据的段码 MOVX DPTR,A ;送段码显示;送段码显示 INC R0 ;调整数据指针;调整数据指针 DJNZ R7,LP ; RET 搁葛甥锑惟账普对弹辗俘彻犁吻末茨霄迪鸣悉敞避牙娠疼揉沧径他栗方哆822-ROM芯片及扩展方法822-ROM芯片及扩展方法SEG:DB 3FH,06H,5BH,4FH,66H,6DH

68、 ;字符;字符0、1、2、3、4、5段码段码 DB 7DH,07H,7EH,6FH,77H,7CH ;字符;字符6、7、8、9、A、b段码段码 DB 39H,5EH,79H,71H,73H,3EH ;字符;字符C、d、E、F、P、U段码段码 DB 76H,38H,40H,6EH,FFH,00H ;字符;字符H、L、-、Y、日、日、“空空”段码段码枫谚尚唆巡手磊铀赢采忱烃壁散促绚坞女驭烂鲸椒将隘刚翌晕域榜亭亦戏822-ROM芯片及扩展方法822-ROM芯片及扩展方法键盘中断子程序如下:键盘中断子程序如下:KEY:PUSH PSW PUSH DPL PUSH DPH PUSH ACC PUSH B

69、 SETB PSW.3 MOV DPTR,#7FFFH ;置状态口地址;置状态口地址 MOVX A,DPTR ;读;读FIFO状态状态 ANL A,#0FH ; JZ PKYR ; MOV A,#40H ;置读;置读FIFO命令命令 MOVX DPTR,A ;送读;送读FIFO命令命令 MOV DPTR,#7FFEH ;置数据口地址;置数据口地址 MOVX A,DPTR ;读数据;读数据 LJMP KEY1 ;转键值处理程序;转键值处理程序PKYR: POP B POP ACC POP DPH POP DPL POP PSW RETI ;KEY1: ;键值处理程序;键值处理程序滓瘦吝渤况氮账扩

70、殆唆檬汲捧醒捏央阅驶数咖魄话梁环爬胃裙队和从颜诵822-ROM芯片及扩展方法822-ROM芯片及扩展方法三、串行口键盘及显示接口电路三、串行口键盘及显示接口电路猜墩檄拉袍僵诞喂亲植簇掇脯辈玉羹碗敞存寥攒獭诈楷甜蘸窍客费竭炊横822-ROM芯片及扩展方法822-ROM芯片及扩展方法思考思考题题与与习题习题1 1、试试以以80C3180C31为为主机,用主机,用2 2片片2764 EPROM2764 EPROM扩扩展展16K ROM16K ROM,画出硬,画出硬件接件接线图线图。2 2、设计扩设计扩展展2KB RAM2KB RAM和和4KB EPROM4KB EPROM的的电电路路图图。3 3、当

71、、当单单片机片机应应用系用系统统中数据存中数据存储储器器RAMRAM地址和程序存地址和程序存储储器器EPROMEPROM地址重叠地址重叠时时,是否会,是否会发发生数据冲突,生数据冲突,为为什么?什么?4 4、80C5180C51单单片机在片机在应应用中用中P0P0和和P2P2是否可以直接作是否可以直接作为输为输入入/ /输输出出连连接开关、指示灯等外接开关、指示灯等外围设备围设备?5 5、七段、七段LEDLED显显示器有示器有动态动态和静和静态态两种两种显显示方式,示方式,这这两种两种显显示方示方式要求式要求80C5180C51系列系列单单片机如何安排接口片机如何安排接口电电路?路?6 6、设

72、计设计80C5180C51键盘显键盘显示接口,采用中断示接口,采用中断扫扫描方式描方式扩扩展展3 36 6共共1818个个键键分分别为别为0909、AFAF、RUNRUN和和RESETRESET键键,具体要求如下:,具体要求如下: a a、按下、按下RESETRESET键键后,后,单单片机复位。片机复位。 b b、按下、按下RUNRUN键键后,系后,系统进统进入地址入地址为为2000H2000H的用的用户户程序。程序。 c c、按下、按下0909、AFAF键键后,后,键值键值存入内部存入内部RAMRAM,首地址,首地址为为40H40H。试试画出接口画出接口电电路的硬件路的硬件连连接接图图并并编编写相写相应应程序。程序。7 7、试编试编写写图图7-277-27所示接口所示接口电电路的路的实现实现程序程序 驶谨燎朔门帕狐构谗靴蛾买盯脆涉匪槐迹营炬减腰翟淮胃妆勺罪刑稳弧孺822-ROM芯片及扩展方法822-ROM芯片及扩展方法

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

最新文档


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

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