版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
单片机的人机交互与扩展技术单片机原理及接口技术单片机原理及接口技术目录6.1单片机系统的人机交互技术6.2存储器的扩展技术6.3系统扩展技术单片机原理及接口技术概述人机交互是指操作人员与计算机之间进行的现场或远程的信息交换与联系。用于人机交互的设备称为人机接口,这些设备主要有键盘、显示器和打印机等。一般的计算机控制系统必须要有人机交互功能,以便操作人员可以随时输入数据传递生产命令,并通过显示和打印功能及时掌握生产情况。对于简单的应用场合,由于单片机本身就是一个最小的应用系统,因此能直接满足实际应用所要求的功能,充分发挥单片机硬件结构紧凑、设计简单、成本低的优点。当设计一些较为复杂的测控系统时,单片机自身的功能往往不能够满足应用的需要,此时可利用其强大的外部扩展功能,扩展各种外围电路以补充片内资源的不足,从而满足特定应用的要求。单片机原理及接口技术6.1单片机系统的人机交互技术6.1.1显示器接口技术
6.1.2键盘接口技术
6.1.3串行通信接口技术
单片机原理及接口技术6.1.1显示器接口技术
在单片机应用系统中,为了便于观察和监视系统的运行情况,经常需要用显示器显示输入信息、中间信息、运行状态及运行结果等数据。目前常用的显示器件有LED(发光二极管显示器)和LCD(液晶显示器)两种。1.LED显示接口技术LED显示器主要是指由发光二极管组成的数码管显示器或LED点阵显示模块。图6-1是8段LED数码显示管的结构示意图。根据公共端的接法不同,LED数码管可分为共阴极和共阳极二种类型。图6-1LED数码管结构图(a)共阳极(b)共阴极(c)LED外形结构单片机原理及接口技术(1)静态显示方式
所谓静态显示方式,是指在工作过程中加到每一块LED数码管上的信号始终同时存在,各显示模块相互独立,而且各位的显示字符一旦确定,加在每一块数码管上的信号维持不变,直到显示另一个字符为止。如图6-2即为一个四位LED静态显示电路。从图中可知,对每一位LED数码管,都必须有与之对应的锁存器以保证在一次显示过程中加在其上的信号保持不变。因此,采用静态显示方式,需占用较多的硬件资源,但它占用机时少、编程简单、显示可靠,因而在工业过程控制中得到了广泛的应用。图6-2四位LED静态显示电路单片机原理及接口技术MC14495是由4位锁存器、译码器和笔段ROM阵列以及带有限流电阻的驱动电路(输出电流为10mA)组成。它可与LED数码管直接相连,不用再外接限流电阻。图6-3为利用MCS-51单片机并行I/O口设计的三位静态LED数码显示接口电路。图中,A、B、C、D为二进制码(或BCD码)输入端;LE为锁存控制端,当LE为低电平时可以输入数据,当LE为高电平时锁存输入数据;a~g为7段代码输出。图6-3三位静态LED数码显示接口电路单片机原理及接口技术(2)动态显示方式在动态显示方式中,每个LED数码管都对应一根位选线,所有LED数码管共用段码数据线。当CPU要显示某个字符时,先将该字符的段码送到由位选线选通的对应显示块上,从而点亮该显示块,显示出待显字符;当要在另一位数码管显示另一个字符时,CPU将新的段码送到数据线上,并选通对应的位选线,又可显示出另一个字符。这样,CPU分时选通各位LED数码管进行显示,利用人眼的视觉残留现象及数码管的余辉,在总体的视觉效果上,各位LED数码管都能连续而稳定地显示不同的字符。单片机原理及接口技术动态显示程序控制显示的方法一般采用定时20ms扫描一次,在中断服务程序中,将所有数码管显示一次。虽然程序简单,但CPU的负担较重,一次循环显示的过程,需要几个毫秒,在这段时间里CPU不能做其它事情,否则影响LED亮度的一致性。在一些实时性要求较高的控制系统中,可以采用1ms中断显示的方法控制显示,即用单片机内部定时器每隔1ms产生一次中断。在定时中断服务程序中更新一位显示,由于中断显示程序不需要延时,更新一位显示只需要几十微秒,对主程序的影响较小。单片机原理及接口技术例:用定时中断的方式编写控制4位显示器动态显示的程序。单片机原理及接口技术程序如下:#include"reg51.h"charcodedispdata[]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F};/*数字0-9对应的段选码*/chardis_data[]={2,4,6,8};voiddisp(unsignedcharch0) /*显示函数*/{ staticcharch=0x01; P1=ch; P2=dispdata[dis_data[ch0]]; ch=ch<<1; if(ch==0x10)ch=0x01;}单片机原理及接口技术voidtime(void)interrupt1/*T0中断服务程序入口,定时1ms*/{ staticunsignedcharch1=0;TH0=-1000/256;TL0=-1000%256;disp(ch1);ch1++;if(ch1==0x04)ch1=0; }voidmain(void){ TMOD=0x01; /*T0为16位定时工作方式*/TH0=-1000/256;/*预置计数初值*/TL0=-1000%256;
EA=1; /*CPU中断开放*/ET0=1; /*T/C0中断开放*/TR0=1; /*启动T/C0开始定时*/while(1); /*等待中断*/}单片机原理及接口技术2.LCD显示接口技术LCD(LiquidCrystalDisplay)液晶显示是一种新型的显示技术,它是利用液晶材料的电光效应(如加电引起光学特性变化)的显示器。液晶本身不发光,靠电信号控制环境光在显示部位反射(或透射)而显示。液晶显示具有很多独到的优异特性,比如低压、微功耗、平板型结构、被动型显示、易于彩色化、长寿命等,已经越来越多地应用到各个领域,从智能化仪器仪表、计算机到家用电器都可以看到液晶显示的身影。液晶显示器通常把驱动电路集成在一起,形成液晶显示模块。用户可以不必了解驱动器与显示器是如何连接的,使用时只需按照一定的要求向显示模块发送命令和写入数据即可。单片机原理及接口技术典型芯片OCMJ(奥可拉)中文液晶显示模块
OCMJ内含16*16点阵的国标一、二级简体汉字和8*8点阵及8*16点阵的ASCII字符,用户输入GB2312区位码或ASCII码即可实现文本显示。
OCMJ可实现一般的点阵图形液晶显示功能,提供有位点阵和字节点阵两种图形显示方式,用户可在指定的屏幕位置上以点为单位或以字节为单位(横向)进行图形显示操作。中文液晶显示模块可以实现汉字、ASCII码、点阵图形和变化曲线的同屏显示,并可通过字节点阵图形方式造字。标准用户硬件接口采用REQ和BUSY握手协议,简单可靠。提供10个用户接口命令代码,编程很方便。单片机原理及接口技术OCMJ中文显示模块引脚说明单片机原理及接口技术OCMJ(4×8)中文显示模块命令格式3F单片机原理及接口技术
典型应用(OCMJ4×8)如图6-8为MCS-51单片机与OCMJ4×8中文显示模块的接口电路。图中单片机的P1口接OCMJ模块的8根数据线用于数据的传送,P0.0、P0.1引脚接OCMJ模块的BUSY和REQ作为握手联络信号。图6-8MCS-51单片机与OCMJ4×8中文显示模块接口电路单片机原理及接口技术例6.2编写C51程序显示“啊”和“A”#include"reg51.h"#include"intrins.h"sbitLCD_REQ=P0^0;sbitLCD_BUSY=P0^1;voidLCD_write(charcbyte){LCD_REQ=0;//复位while(LCD_BUSY==1);P1=cbyte;_nop_;LCD_REQ=1;while(LCD_BUSY==0);LCD_REQ=0;}voidchinese_disp(charnx,charny,charnqu,charnwei){LCD_write(0xf0);LCD_write(nx);LCD_write(ny);LCD_write(nqu);LCD_write(nwei);}voidasc_disp(charccom,charnx,charny,charcasc){LCD_write(ccom);LCD_write(nx);LCD_write(ny);LCD_write(casc);}voidmain(){chinese_disp(0x02,0x00,0x16,0x01);asc_disp(0xf9,0x04,0x00,0x41);while(1);}单片机原理及接口技术6.1.2键盘接口技术键盘是若干按键的集合,是向系统提供操作人员干预命令及数据的接口设备。键盘可分为编码键盘和非编码键盘两种。编码键盘能够由硬件逻辑自动提供与被按键对应的编码。此外,一般还具有去抖动和多键、窜键保护电路,这种键盘使用方便,但需要较多的硬件,价格较贵,一般的单片机应用系统较少采用。非编码键盘只简单地提供行和列的矩阵,其它工作都靠软件来完成,由于其经济实用,目前在单片机应用系统中多采用这种办法。单片机原理及接口技术1.键盘的基本工作原理最简单的非编码键盘是独立式结构键盘,如图6-9所示。每个按键对应I/O端口的一位,当任意一个按键压下时,与之相连的输入数据线即被置为低电平,而平时该线为高电平。这时,CPU只要检测到某位为“0”,便可判断出对应键值。这种键盘结构的优点是十分简单,缺点是键数较多时,要占用较多的I/O线。单片机应用系统通常采用的是矩阵式结构键盘,如图6-10所示的4×4键盘。矩阵式键盘工作时,就是按照行线和列线上的电平来识别闭合按键。图6-10键盘的矩阵式结构图6-9键盘的独立式结构单片机原理及接口技术2.键盘设计需解决的问题
检测是否有键按下;去抖动;若有键按下,判定是哪一个键;确定被按键的读数;不管一次按键持续的时间有多长,仅采用一个数据;处理同时按键。5~10ms5~10ms>100ms按键过程
前跳沿
后跳沿
键闭合
单片机原理及接口技术2.1独立式连接的非编码键盘8031+5VP1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.78031INT0+5VINT1&P1.0P1.1P1.2P1.7(a)查询方式(b)中断方式单片机原理及接口技术2.2矩阵式连接的非编码键盘扫描法为了识别键盘上的闭合键,通常采用两种方法,一种为扫描法,另一种称为线反转法。原理:第一步判断是否有键按下。让所有行线输出为零值,检查各列线电平是否有变化,若有变化,则说明有键按下;第二步识别出具体的键值。逐行置零电平,其余行置为高电平,检查各列线电平的变化。若某列线为低电平,则此行列交叉处的按键被按下。0123456789101112131415+5V8031P1.6P1.7P1.0P1.1P1.2P1.3P1.5P1.4单片机原理及接口技术线反转法原理:第一步让P1口高4位输出全0值,然后从P1口低4位读入,确定哪一列有键按下;第二步将P1口低4位输出全0值,
再从P1口高4位读入,确定哪一行有键按下。P1.7P1.6P1.5P1.4P1.3P1.2P1.1P1.010kΩ×890MCS-51单片机原理及接口技术3.键盘的接口实例
例6-4单片机独立式键盘接口电路如图6-13所示,采用中断方式监测按键,软件延时消除按键的抖动,编写按键中断服务程序。图6-13独立式按键接口电路单片机原理及接口技术程序如下:
ORG0003HAJMPJPCONORG0050HJPCON:MOVP1,#0FFH;P1口输入准备MOVA,P1;输入P1口的值JNBACC.7,PROC7;查询键K7JNBACC.6,PROC6;查询键K6JNBACC.5,PROC5;查询键K5JNBACC.4,PROC4;查询键K4JNBACC.3,PROC3;查询键K3JNBACC.2,PROC2;查询键K2JNBACC.1,PROC1;查询键K1JNBACC.0,PROC0;查询键K0RETIPROC7:ACALLDISP15;调用15ms延时子程序MOVP1,#0FFH;再次读P1准备MOVA,P1;再次确认P1值JNBACC.7,JPC7;再次查询K7键RETIJPC7:
……RETIPROC6:……
……;K6及其它键的处理DISP15:MOVR2,#15;15ms延时子程序MOVR3,#250DISP2:NOPNOPDJNZR3,DISP2DJNZR2,DISP15RET单片机原理及接口技术6.1.3串行通信接口技术MCS-5l单片机内部的串行口,大大扩展了单片机的应用范围,利用串行口可以实现单片机之间点对点的串行通信、多机通信以及单片机与PC机间的单机或多机通信。MCS-5l单片机串行口的输入、输出均为TTL电平,这种以TTL电平进行串行数据传输的方式,抗干扰能力差,传输距离较短。为了提高串行通信的可靠性,增大串行通信的距离,一般都采用标准串行接口,如RS-232、RS-422A和RS-485等来实现串行通信。RS-232C适用于短距离或带调制解调器的串行通信场合。为了提高串行数据传输率和通信距离以及抗干扰能力,EIA又公布了RS-422,RS-423和RS-485串行总线接口标准。单片机原理及接口技术1.RS-232C接口
RS-232C异步串行通信接口标准是用来实现计算机与计算机之间、计算机与外设之间的数据通信。(1)机械特性
目前,PC机都配有标准的RS-232C接口,RS-232C标准规定了25针连接器,但在实际应用中并不一定用到RS-232C的全部信号线,目前大多数微机中只用了其中的9条线(9针“D”型连接插座)。这9条信号线,按在通信过程中所起的作用分为数据收发线、联络控制线和地线3组。数据收发线包括RXD和TXD,是数据传送时不可缺少的部分;地线是第5号引脚,其余为联络控制线。单片机原理及接口技术(2)电气特性RS-232C上传送的数字量采用负逻辑,且与地对称。逻辑1:-3V~-15V;逻辑0:+3V~+15V。由于RS-232C接口标准是单端收发,即采用公共地线的方式(多根信号线共地)。这种方式的缺点是不能区分由驱动电路产生的有用信号和外部引入的干扰信号,抗共模干扰能力差。此外,如果两地之间存在电位差,将会导致传输错误。所以数据传输速率低(小于115.2kb/s)、且传输距离短(小于15m~20m)。即使有较好的线路器件和优良的信号质量,有效传输距离也不会超过60m。单片机原理及接口技术(3)电平转换由于TTL电平和RS-232C电平互不兼容,所以两者对接时,必须进行电平转换。以美国MAXIM公司的产品MAX232为例,它是包含两路接收器和驱动器的IC芯片,其外部引脚如图6-17所示。图6-17MAX232引脚图单片机原理及接口技术由于芯片内部带有自升压的电平倍增电路,可将+5V转换成-10~+10V,满足RS-232C标准对逻辑1和逻辑0的电平要求。因此,芯片工作时仅需单一的+5V电源。芯片内部有2个发送器,2个接收器,具有TTL信号输入/RS-232C输出的功能,也有RS-232C输入/TTL信号输出的功能。该芯片与TTL/CMOS电平兼容,使用比较方便。使用MAX232实现TTL/RS-232C之间的电平转换电路如图6-18所示。图6-18MAX232典型工作电路单片机原理及接口技术(4)典型应用
1)双机串行异步通信
根据两台单片机的距离,可采用不同的电平标准实现正常通信。若两台单片机在1.5m以内,可以直接连接,即用TTL电平通信;当传输距离小于15m时,用RS-232C总线直接连接系统,在最简单的全双工系统中,仅用TXD、RXD和SGND三根线即可,如图6-19所示;当传输距离超过15m时,可以选用其它串行通信标准,若要采用RS-232C标准,则需要增加调制解调器(Modem)。图6-19利用MAX232的双机串行通信接口图单片机原理及接口技术2)单片机与PC机串行异步通信
一般PC机提供了两个RS-232标准的串口COM1、COM2,由于单片机采用TTL电平,因此在实现PC机与单片机之间的串行通信时,需进行电平转换。采用MAX232实现的电平转换接口电路如图6-20所示。图6-20利用MAX232实现PC机与单片机串行通信接口图单片机原理及接口技术在设计通信软件时,首先要分别对各自的串口进行初始化,确定串口的工作方式、波特率及数据位等。通信开始时由PC机发出一个握手信号,同时做好接收单片机发来的信号的准备;单片机接收到握手信号后,确认握手信号是否正确,并向PC机发送响应信号,做好与PC机通信的准备。单片机串行通信程序读者可参考第5章。PC机通信程序可采用如下两种方法:第一种方法是在Windows环境下,利用可视化开发环境VB、VC等的Mscomm通信控件进行软件设计。Mscomm控件提供了功能完善的串口数据的发送和接收功能,使用时只需对串口进行简单的配置即可。第二种方法是采用专门的调试软件,如串口调试助手软件。该软件支持常用的110~115200bps波特率,能够设置校验位、数据位和停止位;能够以ASCII码或十六进制码接收或发送任何数据或字符(包括中文),且可任意设定自动发送周期;能够将接收的数据保存成文本文件,且可发送任意大小的文本文件。单片机原理及接口技术2.RS-422接口RS-422规定了对电缆、驱动器的要求,规定了双端电气接口形式,其标准是采用双绞线传送信号。它通过传输线驱动器,把逻辑电平变换成电位差;通过传输线接收器,由电位差转变成逻辑电平,实现信号接收。RS-422比RS-232C传输信号距离长、速度快。数据传输率最大为10Mb/s,在此速率下电缆允许长度为12m;如果采用较低数据传输速率,如90kb/s,最大距离可达1200m。RS-422每个通道要用2根信号线(2根线的极性相反),在接收端对这2根线上的电压信号相减得到实际信号,这种方式可以有效抑制共模干扰,提高通信距离。单片机原理及接口技术3.RS-485接口RS-485是RS-422的变型,它与RS-422的主要区别在于:RS-422为全双工,采用2对平衡差分信号线,使线路成本增加;而RS-485为半双工,收发双方共用1对信号线进行通信,即采用l对平衡差分信号线。RS-485标准允许最多并联32台驱动器和32台接收器,对于多站互连是十分方便的。因此,在许多工业应用领域,RS-485可以用来组建低成本网络。RS-485也可采用四线连接方式,即工作于全双工方式。此时,RS-485与RS-422一样,只能实现点对多的通信,即只能有一个主设备,其余为从设备。单片机原理及接口技术RS-232C、RS-422与RS-485性能比较单片机原理及接口技术6.2存储器的扩展技术6.2.1存储器扩展中应考虑的问题
6.2.2存储器的并行扩展
6.2.3存储器的串行扩展
单片机原理及接口技术概述存储器主要是用来保存程序、数据和作为运算的缓冲器。虽然在MCS-51单片机内部设置了一定容量的存储器,但这些存储器的容量一般都比较小,远远不能满足实际系统的应用需求。因此,在单片机应用系统中需要扩展外部的存储器,包括程序存储器和数据存储器。本节将着重讨论如何扩展外部程序存储器和数据存储器。单片机原理及接口技术6.2.1存储器扩展中应考虑的问题
在MCS-51单片机系统中,CPU对存储器进行访问时,首先要在地址总线上给出地址信号,选择要进行数据交换的存储单元,然后通过控制总线发出相应的读或写控制信号,最后在数据总线上进行信息的传送。因此,存储器的扩展主要包括地址线的连接、数据线的连接和控制线的连接。在连接的过程中应充分考虑如下的几个问题。
1.选取存储器芯片的原则2.工作速度的匹配3.片选信号和地址分配4.地址译码方式单片机原理及接口技术1.选取存储器芯片的原则单片机对存储器的扩展包括程序存储器和数据存储器的扩展。程序存储器主要用于存储一些固定的程序和常数,以便系统一开机便可按照预定的程序工作。常用的程序存储器有掩模ROM、PROM、EPROM和E2PROM四种类型。若单片机系统是小批量生产或研制中的产品,则建议采用EPROM或E2PROM芯片,以方便系统程序的调试与修改;若系统为定型的大批量产品,则应采用掩模ROM或PROM,以降低生产的成本和提高系统可靠性。数据存储器主要用来存放实时数据,运算的中间和最终结果。数据存储器按照存储信息的工作原理可分为静态RAM和动态RAM两种类型。若单片机系统所需RAM的容量较小,则宜采用静态RAM,以简化硬件电路设计;若所需RAM的容量比较大,则应采用动态RAM,以降低生产成本。单片机原理及接口技术2.工作速度的匹配MCS-51单片机对外部存储器进行读写所需要的时间称之为CPU的访存时间,是指它向外部存储器发出地址码和读写信号到读出数据或保持写入数据所需的时间。存储器的最大存取时间是存储器的固有时间,只与存储器硬件有关。为了使MCS-51单片机与存储器同步而可靠的工作,必须要使CPU的访存时间大于外部存储器的最大存取时间,这在存储器芯片选择时必须要加以注意。单片机原理及接口技术3.片选信号和地址分配
在确定外部RAM和ROM容量与存储器芯片的型号和数量以后,还必须解决存储器的编址问题。MCS-51单片机地址总线的位数为16位,可扩展存储器的最大容量为64KB。在实际应用系统中,会给每个芯片分配一定的地址空间,这些地址空间被分配的位置由片选信号来决定。若存储器芯片所分配的地址范围不同,则地址总线与地址译码器的连接方式也不同。单片机原理及接口技术4.地址译码方式
为了便于分析,可将单片机的地址线划分为片内地址线和片选地址线两部分。片内地址线定义为单片机直接(或通过外部地址锁存器)和所选存储器芯片的地址输入端相连接的那部分地址线;片选地址线定义为除片内地址线以外的其余地址线。(1)全译码全译码是指所有的片选地址线都参与译码的工作方式。(2)部分译码部分译码是指只有一部分片选地址线参与译码、而其余片选地址线悬空的地址译码方式。(3)线选法译码线选法译码是指片选地址线和存储器芯片的芯片选择信号直接或通过逻辑门电路相连的工作方式。单片机原理及接口技术6.2.2存储器的并行扩展1.程序存储器的扩展
MCS-51单片机的程序存储器空间、数据存储器空间是相互独立的。程序存储器寻址空间为64K字节(0000H~FFFFH),其中8031无片内ROM,8051、8751片内包含有4K字节的ROM、EPROM。当使用8031或片内ROM容量不够时,需要扩展程序存储器,通常利用外接EPROM芯片的方法扩展程序存储器。MCS-51单片机和程序存储器扩展相关的控制信号有两个:地址锁存控制信号ALE和外部程序存储器读控制信号PSEN。ALE用作低8位地址锁存器的选通脉冲输出端,以便把P0口分时提供的地址信息的低8位锁存起来。PSEN为外部程序存储器的读控制命令,用于控制对外部程序存储器的读出操作。单片机原理及接口技术
外部程序存储器一般可选用EPROM或E2PROM芯片,如2764(8K×8位)、27128(16K×8位)及2817(2K×8位)、2864(8K×8位)等。这些ROM芯片与单片机的连接仅在高位地址总线位数方面有些微小的差别,作为低8位地址锁存用的锁存器一般选用74LS373。(1)MCS-51单片机与EPROM的连接8031和两片27128的连接电路如图6-25所示。由于27128的存储容量为16KB,即有14根地址线和8根数据线。因此,8031的P2.5~P2.0和经过锁存后的P0.7~P0.0作为片内地址线,直接与两片27128的地址线A13~A0相连;P0.7~P0.0作为数据线也和两片27128的数据线相连。P2.7和P2.6作为片选地址线对芯片进行选择,在这里利用74LS139进行全地址译码。8031的PSEN和27128的OE相接,以便CPU寻指或执行MOVC指令时产生低电平对27128进行读出控制。单片机原理及接口技术
根据地址范围的定义,即在片选地址线不变的条件下,所有的片内地址线从全“0”变到全“1”时的地址空间。因此,可以得到27128的地址范围为271281#:0000000000000000B~0011111111111111B=0000H~3FFFH271282#:0100000000000000B~0111111111111111B=4000H~7FFFH因为所有的片选地址线都参与了地址译码,没有悬空的片选地址线,所以内存单元和地址是一一对应的,不存在地址重叠。图6-258031和27128的连接图单片机原理及接口技术(2)MCS-51单片机对E2PROM的连接E2PROM是电可擦除可编程只读存储器,除了保留EPROM掉电后信息不丢失的特征外,还具备在线更新所存信息的功能。2864A是容量为8KB的E2PROM芯片,具有字节写入和页面写入两种写入方式。页面写入主要是为提高写入速度而安排的,但页面写入需要按2864A芯片的要求进行。8031与两片2864A的连接电路如图6-26所示。在与单片机的连接中,2864A既可连接成数据存储器,也可连接成程序存储器。这里采用了将外部程序存储器空间和数据存储器空间合并的连接方法,即将PSEN信号和RD信号相与后的输出作为存储器的输出允许信号,WR信号则直接和2864A的写允许WE相连。这样两片2864A既可以作为程序存储器,又可作为数据存储器使用。CPU可使用MOVC或MOVX指令访问2864A进行读写操作。单片机原理及接口技术由图可见,由于采用部分地址译码方式,因此根据基本地址范围的定义,即悬空的片选地址线P2.7为低电平时的地址范围,2864A的基本地址范围为28641#:0000H~1FFFH28642#:2000H~3FFFH重叠的地址范围定义为未参加译码的片选地址线任意取值后的芯片地址范围,因此2864A的重叠地址范围为28641#:0000H~1FFFH或8000H~9FFFH28642#:2000H~3FFFH或A000H~BFFFH图6-268031和2864A的连接图单片机原理及接口技术2.数据存储器的扩展
MCS-51单片机内部有128个字节的RAM存储器,主要用作工作寄存器、堆栈区和数据缓冲区。在单片机用于实时数据采集和处理时,仅靠片内提供的128个字节的数据存储器是不够的,还必须扩展外部数据存储器,以满足系统需求。MCS-51单片机扩展外部数据存储器所用的地址总线、数据总线与扩展外部程序存储器时相同,只有读写控制线是不同的。MCS-51单片机与数据存储器扩展相关的控制信号有三个,它们是分别由P3.7和P3.6提供的RD、WR控制信号,以及地址锁存控制信号ALE,用于实现对外部数据存储器的读写操作及地址锁存控制。单片机原理及接口技术
外部数据存储器有静态RAM和动态RAM两种。
静态RAM工作速度快,与单片机接口简单,但是成本比较高,功耗大。常用的静态RAM芯片有6116(2K×8位)、6264(8K×8位)和62256(32K×8位)等。
动态RAM具有成本低、功耗小的优点,适用于大容量数据存储器空间的场合,但是需要刷新电路,以保持数据信息不丢失。常用的动态RAM芯片有2186/2187(8K×8位)、2114(1K×4位)和2164(64K×1位)等。单片机原理及接口技术
8031和两片6264的连接电路如图6-27所示。由于6264与2864A引脚完全兼容,图中6264也可用2864A替换,使得2864A被扩展成外部数据存储器,掉电后所存信息不会丢失,只是写入时间较长。如前分析,可以得到两片6264的地址范围为62641#:2000H~3FFFH62642#:4000H~5FFFH图6-278031和6264的连接电路图单片机原理及接口技术3.程序存储器和数据存储器的同时扩展
在实际的应用系统设计中,多数情况下既需要扩展程序存储器,又需要扩展数据存储器。此时,数据总线和地址总线是共用的,适当地把64KB的外部数据存储器空间和64KB的外部程序存储器空间分配给各个芯片,使程序存储器和数据存储器各芯片之间的地址不发生重叠。控制总线是完全不同的,必须分别进行连接,从而避免单片机在读/写外部存储器时发生数据冲突。单片机原理及接口技术
8031和外部RAM、ROM的连接电路如图6-28所示。图中采用两片6264和一片27128分别扩展16KB数据存储器和16KB程序存储器。单片机对程序存储器的读操作由PSEN来控制,而对数据存储器的读/写操作则分别由RD和WR控制。
从图中地址线的连接可以得到27128的地址范围是0000H~3FFFH;由于两片6264采用部分地址译码方式(P2.5未使用),因此可以得到两片6264的基本地址范围(P2.5=0)分别为62641#:0000H~1FFFH62642#:4000H~5FFFH图6-288031和RAM、ROM的连接电路图单片机原理及接口技术6.2.3存储器的串行扩展串行总线扩展接线灵活,很容易形成用户的模块化结构,同时还将极大地简化系统结构。目前有许多串行接口器件,如串行E2PROM、串行ADC/DAC、串行时钟芯片等等。其中串行E2PROM是在各种串行器件应用中使用较为频繁的器件。它具有体积小、引线少以及与MCS-51单片机连接线路简单的优点,因此得到广泛的应用,常用于仪器仪表中存放重要的数据。在新型单片机中,实用的串行总线扩展接口有Motorola公司的SPI总线,NS公司的MICROWIRE/PLUS总线和PHLIPS公司的I2C总线。其中I2C总线具有标准的规范,以及众多的带I2C接口的外围器件,形成了较为完善的串行扩展总线。这里以ATMEL公司的I2C总线AT24CXX系列存储器芯片为例,介绍MCS-51单片机扩展串行E2PROM的接口方法。
单片机原理及接口技术1.I2C总线
I2C串行总线具有两条总线线路:串行数据线SDA和串行时钟线SCL,可以进行数据的发送和接收。所有连接到I2C总线上的设备的串行数据线都接到总线的SDA线上,而各设备的时钟信号均接到总线的SCL线上,典型的I2C总线结构如图6-30所示。图6-30典型的I2C总线结构单片机原理及接口技术(1)I2C总线的工作原理
I2C总线是一个多主机总线,也就是说I2C总线协议允许接入多个器件,并支持多主机工作。总线中的主器件一般由微控制器组成,可以启动数据的传送,并产生时钟脉冲信号,以允许与被寻址的器件即从器件进行数据的传送。被主机寻址的设备叫从机,可以是微控制器、存储器、LED等器件。I2C总线允许有多个微控制器,但不能同时控制总线成为主器件。如果有两个或两个以上的主机企图占有总线,就会产生总线竞争,竞争成功的器件成为主器件,其它器件则退出。
为了进行通信,每个接到I2C总线上的设备都有一个唯一的地址,以便于主机进行寻访。I2C总线是双向的I/O总线,通过上拉电阻接正电源。各个器件构成的节点之间通过数据线相互发送或接收串行码,时钟信号则起到同步作用,根据它来判断的起始、终止以及有效性等。当总线空闲时,两根线都处于高电平状态。单片机原理及接口技术(2)I2C总线的通信时序
I2C总线上主机和从机之间一次传送的数据称为一帧,是由启动信号、若干个数据字、应答位和停止信号组成。其通信时序如图6-31所示。图6-31I2C总线工作时序图单片机原理及接口技术2.AT24CXX系列芯片(1)AT24CXX的引脚功能A2、A1、A0:芯片选择端。它们分别接高电平或接地,与写入控制字节中的A2,A1,A0配合实现芯片的选择。由此可见,一个系统中最多可以有8片AT24CXX。SCL:串行时钟线。用于输入串行时钟信号,漏极开路,需要外接上拉电阻。SDA:串行数据/地址传输线。作为双向数据线传送串行数据或者地址,开漏输出,需要外接上拉电阻。WP:写保护端。当WP为高电平时,对芯片进行写保护,数据只能读出不能写入;当WP为低电平时,数据既能读出又能写入。Vcc:电源端。单片机原理及接口技术(2)AT24CXX的控制字节在起始位以后,I2C总线的主器件送出8位控制字节。表6-4控制字节结构控制字节的高4位是从器件的类型识别码位,I2C总线协议规定若从器件为串行E2PROM,则这4位码为1010。控制字节的A2,A1,A0用于作为芯片选择或片内块选择位,I2C总线协议允许选择16KB的存储器,如表6-5所示。控制字节的A2,A1,A0的选择必须与外部引脚的硬件连接或内部的块选择匹配。控制字节的最低位为读写控制位,该位为1即是读控制字节,该位为0即是写控制字节。单片机原理及接口技术表6-5AT24CXX的A2,A1,A0单片机原理及接口技术3.AT24CXX的应用(1)硬件连接电路
MCS-51单片机和AT24C16的硬件连接如图6-34所示。因为MCS-51单片机片内无I2C总线,需要用模拟I2C总线的方法来完成通信。这里采用P1.0作为串行时钟线SCL,P1.1作为串行数据线SDA。图6-34MCS-51单片机与AT24C16接口电路
由于共有3条地址线,在同一组I/O线上只能挂接8片这样的从器件。总线上每一个从器件都必须使其地址输入A2,A1,A0的硬件连接确定意义的地址。在图6-34中,AT24C161#的A2,A1,A0引脚都接地,所以其地址为000H,同理可得AT24C162#的地址为001H。单片机原理及接口技术(2)模拟I2C总线的软件编程模拟I2C总线编程,实际上就是用软件分别控制SCL和SDA,达到模拟I2C总线协议的效果。假设单片机的主频为6MHz,可以将常用的程序段编制成子程序,主要包括发送开始条件、发送应答位、检查应答位、单字节数据发送、单字节数据接收以及发送停止条件子程序。多字节的数据传送可以通过子程序调用的方法来实现。若单片机的主频不是6MHz,则要相应的增删各程序段中NOP指令的条数,以满足时序的要求。主要步骤:1)发送开始条件子程序;2)发送应答位子程序;3)发送反向应答位子程序;4)检查应答位子程序;5)单字节发送子程序;6)单字节接收子程序;7)发送停止条件子程序单片机原理及接口技术6.3系统扩展技术6.3.1并行I/O接口的扩展及应用
6.3.2可编程串行显示接口芯片MAX7219及扩展应用
单片机原理及接口技术概述MCS-51单片机共有4个8位并行I/O口,这些I/O口一般不能完全供用户使用。只有当单片机带有片内程序存储器且不需要进行外部扩展时,才允许这4个I/O口作为用户I/O口使用。但是在有些情况下,即使4个I/O口全部使用,也不能满足要求。此时需要对单片机应用系统进行I/O口扩展。MCS-51单片机的外部RAM和扩展的I/O口是统一编址的,因此外部RAM的64KB空间的地址可任意作为扩展I/O口的地址使用。每个I/O口相当于一个RAM单元,CPU用访问外部RAM相同的指令,对扩展的I/O口进行读写操作。单片机原理及接口技术6.3.1并行I/O接口的扩展及应用1.简单的I/O口扩展通过前面的学习可知,MCS-51单片机的P0~P3口具有输入数据可以缓冲、输出数据可以锁存的功能,并且具有一定的负载驱动能力。在某些简单应用的场合,I/O口可直接与外设相连接,例如非编码键盘、发光二极管等。当需要扩展I/O口时,为了降低成本、缩小体积,可以采用TTL、CMOS电路锁存器或三态缓冲器构成各种类型的简单I/O接口电路。扩展I/O接口电路的数据线一般接在数据总线上,即P0口。I/O口的选通信号一般由地址译码产生。通常,I/O口扩展的芯片有74LS373、74LS273、74LS244和74LS245等。单片机原理及接口技术2.利用可编程接口芯片进行I/O口扩展可编程接口芯片是指其功能可由计算机指令进行改变的接口芯片。常用的可编程接口芯片有定时/计数器8253,中断控制器8259,串行接口芯片8251,并行接口芯片8255、8155等。下面以8155为例来说明可编程接口芯片的使用。(1)Intel8155引脚及功能Intel8155是可编程RAM/IO芯片,为40脚双列直插式封装。它有256×8位静态RAM,2个8位和1个6位可编程并行I/O接口,以及1个14位可编程减一定时/计数器。它可直接与MCS-51单片机相连接,图6-36和图6-37分别给出了8155芯片的引脚分布和内部结构。图6-368155引脚图图6-378155的结构框图单片机原理及接口技术AD0~AD7:三态地址/数据总线,连接单片机的低8位地址/数据总线。IO//M:RAM/IO口选择信号输入端。当IO//M=0时,选中8155的片内RAM,AD0~AD7为RAM的地址或数据;当IO//M=1时,选中8155的片内3个I/O端口以及命令/状态寄存器和定时/计数器,AD0~AD7为I/O口地址或数据,其地址分配如表6-6所示。/CE:片选信号输入端,低电平有效。ALE:地址锁存允许信号输入端。由ALE下降沿将AD0~AD7上的地址、CE及IO//M状态锁存到片内锁存器。/RD:读选通信号输入端,低电平有效。/WR:写选通信号输入端,低电平有效。RESET:复位信号输入端,高电平有效。当RESET线上输入宽度大于600ns的正脉冲时,8155将复位,控制字被清零,初始化3个I/O口为输入方式,计数/定时器停止工作。单片机原理及接口技术PA0~PA7:A口的I/O线,I/O方向由命令字编程设定。PB0~PB7:B口的I/O线,I/O方向由命令字编程设定。PC0~PC5:C口的I/O线,或A口和B口的状态控制信号线,由命令字编程设定。TI:定时/计数器的输入端。TO:定时/计数器的输出端,选择不同的工作模式,可输出方波或脉冲。VCC:+5V电源线。Vss:接地端。单片机原理及接口技术表6-68155端口地址分布表单片机原理及接口技术(2)8155与MCS-51单片机的典型接口电路
图6-38为8155与MCS-51单片机的典型接口电路。当P2.7=0,P2.0=0时,选中8155片内256字节的RAM单元,地址范围为0000H~00FFH(无关的地址线设为0);当P2.7=0,P2.0=1时,选中8155内的I/O端口,端口地址分别为命令/状态口:7FF8H(无关的地址线设为1)A口:7FF9HB口:7FFAHC口:7FFBH定时/计数器低8位口:7FFCH定时/计数器高8位口:7FFDH图6-38MCS-51单片机与8155的接口电路单片机原理及接口技术(3)读写8155片内RAM对MCS-51单片机来说,8155片内256BRAM属于片外RAM,应使用MOVX指令进行读写。(4)8155的控制字和状态字1)8155的I/O工作方式选择是通过对内部控制寄存器送控制命令来实现的。控制寄存器只能写入不能读出,其控制字格式如图6-39所示。各位定义如下:PA:A口数据传送方向控制位。0:输入;1:输出。PB:B口数据传送方向控制位。0:输入;1:输出。PC2、PC1:C口工作方式设置位。其具体方式如表6-7所示。图6-398155控制字格式单片机原理及接口技术表6-78155C口工作方式IEA:A口中断允许设置位。0:禁止;1:允许。IEB:B口中断允许设置位。0:禁止;1:允许。TM2、TM1:定时/计数器工作方式设置位。其具体方式如表6-8所示。表6-8定时/计数器工作方式单片机原理及接口技术2)8155的状态寄存器与控制寄存器共用一个端口地址,但只能读出不能写入,其状态字格式如图6-40所示。各位定义如下:INTRi:中断请求标志。此处i表示A或B。INTRi=1,表示A口或B口有中断请求;INTRi=0,表示A口或B口无中断请求。Bfi:缓冲器满/空标志。BFi=1,表示缓冲器已装满数据;BFi=0,表示缓冲器空。INTEi:中断允许标志。INTEi=1,表示A口或B口允许中断;INTEi=0,表示A口或B口禁止中断。TIMER:定时器溢出中断标志。TIMER=1,有定时器溢出中断;TIMER=0,读状态字后或硬件复位后。图6-408155状态字格式单片机原理及接口技术(5)8155I/O工作方式1)基本I/O方式在基本I/O方式下,A、B、C三个端口均用作数据输入或输出口,由8155的工作方式控制字决定。2)选通I/O方式A口、B口均可工作在选通方式下,此时A口、B口用作数据口,C口用作A口和B口的联络控制。C口各位联络线的定义和命名如表6-9所示。表6-9C口各位联络线在选通方式下的定义单片机原理及接口技术(6)8155定时/计数器
8155的可编程定时/计数器在功能上与MCS-51单片机内部的定时/计数器是相同的,但是在使用上却不完全相同,具体表现在以下几个方面:1)8155的可编程定时/计数器实际上是一个固定的14位减法计数器。2)不论是定时还是计数工作,都由外部提供计数脉冲,由TI端输入。使用时需要注意芯片允许的最高计数频率,8155允许从TI引脚输入脉冲的最高频率为4MHz。3)计数溢出时,由TO端输出脉冲或方波,输出波形通过软件可定义为4种形式。使用时,先把计数初值和输出方式装入定时/计数器的两个寄存器。计数初值为2~3FFFH之间的任意值,然后通过发送控制命令(控制寄存器最高两位)控制启动和停止。当计数初值为奇数时,若输出为方波,则高电平比低电平多一个计数值。当计数器正在计数时,允许装入新的计数方式和初值,但必须再向定时/计数器发一个启动命令。单片机原理及接口技术例6-10如图6-38所示,编写子程序将从TI引脚的输入脉冲24分频后从8155输出。TMER:MOVDPTR,#7FF8H;控制口
MOVA,#11000000BMOVX@DPTR,A;初始化
MOVDPTR,#7FFCH;计数器低8位
MOVA,#24MOVX@DPTR,AINCDPTR;计数器高8位
MOVA,#01000000B;连续方波
MOVX@DPTR,ARET
在实际应用中,有时会利用8155或8255实现键盘/显示接口电路,如图6-42所示。8155与MCS-51单片机的接口见图6-38所示。8155的PB口为输出口,控制显示器字形;PA口为输出口,控制键盘扫描作为扫描口,同时又是控制6位LED数码管的位选线;PC口为输入口,作为键盘扫描时的输入口。单片机原理及接口技术图6-428155实现的键盘/显示接口电路单片机原理及接口技术
编写程序时采用定时的方法对键盘和显示器进行扫描,扫描时间设为15ms,即每隔15ms中断一次,在中断服务程序中进行键盘扫描和显示调用。显示子程序为循环显示方式,6位数据全部显示一遍的执行时间为6ms,可以在键盘识别中调用两次显示子程序作为消抖时间。在等待按键释放时,可以调用一次判断按键是否释放,以保证显示的连续性。定时扫描键盘/显示程序流程如图6-43所示。图6-43定时扫描键盘/显示程序流程图单片机原理及接口技术6.3.2可编程串行显示接口芯片MAX7219及扩展应用
常用的数码管显示驱动芯片有8279和MAX7219,前者因近年来停产和连接电路复杂而应用较少;后者因使用方便灵活,连线简单,不占用数据存储器空间等优点,获得了较为广泛的应用。MAX7219是美国MAXIM公司生产的串行输入、共阴极显示输出的驱动控制器。它采用CMOS工艺,内部集成了数据保持、BCD译码器、多路扫描器、段驱动器和位驱动器。每片MAX7219最多可同时驱动8个LED数码管、条形图显示器或64只发光管。
单片机原理及接口技术MAX7219的主要特点如下:1)采用三线串行传送数据,仅用3个引脚与单片机的相应端连接即可,串行数据传送速率高达10MHz,还可以级联使用。2)内部具有8字节显示静态RAM(称为数字寄存器)和6个控制寄存器,可单独寻址和更新内容,具有译码和不译码两种显示模式。3)上电时所有LED熄灭,正常工作时通过外接电阻或编程方式调节LED亮度。4)最大功耗为0.87W,具有150μA电流的低功耗关断模式。MAX7219和LED数码管直接连接时,不需要外加驱动器和限流电阻、译码器、锁存器和其他硬件电路。MAX7219还可以级联使用,驱动更多的LED数码管,且不必额外占用单片机口线。由于MAX7219集成度高,驱动能力强,亮度可调,编程容易,与单片机接口十分简单,占用单片机的端口资源少,现已成为单片机应用系统中首选的LED显示接口电路。
单片机原理及接口技术1.MAX7219引脚功能
MAX7219采用24脚双列直插式封装形式,引脚排列如图6-44所示,各引脚功能如下:DIN:串行数据输入端。在时钟周期的上升沿将数据逐位送入内部16位移位寄存器,在CLK的上升沿到来之前,DIN必须有效。DIG0~DIG7:显示器位控制端。分别接至8位共阴极LED数码管的阴极,从显示器灌入电流。GND:信号地。两个接地引脚都应接地。LOAD:数据锁存脉冲输入端,在其上升沿处锁存16位串行输入数据。CLK:串行数据移位脉冲输入端,具有10MHz的最大速率,在其上升沿处数据移入内部移位寄存器。图6-44MAX7219引脚图单片机原理及接口技术
SEGa~SEGg、SEGdp:七段段码和小数点输出端。ISET:外接电阻端。与V+之间连接有一个电阻,以设置峰值段电流。V+:供电电压(4V~5.5V)。典型值为5V。DOUT:串行数据输出端。输入DIN的数据经16.5个时钟周期后,在DOUT正确输出。用作MAX7219的级联扩展。单片机原理及接口技术2.串行数据格式与工作时序
MAX7219内部的16位移位寄存器数据格式见表6-11。其中D0~D7为控制命令或待显示数据,D8~D11为寄存器地址,D12~D15为无关位,可取任意值。每组16位数据中,首先接收数据的最高有效位,最后接收数据的最低有效位。表6-11M2、M1位输出方式定义
MAX7219的工作时序如图6-45所示。DIN是串行数据输入端,在CLK时钟作用下,串行数据依次从DIN端输入到内部16位移位寄存器。在CLK的每个上升沿,均有一位数据由DIN移入到内部移位寄存器。单片机原理及接口技术
LOAD用来锁存输入的数据。在LOAD的上升沿,移位寄存器中的16位数据被锁存到MAX7219内部的控制或数据寄存器中。LOAD的上升沿必须在第16个CLK时钟上升沿的同时或之后,且在下一个CLK时钟上升沿之前产生,否则输入的数据将会丢失。LOAD引脚由低电平变为高电平时,串行数据在LOAD上升沿的作用下方可锁存到MAX7219的寄存器中,因此LOAD又可称为片选端。图6-457219工作时序图单片机原理及接口技术3.MAX7219内部寄存器MAX7219内部有14个8位寄存器,其中:8个显示数据寄存器,用于存放DIG0~DIG7对应的显示数据,地址为X1H~X8H;6个控制寄存器,即译码模式控制寄存器、显示亮度控制寄存器、扫描频率限制寄存器、关断(消隐)模式寄存器、显示测试寄存器及空操作寄存器,其地址依次为X9H~XCH、XFH、X0H。
(1)译码模式控制寄存器(地址X9H)MAX7219具有BCD码译码模式和非译码模式。译码模式寄存器的字节数据各位分别对应着8个LED数码管,如表6-12所示。若该位为1,则对应位LED显示为译码模式;若该位为0,则对应位LED显示为非译码模式。表6-12译码模式寄存器数据位与显示LED对应关系单片机原理及接口技术
MAX7219在BCD译码显示模式中,数据寄存器中存储的数据为00H~0FH,这时的数码显示如表6-13所列。
非译码模式也称段选码模式,其数据寄存器中的数据位D7~D0分别对应于LED数码管的dp、a~g段。若某位为1,则对应段点亮,D7~D0与LED各段驱动关系如表6-14所示。表6-13译码模式代码字符表表6-14非译码模式下数字寄存器数据和对应段线数据寄存器数据位D7D6D5D4D3D2D1D0对应的段dpabcdefg单片机原理及接口技术(2)显示亮度控制寄存器(地址XAH)
MAX7219可用外接电阻调节LED亮度(称为亮度模拟控制),外部电阻RSET连接在电源V+和ISET端之间,用来控制段电流的峰值,即最大亮度。RSET既可以是固定的,也可以是可变的,由面板来进行亮度调节。RSET最小值为9.53kΩ。段电流也可用显示亮度控制寄存器进行调节(称为亮度数字控制),即利用寄存器的D3~D0位控制内部脉宽调制器的占空比来控制LED段电流的平均值,以达到控制亮度的目的。当D3~D0位从0变化到0FH时,占空比从1/32变化到31/32,共l6个控制等级,每级变化2/32。单片机原理及接口技术(3)扫描频
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 海洋物语课程设计
- 高考题型预测2字形详解精练
- 技术方案模板集合10篇
- 拜师发言稿范文
- 惹老婆生气写保证书(8篇)
- 建筑工程开工典礼施工单位发言稿范文(13篇)
- 2024年标准化集体水域承包权转让合同范本版B版
- 桌游早教课程设计
- 2024年影视作品美术元素应用与聘用合同3篇
- 2025年山东淄博“名校人才特招行动”事业单位招聘989人历年管理单位笔试遴选500模拟题附带答案详解
- 派出所治安业务培训
- 创新创业与乡村振兴的协同发展策略与实践
- 湖北省武汉市洪山区2022-2023学年五年级上学期期末考试科学试题
- 以学增智-提升推进高质量发展的本领研讨发言稿
- 幼儿园人事工作总结
- 可修改版五年级数学期中考试答题卡模板
- 精装修工程工作界面划分
- 山东省青岛市市北区2023-2024学年九年级上学期11月期中数学试题
- 【语文】上海市三年级上册期末复习试题(含答案)
- 遥感技术基础第二版课后答案
- 项目式高中化学教学《保护珊瑚礁的措施-沉淀溶解平衡》
评论
0/150
提交评论