《存储器扩展IO扩展[第5章].ppt》由会员分享,可在线阅读,更多相关《存储器扩展IO扩展[第5章].ppt(97页珍藏版)》请在三一办公上搜索。
1、5.1 半导体存储器的扩展5.2 MCS-51并行I/O接口的扩展5.3 LED显示器的设计5.4 按键和键盘的设计5.5存储器扩展、动态显示和键盘的实验,第5章 半导体存储器及并行I/O接口扩展,32,5.1.1 半导体存储器基础内存:磁芯存储器 半导体存储器外存:磁表面存储器 光盘存储器磁鼓、磁带和磁盘1半导体存储器的分类和作用按工艺:双极型 MOS型(场效应管)按功能:RAM(SRAM、DRAM、SDRAM)ROM(掩膜、PROM、EPROM、FLASH)近年来:易失性存储器 非易失性存储器,5.1 半导体存储器的扩展,双极型晶体管是一种电流控制器件,电子和空穴同时参与导电。同场效应晶体
2、管相比,双极型晶体管开关速度快,但输入阻抗小,功耗大。双极型晶体管体积小、重量轻、耗电少、寿命长、可靠性高,已广泛用于广播、电视、通信、雷达、计算机、自控装置、电子仪器、家用电器等领域,起放大、振荡、开关等作用。,(1)RAM 数据随时读写,读则取之不尽、写则盖旧换新。按存取方式分:静态RAM(SRAM)和动态RAM(DRAM)。,(2)ROM存储器 信息掉电不丢失。按编程方式分为三类:掩模ROM:工厂批量写入PROM:用户写入,但只有一次。EPROM:可被反复擦写的PROM,按擦除方法又分为:a、紫外光擦洗 UVEPROM;b、电擦洗 EEPROM、(在线改写,字节擦或块擦);闪速存储器:存
3、储容量大、擦除和编程速度快。,(3)新型存储器:OTP ROM:是一种新型PROM,已经过测试性编程。FRAM:非易失性铁电存储器,属未来型。具有DRAM的高集成度和低成本的优点,又有SRAM 的存取速度以及EPROM的非易失性。但其存取周期是有限的,向无限次发展。nvSRAM:新型非易失性静态读写存储器,由美国96年推出,可靠性高,号称“LOW COST”新型动态存储器:专门用于大容量的系统机和工作站。,(1)存储容量存储器能够存储的信息总量.存储容量=字数字长1K=210=10241M=220=1024K1G=230=1024M1T=240=1024G,2.半导体存储器的技术指标,(2)最
4、大存取时间存储器从接收到存储单元的地址开始,到读出或写入数据为止所需要的时间称为存取周期,该时间的上限值称为最大存取时间(3)存储器功耗存储器功耗是指它在正常工作时所消耗的电功率.该功率由“维持功耗”和“操作功耗”组成(4)可靠性和工作寿命 抗干扰能力强、寿命也较长(5)集成度指在一块数平方毫米芯片上能够集成的晶体管数目,有时也以每块芯片上集成的基本存储电路个数来表征,故常以位/片表示,3.半导体存储器的基本结构,半导体存储器由存储阵列、地址译码器、控制电路组成(1)单译码编址存储器,0读,1写,片选,读写控制,(2)双译码编址存储器,单译码编址存储器的基本结构与双译码编址存储器结构类似,区别
5、在于:地址译码器的结构不同单译码编址存储器用于小容量存储器双译码编址存储器用于大容量存储器,5.1.2 只读存储器ROM,只读存储器具有非易失性和非易挥发性,又称固定存储器或永久存储器,常用于程序存储。,1.ROM的工作原理,(1)掩模ROM,读原理:由地址线先选中相应的字线(为高电平),掩模ROM存储“0”或“1”是由存储单元中各位是否有MOS管决定(有为0,无为1)。其信息在制造芯片时写入。,(2)PROM存储器原理,熔丝通“1”,(3)EPROM的工作原理,UVEPROM 紫外线擦除,若浮置栅内无电荷,表示管内存1,EEPROM电擦除,1987年首次出现,是UVEPROM和EEPROM结
6、合的产物存储容量不断发展,制造工艺不断提高。按接口种类划分:标准的并行接口闪存:按三总线连接NAND(与非)型闪存:引脚分时复用串行接口的闪存:通过一个串行数据输入和一个串行数据输出来和CPU接口,(4)闪速存储器,2.典型ROM芯片介绍,(1)UVEPROMIntel 27XX,(2)2764 的引脚功能,(3)2764的工作方式,(2)EEPROM,Intel 28,(3)闪速存储器,并行Flash芯片,串行Flash芯片:,随机读写,易失性,静态容量小,不用刷新,依靠触发器存储信息;动态容量大,要刷新,依靠存储电容存储信息。,5.1.3 随机存取存储器RAM,(1)静态RAM的工作原理,
7、1.RAM的工作原理,T2导通、T1截止时,Q=1的状态称为1状态,(2)动态RAM的工作原理,C1为极间电容,也称存储电容。Q2为列选通管。C2称为分布电容。,C1上有电荷表示存1,C1上无电荷表示存0,需刷新,2.典型RAM芯片介绍,(1)静态RAM,Intel6264(静态RAM),内部结构,引脚的功能,6264的引脚逻辑功能图,6264的工作方式,(1)确定类型、容量,类型:RAM、ROM等,1、外扩存储器的选择原则,容量:根据系统基本要求确定,(2)选择存储器的读写速度应和CPU的工作速度相匹配,访存时间:处理器向外存发出地址码和读写信号,到从P0口选通读出数据或保持写入数据所需要的
8、时间;一般大于2时钟周期,存储器最大存取时间:,MCS-51的访存时间必须大于所用外部存储器的最大存取时间,5.1.4 MCS-51和外部存储器的连接,P177,并行连接,需要RAM:8K8若用2128(2K8)需4片若用2116(16K1)需8片扩展的容量为:16K8,片内ROM(8031无片内ROM)MOVC 片外ROMMOVC片内RAMMOV片外RAMMOVX,三总线原则(1)地址总线的连接地址总线选择某一存储器芯片及芯片内的某一存储单元P0:低8位地址线由于P0口具有双重复用的功能,还用来传送数据需外加一个8位地址锁存器目前常用的锁存器是74LS 373和Intel 8282,2、存储
9、器与CPU的连接总则,地址锁存器 74LS 373和Intel 8282的逻辑图,G(或STB):锁存控制OE:三态门控制端,ALE,D为输入Q为输出,ALE,ALE,ALE低电平锁存,P2:高8位地址总线。在实际应用中根据扩展存储器的容量需要确定所用的根数。如:扩展4KB的存储器则只需用P2口中的低4位口线,(2)数据总线的连接数据总线实现CPU与存储器的双向数据传送 将P0口与存储器的8根数据线依次相连即可(3)控制总线的连接向存储器发出存储器选择及读/写等控制信号根据选择的存储器类型使用不同的控制信号,存储器与CPU的连接,2KB 8KB,需要4片,在某一时刻,只能选中4片芯片中的一片工
10、作,即所谓的片选。,其实质是按不同的地址来选中不同的芯片,线选法,译码法,全译码,部分译码,(4)地址译码与地址范围分配,单片机一般采用地址线实现片选控制,线选法,即将CPU的低位地址线与芯片的同名地址线相连,而将CPU余下的高位地址线(或经反相器)分别接到各存储器芯片的片选端来区别各个芯片的地址的方法。,一个8051系统扩展了一片8KB的存储器,选用P2.7(A15)作为片选,P2.6(A14)、P2.5(A13)悬空,A15 A14 A13 A12 A11 A10 A9 A8 A7 A6 A5 A4 A3 A2 A1 A00 0 0 0 0 0 0 0 0 0 0 0 0 0 最低单元地址
11、0 1 1 1 1 1 1 1 1 1 1 1 1 1 最高单元地址,0000H1FFFH、2000H3FFFH、4000H5FFFH、6000H7FFFH,重叠地址范围,基本地址范围(悬空线清零时),译码法,指CPU的地址线经过地址译码器输出后与存储器芯片的片选信号相连的方法,三八译码器(74LS138)二四译码器(74LS139),三八译码器(74LS138),双二四译码器(74LS139),扩展8KB存储器系统高3根地址线,全译码方法,3.存储器与CPU的连接方法,(1)片外ROM的扩展,片外ROM 线选法,基本地址范围悬空地址线取0的地址范围0000 0000 0000 0000000
12、1 1111 1111 1111,重叠地址范围0000 0000 0000 00000001 1111 1111 11110100 0000 0000 00000101 1111 1111 1111 1000 0000 0000 00001001 1111 1111 11111100 0000 0000 00001101 1111 1111 1111,(2)片外RAM的扩展,2000H3FFFH,片外RAM 译码法,0010 0000 0000 0000 0011 1111 1111 1111,(3)多片存储器芯片的扩展,00 0000 0000 000000 0111 1111 1111,R
13、OM,RAM,RAM,RAM,2KB,Intel 27系列EPROM(169页)加电编程、紫外线擦除2732、2764、27128等27后面的数字代表kb,因此除以8即得KBRAM 62系列(175页),MCS-51单片机系统中,扩展I/O是与外部数据存储器RAM统一编址的,占用外部数据存储器的单元地址,使用MOVX指令进行读写扩展ROM与片内ROM是独立编址的I/O数据交换有无条件方式、查询方式、中断方式,5.2 MCS-51并行I/O接口的扩展,缘起:I/O接口不够用,P0、P2、P3都有他用18155的内部结构和引脚功能可编程多功能并行I/O接口芯片并行I/O接口便于数据的交换通过编程设
14、置工作方式芯片内部具有RAM单元可用资源:I/O口PA口(8位)PB口(8位)PC口(6位)T定时计数器(14位 减1)RAM(256个字节)8位地址锁存器(可以直接连到P0口),并行I/O接口芯片8155,40引脚;+5V电源供电,AD0AD7三态地址/数据线低8位地址或8位数据可直接连P0口控制总线CE片选IO/MI/O接口/存储器选择ALE地址锁存信号锁存AD0AD7上的地址RD读允许信号WR写允许信号RESET复位信号,高电平有效T/IN定时器输入定时器所需时钟信号由此输入T/OUT定时器输出14位计数位器减到0时根据工作方式输出相应脉冲,I/O总线PA0PA7通用I/O线传送A口上的
15、外设数据PB0PB7通用I/O线传送B口上的外设数据PC0PC5通用I/O方式下,传送I/O数据选通I/O方式下,传送命令/状态信息电源线VCC+5V电源输入线VSS接地线,40条引脚分为输入边(由CPU来)输出端(到外设去),PA、PB、PC在8155内部分别对应有相应寄存器8155内部有多个寄存器,属于I/O的寄存器有7个命令/状态寄存器、A口寄存器、B口寄存器、C口寄存器、计数器低8位寄存器、高8位寄存器IO/M为1时,8155的AD0AD7输入的是I/O地址,I/O地址分配如下:,28155的命令/状态寄存器及I/O接口的工作方式,6位是计数器2位是方式位,6位是计数器2位是方式位,命
16、令寄存器控制8155的工作方式,状态字格式 8155工作的状态,A口、B口都只有输入状态或输出状态C口可以工作在输入、输出方式C口还可作为A口的控制端口、A口和B口的控制端口为A口或B口提供对外的联络信号A口或B口接外部设备的数据线,作为输入/输出口C口在不同方式下各位的功能:,A口或B口作为输入口时:STB是外部设备导入的选通信号STB生效后数据由外设输入8155,然后BF信号置1,表示8155缓冲器已满在STB的上升沿检测到缓冲器满,而且中断允许的状态下INTR中断输出高电平(有效),从而可以向CPU申请中断,在中断服务程序中读取相应数据,并软件清除BF为低电平,通知输入设备可以输入下一数
17、据A口或B口作为输出口时:8155收到要输出到外设的数据后,将触发器满的相应位置1置BF位高电平,通知外设输出数据已经到达A口或B口输出设备收到信号后,从数据线接收输出数据,并使STB线清0以此通知8155外设已收到数据8155在STB的上升沿检测到触发器满且允许中断后,使INTR置1,向CPU提出中断请求,从而进行下一个数据的输出。,38155内部定时器/计数器,14位减法计数器有4种工作方式,由定时器/计数器长度字高8位中的M2、M1、M0决定对T/IN线的输入脉冲计数,每次减1计满归零时在T/OUT线上输出矩形波或脉冲波,使用定时器/计数器前,要先向定时器/计数器高字节送入数值,再向低字
18、节送入数值,最后再将命令字写入命令寄存器方式0在计数的后半周期内使T/OUT上输出低电平矩形波,这个矩形波的周期与定时器长度字初值有关如果定时器/计数器长度字为偶数,T/OUT上的矩形波是对称的如果定时器/计数器长度字为奇数,T/OUT上的矩形波高电平持续时间比低电平多一个计数脉冲时间方式1减1计数到0时,自动装入定时器/计数器长度字初值T/OUT上输出连续矩形波矩形波的周期也与定时器长度字初值有关方式2减1计数到0时,在T/OUT上输出一个单脉冲方式3减1计数到0时,自动装入定时器/计数器长度字初值T/OUT上输出一串重复脉冲重复脉冲的频率和定时器长度字初值有关,可以利用定时器/计数器的特性
19、对计数脉冲进行指定分频,内部256单元的静态RAMIO/M=0时,8155的AD0AD7输入的是RAM地址;IO/M=1时,8155的AD0AD7输入的是IO地址在CE=0且IO/M=0时,CPU可以对任意一个RAM单元进行读/写,读/写控制信号分别是RD和WR;使用同普通静态RAM5采用8155扩展并行I/O接口同样遵循三总线相连的原则,可采取线选法或译码法连接8155内部有地址锁存器在CE=0且IO/M=1时,需要先对I/O初始化,通过命令寄存器设置工作方式等信息,48155内部的RAM,0 0 0 0 0 0 0 0 0 0 RAM最低单元地址0 0 1 1 1 1 1 1 1 1 RA
20、M最高单元地址0 1 0 0 0 命令寄存器地址0 1 0 0 1 A口地址0 1 0 1 0 B口地址0 1 0 1 1 C口地址0 1 1 0 0 计数器低8位0 1 1 0 1 计数器高8位,线选法,【例5-1】编写程序,将图5-28中8155内部40H单元中的X送到A口输出,ORG 0000HMOV DPTR,#0100H;命令/状态口地址送入DPTRMOV A,#01H;命令字送入A(A口为输出)MOVX DPTR,A;将命令字装入命令口MOV DPTR,#0040H;将RAM地址送入DPTRMOVX A,DPTR;X送入AMOV DPTR,#0101H;指向A口MOVX DPTR,
21、A;X送8155的A口输出SJMP$END,(2)译码连接法,001 0 0000 0000 001 0 1111 1111,RAM地址,命令/状态寄存器的基本地址为2100H。A口的基本地址为2101H,B口的基本地址为2102H,例5-2编写程序,设置8155的A口为输出口,B口为输入口。程序每隔一段时间读取一次B口的信号状态,并将其输出到A口完成某项控制(接口电路如图5-29所示),A口输出、B口输入、C口不用、定时器/计数器不用命令寄存器内的值为0000 0001,ORG 0000HSTART:MOV DPTR,#2100H;命令寄存器地址送入 MOV A,#01H;命令寄存器内容送入
22、A MOVX DPTR,A;写入命令寄存器 MOV DPTR,#2102H;B口地址送入DPTR MOVX A,DPTR;读入B口内容 DEC DPTR;A口地址送入DPTR MOVX DPTR,A;A口输出 ACALL DELAY SJMP STARTDELAY:(略);延时子程序 END,A口输出、B口输入,单片机系统中常用的显示器有:发光二极管LED(Light Emitting Diode)显示器、液晶LCD(Liquid Crystal Display)显示器、CRT显示器等。,5.3 LED显示器的设计,LED数码管、LCD显示器有两种显示结构:段显示(7段、米字型等)和点阵显示(
23、58、88点阵等),5.3.1 LED数码显示管显示原理八段数码管 分为共阴极和共阳极两种。,段选线,位选线,字型码表(共阴极/共阳极P192),按h、g、f、e、d、c、b、a顺序排列后的十六进制编码(0对应低电平),常称为字型码或段选码,静态显示、动态显示(扫描显示)硬件译码节省CPU资源,但是电路复杂软件译码查表法,硬件、接口简单,但是占用CPU资源多1LED静态显示接口电路各LED管能稳定地同时显示各自字形用硬件译码,负载能力强硬件译码静态显示接口电路笔段(字形)代码锁存器、笔段译码器等组成输入BCD码,输出七段显示字形码MC14558、MC14547、MC14513、MC14495,
24、5.3.2 MCS-51对LED的控制,MC14558MC14547MC14513MC14495等,两种获得字形码的方法:,硬件译码软件译码,锁存器地址译码器笔段ROM阵列驱动电路,大于10指示,等于15 高电平,低输入高锁存,-+,【例5-3】要求将存放在8031单片机内部RAM中30H及31H单元中的4位十六进制数在图5-32所示的电路中从左到右显示出来,试编写相应的程序。,SDELAY:MOV A,30H ANL A,#0F0H;截取30H单元中高位BCD码 MOV P1,A;在1#位置显示30H单元中高位 MOV A,30H SWAP A ANL A,#0F0H INC A;低4位加1
25、,用以指向2#MC14495芯片 MOV P1,A;在2#位置显示30H单元中低位 MOV A,31H ANL A,#0F0H ADD A,#02H;用以指向3#MC14495芯片 MOV P1,A;在3#位置显示31H单元中高位 MOV A,31H SWAP A ANL A,#0F0H ADD A,#03H;用以指向4#MC14495芯片 MOV P1,A;在4#位置显示31H单元中低位 RET,为减少硬件开销,提高系统可靠性并降低成本,通常采用动态扫描的方法,功耗低、负载低2.动态显示软件扫描各LED轮流地一遍一遍显示各自的字符,由于视觉暂留作用,看到的似乎是在同时显示不同字形,8000H
26、 命令/状态口 8001H A口8002H B口(字形口)8003H C口(字位口),图 5-33,例5-4,设5CH单元存放要显示的内容12H,5BH单元存放34H,5AH单元存放56HORG 0000H AJMP MAIN ORG 0100HMAIN:MOV SP,#60H MOV DPTR,#8000H;命令口地址送入DPTR MOV A,#0EH;方式控制字送入A MOVX DPTR,A;方式字送入8155命令口,假设显示内容存放在以5AH为首地址的3个连续单元中显示缓冲区的首地址为79H,请根据图5-33(上页)编写一段程序该程序执行后,数码管显示“6 5 4 3 2 1”,MOV
27、5AH,#56H;将显示内容依次存放 MOV 5BH,#34H MOV 5CH,#12H ACALL FB;将内容拆分,偏移量送显示缓冲区LOOP:ACALL DIR;调用显示一遍的子程序 AJMP LOOP;循环,形成动态显示FB:MOV R0,#5CH;显示内容的最高字节地址送入R0 MOV R1,#79H;显示缓冲区起始地址送入R1 MOV R3,#03H;显示内容存放字节的个数送入R3LP2:MOV A,R0;取出要显示字节的内容 MOV R2,A;暂存 SWAP A;内容的高、低4位交换 ANL A,#0FH;保留原始的高4位 MOV R1,A;形成字形码偏移量送入显示缓冲区 INC
28、 R1;指向显示缓冲区的下一个单元 MOV A,R2;取出要显示字节的内容 ANL A,#0FH;保留低4位,准备数据,显示一位,MOV R1,A;形成字形码偏移量送显示缓冲区 INC R1;指向显示缓冲区的下一个单元 DEC R0;指向下一个显示内容单元 5BH DJNZ R3,LP2;3字节没处理完,继续循环处理 RETDIR:MOV R0,#79H;显示缓冲区首地址送入R0 MOV R2,#01H;字位控制初值送入R2 MOV A,R2 LD0:MOV DPTR,#8003H;C口地址送入DPTR MOVX DPTR,A;字位控制初值送入C口 MOV DPTR,#8002H;B口地址送入
29、DPTR MOV A,R0;待显示字符偏移量送入A ADD A,#0FH;对A进行地址修正 MOVC A,A+PC;查字形码表DIR1:MOVX DPTR,A;字形码送入B口 MOV R7,#02H ACALL DL;延时1ms,INC R0;修正显示缓冲区指针 MOV A,R2;字位码送入A JB ACC.5,LD1;若显示完6次则返回 左移5次 RL A;字位码左移一位 MOV R2,A;送回R2 AJMP LD0;显示下一个数码LD1:RETDSEG0:DB 3FH,06H,5BH,4FH,66H,6DHDSEG1:DB 7DH,07H,7FH,6FH,77H,7CHDSEG2:DB 3
30、9H,5EH,79H,71H,73H,21HDSEG3:DB 31H,6EH,40H,3EH,00H,00HDL:MOV R6,#0FFH;延时子程序DL6:DJNZ R6,DL6 DJNZ R7,DL RETEND,76543210,1、键盘的分类编码键盘硬件电路支持(检测按键、去抖动、生成键值)成本高、电路复杂节省CPU资源、速度快非编码键盘软件实现(检测按键、去抖动、生成键值)独立式行列式触点式按键软件去抖一般1020ms,与机械结构有关系非触点式按键电容式、霍尔式、触摸式 等,5.4 按键和键盘的设计,按键消抖的措施:硬件消抖软件消抖,触点式和非触点式,5.4.1 独立式非编码键盘的设
31、计,均需占用CPU或其扩展的一条I/O输入数据线例5-5按照图5-36编制相应的程序,实现按键的扫描,若有键按下则将对应的键号(07)送入累加器A,并根据A中的键号转去执行相应的键处理程序PA0PA7,键处理程序流程,ORG 0000H MOV DPTR,#4000H;命令口地址 MOV A,#00000000B;设置A口为输入方式 MOVX DPTR,A;将命令字写入命令口 ACALL KEY;调键盘扫描程序 CJNE R4,#0FFH,PROKEY;有键转PROKEY AJMP NOKEY;无键转NOKEYPROKEY:MOV DPTR,#KEYTAB;表起始地址送入 CLR C;清除进位
32、标志 RLC A;带进位左移;A的内容乘以2送入A JMP A+DPTR;(PC)(A)+(DPTR)KEYTAB:AJMP K0;两字节指令 AJMP K1 AJMP K7NOKEY:AJMP LOOPK0:,K1:K7:LOOP:SJMP LOOPORG 0200HKEY:MOV DPTR,#4001H;A口地址 MOVX A,DPTR;读入A口状态 XRL A,#0FFH;异或,取反值 JZ RETURN;无键转RETURN ACALL DEL;有键则延时消抖 MOVX A,DPTR;再读入口状态 MOV R3,A;按键原值 XRL A,#0FFH;按键取反 JZ RETURN;无键转R
33、ETURN CJNE R3,#0FEH,NEXT1;不是0#转NEXT1 MOV R4,#00H;将键号送入R4 SJMP COM;转到COM处执行NEXT1:CJNE R3,#0FDH,NEXT2;不是1#键转NEXT2,A1010 B1011 C1100 D1101 E1110 F1111,MOV R4,#01H;将键号送入R4 SJMP COM;转到COM处执行NEXT2:CJNE NEXT8:CJNE R3,#7FH,RETURN;不是7#转RETURN MOV R4,#07H;将键号送入R4COM:MOVX A,DPTR;读入A口状态,等释放 XRL A,#0FFH;键值取反 JNZ
34、 COM;等待,直到按键释放 MOV A,R4;将R4内容送入A SJMP RETURN1;返回RETURN:MOV R4,#0FFH;将FFH送入R4RETURN1:RETDEL:MOV R5,#18H;延时12msDEL0:MOV R6,#0FFHDEL1:DJNZ R6,DEL1 DJNZ R5,DEL0 RET,行线列线键盘开关矩阵按键处于行线和列线的交叉处,用于接通行线和列线节省I/O口线可以是扩充的I/O口正逻辑、负逻辑(高电平有效、低电平有效)先扫描(行)判断是否有键按下,再逐检查具体按键列线输出00H,读入行线,若行线为全1,无按键输入;若行线不全为1,则有键输入列扫描法逐列给
35、0值扫描,可判断列号和行号,从而得出按键位置反转法,5.4.2 行列式非编码键盘的设计,使被扫描的列为低电平,其他所有的列均为高电平,然后检测各行线的状态若各行线都为高电平,则被按下的键不在此列,继续扫描下一列;若行线不全为高电平,则被按下的键在此列,而且是在与低电平行线相交的交点上,记录此时的列值和该行的首键号,即可知道被按下键的键号(被按键的键号=该键所处行的首键号+列值),然后再利用查表指令即可求得该按键的键值例5-6 根据图5-38编制按键扫描子程序,若无键按下,则使(A)=FFH;若有键按下,则通过列扫描获得被按键的键值(图中标识的是各键的键号),1列扫描法,检测是否按键,A1010 B1011 C1100D1101 E1110 F1111,准备列值,扫描行值,地址,地址,键值,先由行线输出全0信号,接着由列线读入表示按键状态的代码当有键被按下时,则相应的列线状态一定为0然后,将列线读入的代码由列线输出,然后读行线的状态,将先后两次读入的表示按键状态的代码组合,即为被按键的键值,2反转法,保持被按下按键所在的列为0,本章结束,