还剩34页未读,继续阅读
本资源只提供10页预览,全部文档请下载后查看!喜欢就下载吧,查找使用更方便
文本内容:
第1单元概述
1.1计算机发展概述计算机的发展经历了哪五个阶段?答第一代逻辑元件采用电子管,存储器采用磁鼓和磁芯的计算机;第二代辑元件采用晶体管,主存储器仍用磁芯,外存储器已开始用磁盘的计算机;第三代逻辑元件开始采用中小规模集成电路,主存储器仍用磁芯的计算机;第四代采用中、大及超大规模集成电路,主存储器采用半导体存储器的计算机;第五代人工智能计算机(目前仍处于研究之中)
1.2单片型计算机简介
1.从结构功能分析单片机的发展趋势答单片机发展的趋势将会朝着不断提高容量、性能、集成度、降低价格等方面发展;在内部结构上将会由RISC(reducedinstructionsetcomputer)结构取代传统的CISC(complexinstructionsetcomputer)结构的单片机
2.P89C5X系列单片机的特点以及系统结构特点如下CPU仍然采用80C51中心处理单元,程序存储器为FLASH存储器,RAM可扩展到64K字节,CPU速度最高可达33MHz,采用4个中断优先级结构,相比80C51更灵活,具有6个中断源,80C51增加了1个中断源,具有4个8位I/O口,采用全双工增强型串行口,具有帧数据错误检测和自动地址识别功能,电源具有低功耗方式,具有可编程时钟输出功能,采用双DPTR寄存器,具备低EMI禁止ALE模式,具有3个16位定时器,相对80C51性价比更高,外部中断可以从掉电模式中唤醒系统结构P89C5x系列单片机具有128字节( P89C51)或256字节( P89C52/54/58)RAM、32条I/O口线、3个16位定时/计数器、6中断源、4中断优先级结构、1个串行I/O口(可用于多机通信、I/O扩展或全双工UART)以及片内振荡器和时钟电路
1.3单片机应用系统的开发过程如何进行单片机应用系统的开发?答系统方案设计、硬件方案设计、软件编程、仿真调试及实际运行第2单元P89C5x单片机的结构及原理
2.1P89C5x单片机结构
1.请举出P89C5X系列单片机的型号答P89C5x系列单片机的型号有P89C
51、P89C
52、P89C54和P89C58这4种
2.简要说明P89C5X单片机的内部结构答P89C5X单片机由中央处理器(CPU)、内部RAM、内部ROM、定时/计数器、并行I/O口、串行口、中断控制系统等部分通过片内总线连接组成
3.简要说明P89C5X单片机的引脚功能答引脚功能如下P
0.0~P
0.7P0端口8位三态双向I/O口线,它分时作为低8位地址线和8位数据线在不访问外部存储器时,作为通用I/O口,传送输入输出数据P0端口能以吸收电流的方式驱动负载,一般情况下是作为扩展时候的地址数据总线使用的P
1.0~P
1.7P1端口8位带内部上拉电阻的准双向I/O口线对P1口写1时P1口被内部上拉电阻上拉为高电平可以用作输入口;当作为输入口时因为内部上拉电阻的存在,P1端口被外部拉低的引脚,而输出电流其中P
1.
0、P
1.1兼有特殊功能(T2/P
1.0为外部计数输入/时钟输出,T2EX/P
1.1为T2的重装/捕捉/方向控制)P
2.0~P
2.7P2端口8位带内部上拉电阻的准双向I/O口线可作为一般I/O端口,在扩展容量时可作为高8位地址线P
3.0~P
3.7P3端口8位带内部上拉电阻的准双向I/O口线第一功能是普通的I/O端口,向P3口写1时P3口被内部上拉为高电平并且用作输入口;当作为输入脚时因为内部上拉电阻的存在,P3端口引脚被外部拉低,而输出电流第二功能作为控制口使用P3端口的第二功能如表2-3所示ALE/地址锁存控制/编程脉冲输入信号在系统扩展访问外部存储时,ALE用于控制把P0口输出的低8位地址锁存起来,以实现低位地址和数据的隔离此外,由于ALE是以晶振1/6的固定频率输出的正脉冲,因此可作为外部时钟或外部定时脉冲使用ALE可以通过设置SFR的auxlilary.0设置禁止ALE设置后ALE,只能在MOVX指令时被激活外部程序存储器读选通信号用于访问外部程序存储在读外部ROM时,有效(低电平)每个机器周期出现2次,以实现外部ROM单元的读操作在访问外部数据器有效访问内部程序时无效/VPP访问程序存储控制信号/可编程电压输入端当信号为低电平时,对ROM的读操作限定在外部程序存储器;当信号为高电平时,对ROM的读操作是从内部程序存储器开始,并可延至外部程序存储器该引脚在编程时接12V编程电压VppRST复位信号当输入的复位信号延续两个机器周期以上的高电平时即为有效,用以完成单片机的复位初始化操作XTAL1和XTAL2外接晶体引线端当使用芯片内部时钟时,此二引线端用于外接石英晶体和微调电容;当使用外部时钟时,用于接外部时钟脉冲信号VSS地线Vcc+5V电源提供掉电\空闲\正常电压3种模式
4.列举常见的第二功能引脚答p1端口的第二功能:T2P
1.0和T2EXP
1.1;P3端口的第二功能;EPROM存储器程序固化所需要的信号,即ALE/编程脉冲,(/VPP)编程电压;备用电源引入RST/VPD
2.2P89C5x单片机的存储器结构本节思考题
1.P89C5x系列单片机的存储器有哪两类,各型号单片机,存储器空间有哪些不同?答程序存储器(ROM)和数据存储器(RAM)P89C51片内有4KB的FLASHEPROM,89C52/54/58片内分别有8K/16K/32K的EPROM,89C51RC+片内有32K的EPROM,89C51RD+片内有64K的EPROM其中P89C51存储地址为00H-7FH(即128B),P89C52/54/58的存储地址为00H-0FFH(即256B)
2.请说明P89C51单片机的程序存储器结构答P89C51片内有4KB的FLASHEPROM,P89C51的片外最多能扩展64KB程序存储器,片内外的EPROM是统一编址的0000H~0002H为复位后PC所在位置;0003H~0032H6个中断源的中断地址区P89C51的程序存储器结构如图图2-4所示
3.请说明P89C51单片机的数据存储器地址空间配置情况P89C51的内部数据存储器RAM共128单元(单元地址00H~7FH)按其用途划分为寄存器区.位寻址区和用户RAM区三个区域表2-5为RAM128单元的配置情况
4.P89C51单片机的专用寄存器有哪些?答详见表2-9P89C5x专用寄存器SFR
2.3P89C5x单片机的I/O口
1.单片机的并行I/O口有哪几个它们都包含哪些器件答共有4个8位的并行I/O口,分别记作P
0、P
1、P
2、P3各个I/O端口由数据输出锁存器、三态数据输入缓冲器、数据输出的驱动电路和输出控制电路、多路转接电路MUX、上拉电阻、与非门等组成
2.单片机的并行I/O口在功能上有什么不同答P0端口既可以作为通用的I/O口进行数据的输入/输出,也可以作为单片机系统的低8位地址/数据线使用P1端口为准双向I/O端口,可作为通用I/O口使用,又能使用第二功能复用,具体功能可见表2-2P2端口可以作为通用I/O口使用,P2端口又能作为高8位地址线使用P3端口是一个准双向的I/O端口,作为通用I/O口使用,又能使用第二功能复用,第二功能见表2-
32.4单片机的工作方式及时序
1.单片机的工作方式有哪两种复位后各寄存器的状态如何答P89C5x单片机的工作方式有复位方式、程序执行方式、低功耗方式以及在线仿真方式复位后各寄存器的状态见表2-10所示
2.简述单片机的程序执行方式答程序执行的方式是单片机的基本工作方式,有单步执行和连续执行两种
3.单片机的低功耗方式有哪几种?答低功耗方式就是减少单片机的功耗的一种工作方式该方式可分为待机模式和掉电模式
4.简述单片机的内部时钟电路和外部时钟电路的不同答在P89C5x芯片内部有一个高增益反相放大器,其输入端为芯片引脚XTAL1,其输出端为引脚XTAL2而在芯片的外部,XTAL1和XTAL2之间跨接晶体振荡器和微调电容,从而构成一个稳定的自激振荡器,即单片机的内部时钟电路,如图2-10所示引入惟一的公用外部脉冲信号作为各单片机的振荡脉冲,外部的脉冲信号是经XTAL2引脚注入,其连接如图2-11所示
5.简述节拍与状态、机器周期、指令周期之间的关系答单片机的时序定时单位共有4个,从小到大依次是节拍、状态、机器周期和指令周期关系一个状态就包含两个节拍;一个机器周期总共有12个节拍,分别记作S1P
1、S1P
2、…、S6P2;指令周期由若干个机器周期组成
2.5单片机Flash存储器的编程及加密方法
1.说明P89C51单片机Flash存储器编程方法答编程时,可采用4-20MHz的时钟振荡器,P89C51编程方法如下
(1)在地址线上加上要编程单元的地址信号
(2)在数据线上加上要写入的数据字节
(3)激活相应的控制信号
(4)在高电压编程方式时,将/Vpp端加上+12V编程电压
(5)每对Flash存储阵列写入一个字节或每写入一个程序加密位,加上一个ALE/编程脉冲改变编程单元的地址和写入的数据,重复1—5步骤,直到全部文件编程结束
2.简述单片机加密的方法答P89C5x有3个可编程保密锁位和片内的代码、数据它是独立保密锁位,LB3包含LB1保密位编程时的顺序先LB1再LB2最后是LB3详见表2-14和2-15第3单元P89C5x单片机的指令系统及编程举例
3.1指令系统简介
1.单片机的指令由哪几部分构成答指令系统第1部分为标号,第2部分为操作码,第3部分为操作数,第4部分为注释
2.单片机的指令分为哪几类答1按功能可分为5类数据传送类指令(共29条)算数运算类指令(共24条)逻辑运算及移位类指令(共24条)控制转移类指令(共17条)布尔变量操作类指令(共17条)2按字节数可以分为3类单字节指令(49条)双字节指令(46条)三字节指令(16条)3按指令执行的时间可分为3类单机器周期指令(64条)双机器周期指令(45条)四机器周期指令(2条)
3.列举指令中常见的符号并说明它们的功能常有符号说明:1Rnn=1~7指当前选中的工作寄存器组R0~R7中的某个寄存器2Rii=0~1指当前选中的工作寄存器组中能用作间址寄存器的R
0、R13#data8位立即数4#data1616位立即数5direct片内RAM单元(包括SFR)的直接地址6addr1111位目的地址7addr1616位目的地址8rel补码形式表示的8位地址偏移量以下一条指令第一字节地址为基址,地址偏移量范围为−128~+1279bit片内RAM或SFR的直接寻址位地址10@间接寻址方式中,表示间址寄存器的符号11/位操作指令中,表示对该位先求反再参与操作,但不影响该位原值12C最高位进位或借位标志位或布尔处理器的累加器13(×)表示由×所指地址单元或寄存器中的内容14((×))表示以×所指地址单元或寄存器中的内容为地址的存储单元中的内容15→数据传送方向
3.2P89C5x单片机的寻址方式
1.单片机的寻址方式有哪几种?答89C5x单片机的寻址方式有:立即寻址、直接寻址、寄存器寻址、寄存器间接寻址、基址加变址寻址、相对寻址、位寻址
2.立即数寻址和直接寻址有什么不同?答立即数寻址操作数为8位或者16位的数据,用符号“#”表示标示,以区别直接地址直接寻址是把存放操作数的内存单元的地址直接写在指令中
3.寄存器寻址、寄存器间接寻址以及基址加变址寻址有什么区别?答寄存器寻址是指将操作数存放于寄存器中寄存器包括工作寄存器R0~R
7、累加器A、通用寄存器B、地址寄存器DPTR等寄存器间接寻址把指令中指定的寄存器的内容作为的地址,从该地址取操作数用于寄存器间接寻址的寄存器有R
0、R1和DPTR,基址加变址寻址以某个寄存器的内容为基地址,然后在这个基地址的基础上加上地址偏移量而形成的真正的操作数地址单片机以DPTR和PC作为基址地址,累加器A是变址寄存器该类寻址方式主要用于查表操作
4.什么是相对寻址,通常在实际中是怎么使用的?答相对寻址指将程序计数器PC的当前值(执行完这条相对转移指令后的下一条指令的地址)为基准,将指令的偏移量相加,其结果作为指令的转移地址转移量可以为正或负值,转移的范围是-128~127通常在实际中,转移的地址,并没有使用偏移量,而是在程序中使用标号的方式
3.3指令系统
1.数据传送类指令有哪几类?答内部8位数据传送指令、16位数据传送指令、外部数据传送指令、交换和查表类指令、
2.算数运算类指令有哪几类?答加法指令、减法指令、自加“1”指令、自减“1”指令、十进制调整指令、乘法指令、除法指令
3.逻辑运算类指令有哪几类?答逻辑与指令、逻辑或指令、逻辑异或指令、累加器A清0和取反指令、循环移位指令
4.控制转移类指令有哪几类?答无条件转移指令、条件转移指令、调用和返回指令、空操作指令
5.位操作类指令有哪几类?答位传送指令、位置位和位清0指令、位运算指令、位转移指令、判CY标志指令
3.4伪指令
1.常用的伪指令有哪几种它们分别有哪些功能答[标号:]ORG地址表达式功能:规定程序块或数据块存放的起始位置[标号:]END功能:汇编语言源程序结束标志,用于整个汇编语言程序的末尾处符号名EQU表达式(符号名=表达式)功能:将表达式的值或某个特定汇编符号定义为一个指定的符号名,只能定义单字节数据,并且必须遵循先定义后使用的原则,因此该语句通常放在源程序的开头部分[标号:]DB字节数据表功能:字节数据表可以是多个字节数据、字符串或表达式,它表示将字节数据表中的数据从左到右依次存放在指定地址单元[标号:]DW字数据表功能:与DB类似,但DW定义的数据项为字,包括两个字节,存放时高位在前,低位在后[标号:]DS表达式功能:从指定的地址开始,保留多少个存储单元作为备用的空间[标号:]BIT位地址功能:将位地址赋予标号,使标号在程序中可以作为位地址来使用
3.5汇编语言程序设计基础
1.分支程序的两种结构有什么区别?答分支程序结构有双分支和多分支两种,多分支程序是指经过某个条件判断之后,程序有多个流向三个以上多分支程序也叫散转程序
2.什么是循序程序结构,它有什么特点?答在程序中,多次重复执行的某一段程序,可以采用循环程序的方式来缩短程序代码,减少程序占用的空间,达到优化程序结构的目的循环程序就是指利用散转指令反复转向多次需要重复使用的程序段循环程序本质上是分支程序的一种特殊形式,凡是分支程序可以使用的转移指令,循环程序一般都可以使用,并且由于循环程序在程序设计中的重要性,单片机指令系统还专门提供了循环控制指令,如DJNZ等
3.子程序有什么优点?答在程序中,子程序能将多次使用相同的一个程序段,定义为子程序,这样可节约资源,缩短程序所占篇幅
4.查表程序的用途?请举例说明答一些复杂的运算,若采用编程的方式来实现,会导致程序过于复杂,可以采用查表的方法,把运算可能产生的结果预先按照一定的规律编成表格,存放在ROM中,当程序要使用这些结果的时候,可以根据输入的参数值,从表中调出结果采用查表的方法可以使运算步骤减少,程序更加简洁,执行的速度也能大大提高例子请参看【例3-20】在程序中定义一个0~9的平方表,利用查表指令找出累加器A=04H的平方值
5.设计单片机晶振为12MHz,请思考1s的延时程序怎么编写程序段如下: DELAY:MOVR0,#50;延时1s的循环次数 DEL2:MOVR1,#10;延时10ms的循环次数 DEL1:MOVR2,#7DH;延时1ms的循环次数125次 DEL0:NOPNOPDJNZR2,DEL0DJNZR1,DEL1DJNZR0,DEL2第4单元P89C5x单片机的中断系统及定时/计数器
4.1P89C5x中断系统
1.什么是中断?有何特点?答中断是通过硬件来改变CPU的运行方向的单片机在执行程序的过程中,当CPU运行当前程序时,CPU之外的其它硬件例如定时器、串行口等会出现某些特殊情况,这些特殊情况会以一定的方式向CPU发出中断请求信号,要求CPU暂时中断当前程序的执行而转去执行相应的处理程序,待处理程序执行完毕后,再继续执行原来被中断的程序这种程序在执行过程中由于外界的原因而被中间打断的情况称为“中断”中断的特点分时操作、实时处理、故障处理
2.简述中断的控制过程系统的中断处理有以下几个步骤:1)中断响应的条件2)中断响应的过程3)关闭中断4)保护现场5)打开中断6)中断服务程序7)中断服务程序8)恢复现场9)打开中断10)恢复断点
3.和中断相关的寄存器有哪几个?简述这些寄存器每位的功能1IE中断允许控制寄存器IE.7EA:总中断允许控制位EA=1,开放所有中断,各中断源的允许和禁止可通过相应的中断允许位单独加以控制;EA=0,禁止所有中断IE.5ET2:定时器2中断允许位ET2=1,允许定时器2中断;ET2=0,禁止定时器2中断IE.4ES:串行口中断允许位ES=1,允许串行口中断;ES=0,禁止串行口中断IE.3ET1:定时器1中断允许位ET1=1,允许定时器1中断;ET1=0,禁止定时器1中断IE.2EX1:外部中断1中断允许位EX1=1,允许外部中断1中断;EX1=0,禁止外部中断1中断IE.1ET0:定时器0中断允许位ET0=1,允许定时器0中断;ET0=0,禁止定时器0中断IE.0EX0:外部中断0中断允许位EX0=1,允许外部中断0中断;EX0=0,禁止外部中断0中断2IP中断优先级寄存器IP.5PT2:定时器2中断优先控制位IP.4PS:串行口中断优先控制位IP.3PT1:定时器1中断优先控制位IP.2PX1:外部中断1中断优先控制位IP.1PT0:定时器0中断优先控制位IP.0PX0:外部中断0中断优先控制位3IPH中断优先高级寄存器高字节 IPH.5PT2H:定时器2中断优先控制高位IPH.4PSH:串行口中断优先控制高位IPH.3PT1H:定时器1中断优先控制高位IPH.2PX1H:外部中断1中断优先控制高位IPH.1PT0H:定时器0中断优先控制高位IPH.0PX0H:外部中断0中断优先控制高位
4.什么是中断的嵌套?使用时需要注意什么?当CPU响应某一中断时,若有优先权高的中断源发出中断请求,则CPU会中断正在进行的中断服务程序,并保留这个程序的断点,响应高级中断高级中断处理结束以后,再继续进行被中断的中断服务程序,这个过程称为中断嵌套如果发出新的中断请求的中断源的优先权级别与正在处理的中断源同级或更低,则CPU不会响应这个中断请求,直至正在处理的中断服务程序执行完以后才能去处理新的中断请求
5.外部中断源如何扩展?P89C5x系列单片机有三个定时器,如在某些应用中不被使用,则它们的中断可作为外部中断请求使用此时,可将定时器设置成计数方式,计数初值可设为满量程,则当它们的计数输入端T0P
3.4,T1P
3.5或T2P
1.0引脚发生负跳变时,计数器将加1产生溢出中断利用此特性,可把T0,T1或T2脚作为外部中断请求输入线,把计数器的溢出中断作为外部中断请求标志
4.2P89C5x单片机定时/计数器
1.P89C5x单片机有几个定时/计数器?它的内部结构如何?P89C5x单片机提供了3个16位的可编程定时/计数器,分别是定时/计数器0T0,定时/计数器1T1,定时/计数器2T2它们可以都可以用于定时或对外部脉冲计数,其中T0和T1与标准80C51一样的,P89C5x新增了还有T2P89C5x的定时/计数器由T
0、T
1、T
2、定时器方式寄存器TMOD、定时器控制寄存器TCON、T2方式寄存器T2MOD、T2控制寄存器T2CON、T2捕获寄存器RCAP2H/RCAP2L组成
2.定时/计数器相关的寄存器有哪些?简述它们每位的功能定时/计数器T
0、T1的初始化通过定时/计数器的方式寄存器TMOD和控制寄存器TCON来完成定时/计数器T2的初始化通过定时/计数器的方式寄存器T2MOD和控制寄存器T2CON来完成1定时/计数器T
0、T1的方式寄存器TMOD1GATE:门控位2C/:功能选择位3M1和M0:T
0、T1的工作方式选择位2定时/计数器T
0、T1的控制寄存器TCON1TCON.7TF1:T1溢出标志位2TCON.6TR1:T1运行控制位3TCON.5TF0:T0溢出标志位4TCON.4TR0:T0运行控制位5TCON.3IE1:外部中断请求标志位6TCON.2IT1:外部中断1触发方式选择位7TCON.1IE0:外部中断0请求标志位8TCON.0IT0:外部中断0触发方式选择位3定时/计数器T2的方式寄存器T2MOD1T2MOD.1T2OE:T2输出允许位2T2MOD.0DCEN:向下计数允许位4定时/计数器T2的控制寄存器T2CON1)T2CON.7TF2:T2溢出标志位2)T2CON.6EXF2:T2外部标志位3)T2CON.5RCLK:串行口接受时钟选择标志位4)T2CON.4TCLK:串行口发送时钟选择标志位5)T2CON.3 EXEN2:T2外部允许控制位6)T2CON.2 TR2:T2运行控制位7)T2CON.1C/:T2的定时器/计数器方式选择位8)T2CON.0 CP/:T2的方式选择位
3.T
0、T1的工作方式有哪几种?分别介绍每种工作方式的特点T
0、T1工作于方式0时,它是一个13位定时/计数器T0的结构和操作与T1完全相同T
0、T1工作于方式1时,它是一个16位定时/计数器,方式1时结构与操作几乎完全与方式0相同,惟一差别是二者计数位数不同T0的结构和操作与T1完全相同T
0、T1工作于方式2时,16位加法计数器的TH0和TL0具有不同功能,其中,TL0是8位计数器,TH0是重置初值的8位缓冲器T
0、T1工作于方式3时,T0被分解成两个独立的8位计数器TL0和TH0;T1处于方式3时停止计数
4.T2有什么特点?有哪些工作方式?P89C5x系列单片机中的T2是16位的可以自动重载、捕获和作为波特率发生器的定时器/计数器T2由两个8位的计数器TL
2、TH2,控制寄存器T2CON,方式寄存器T2MOD,捕获寄存器RCAP2L、RCAP2H组成T2的计数脉冲可以是片内的振荡脉冲,也可以是T2P
1.0引脚的外部计数脉冲捕获方式是指在一定的条件下,自动将计数器TH2和TL2的数据读入RCAP2H、RCAP2L,即TH2和TL2的当前内容捕获至T2的RCAP2H、RCAP2L寄存器中自动重装方式是指在一定条件下,自动将RCAP2H、RCAP2L中的数据送入TH
2、TL2RCAP2H和RCAP2L在此起预置计数初值的功能16位自动重装方式中,T2可通过C/设置为定时器或计数器方式;可通过DCEN编程控制向上或向下计数T2工作在波特率发生器方式时与自动重装载方式相似当TH2溢出时,T2TH
1、TL2重新装载来自RCAP2H、RCAP2L的16位的值程序预先设置第5单元P89C5x单片机串行口及应用
5.1串行通信基础
1.通信的两种基本方式是?它们有什么特点,简述适用于场合答通信有并行和串行两种方式并行通信的速度快,传输线多,成本高,适合近距离的场合串行通信的速度慢,传输线少,特别适合分级、分层和分布式控制系统及远程通信串行通信具有简单易行控制方便灵活通信可靠等特点并在硬件实现上具有经济性和实用性所以在很多场合得到了应用
2.串行通信中串行信号的传送方式有哪些?答按照数据传送方向,串行通信可分为单工simplex、半双工halfduplex和全双工fullduplex三种制式
3.简述串行通信中,同步通信和异步通信的工作原理在异步通信中,数据通常是以字符为单位组成字符帧传送的字符帧由发送端一帧一帧地发送,每一帧数据均是低位在前,高位在后,通过传输线被接收端一帧一帧地接收发送端和接收端可以由各自独立的时钟来控制数据的发送和接收,这两个时钟彼此独立,互不同步在同步通信中,通信时发送和接收双方建立时钟直接控制,使双方达到完全同步它是采用串行传送数据的通信方式,一次通信只传输一帧信息
4.串行通信的错误校验有哪几种?答奇偶校验、代码和校验、循环冗余校验
5.简述RS-232C的总线标准答RS-232C是一种异步串行通信总线标准它是由EIA美国电子工业协会制定的数据终端设备DTE与数据连接设备DCE间的物理接口标准标准规定:信息的开始为起始位,信息的结束为停止位;信息本身可以是
5、
6、
7、8位再加一位奇偶校验位如果两个信息之间无信息,则写“1”,表示空RS-232C总线为25根,采用D型25芯插头座(或总线为9根,采用D型9芯插头座)
5.2P89C5x单片机的串行端口及控制寄存器
1.串行端口的内部结构由哪几部分构成?答P89C5x单片机内部有两个独立的接收、发送缓冲器SBUFSBUF属于特殊功能寄存器物理上SBUF有两个一个是发送缓冲器用于存放接收到的数据,另一个是接收缓冲器用于存放欲发送的数据逻辑上SBUF只有一个,既表示发送缓冲器,又表示接收缓冲器接收或发送数据,是通过串行口的两条独立收发信号线RXDP
3.
0、TXDP
3.1来实现的
2.简述串行通信的过程答发送端发送数据时,首先是由一条写发送缓冲器的指令MOVSBUF,A,把数据并行写入串行口的发送缓冲器SBUF中,同时数据由TXD引脚串行输出当发送完一帧数据后,SBUF为空,硬件自动将发送中断标志位TI置1,请CPU发送下一帧数据接收端接收数据时,首先REN置1,接收端RXD引脚串行接收外部数据数据最低位首先进入移位寄存器,当收到一个帧完整的数据后,再并行送入接受缓冲器SBUF中,同时硬件自动将接受中断标志位RI置1,向CPU申请中断若CPU响应中断,需要软件方式将RI清除,同时读走SBUF内的数据MOVA,SBUF,并准备接受下一帧的数据
3.串行通信控制寄存器有哪些?它们的字节地址是多少?里面具体包含了哪些位,它们又什么作用?P89C5x的串行通信控制寄存器SCON、PCON、IESCON用来控制串行口的工作方式和状态,可以位寻址,字节地址为98HSCON各位的功能描述如下:1SM0/FE:该位和PCON.6SMOD0组合使用有两种功能2SM1该位和SM0组合,用于选择串行口的4种工作方式如表5-2所示3SM2:多机通信控制位4REN:允许串行接收位5TB8:存放发送数据的第9位6RB8:存放接收数据的第9位7TI:发送中断标志位,用于指示一帧数据是否发送完8RI:接收中断标志位,用于指示一帧数据是否接受完电源控制寄存器PCON是专门用来进行电源控制的而设置的专用寄存器,不可以位寻址,PCON的位地址为87H,复位值为00xxx000B1SMOD1波特率倍增位串行口工作在方式
1、方式
2、方式3时,若SMOD1=1,则波特率提高一倍;若SMOD1=0,则波特率不提高一倍2SMOD0决定串行端口控制寄存器SCON最高位的功能若SMOD0=0,SCON.7是SM0位;若SMOD0=1,SCON.7是FE标志中断允许控制寄存器IE中的ESIE.4为串行端口中断允许位当ES=1时,允许串行端口接受或发送中断;当ES=0时,禁止串行口中断
5.3串行通信工作方式及波特率
1.串行通信有哪几种工作方式?它们有什么特点?答P89C5x单片机的串行口有四种工作方式,通过SCON中的SM
1、SM2位来定义在方式0下,串行口作为同步移位寄存器使用,其波特率固定为fosc/12串行数据从RXDP
3.0端输入或输出,同步移位脉冲由TXDP
3.1送出这种方式常用于扩展I/O口在方式1下,串行口为波特率可调的10位通用异步接口UART发送或接收的一帧信息包括1位起始位“0”,8位数据位和1位停止位“1”方式2下和方式3,串行口为11位UART,传送波特率与SMOD1有关方式2的波特率固定为晶振频率的1/64或1/32;方式3的波特率由T
1、T2的溢出率和PCON中的SMOD1位决定发送或接收的一帧数据包括1位起始位“0”,9位数据位1位附加的第9位,发送时SCON中的TB8,接受时为RB8和1位停止位“1”
2.简述串行通信中串行口初始化具体步骤1确定T1的工作方式编程TMOD寄存器;2计算T1的初值,装载TH
1、TL1;3启动T1编程TCON中的TR1位;4确定串行口控制编程SCON寄存器;5串行口在中断方式工作时,还要进行中断设置编程IE、IP寄存器
3.串行通信的四种工作方式,它们的波特率分别是怎么规定的?1方式0和方式2在方式0中,波特率为时钟频率的1/12,即fosc/12,固定不变在方式2中,波特率取决于PCON中的SMOD1值:当SMOD1=0时,波特率为fosc/64;当SMOD1=1时,波特率为fosc/32,即波特率=×fosc/642方式1和方式3在方式1和方式3下,波特率由T
1、T2的溢出率和PCON中的SMOD1位决定即:方式1和方式3的波特率=×(T
1、T2的溢出率)
5.4串行端口工作方式的应用
1.串行通信进行点对点通信,通常使用哪种工作方式?答方式
12.使用串行口工作方式0时,实现串行输入并行输出,可使用什么TTL电平转换芯片答串行输入并行输出的移位寄存器CD
4094、74LS
2403.实现多机通信,使用哪种串行口工作方式?简述实现的步骤?答串行口的方式2和方式3有一个专门的应用领域,即多机通信1主机发送一帧地址信息,与所需的从机联络主机应置TB8为1,表示发送的是地址帧其中8位是地址,第9位为数据/地址的区分标志,若此位为1,表示为地址帧2所有从机初始化设置SM2=1,处于接受状态,准备接收一帧地址信息的状态3各从机接收到地址信息,因为RB8=1,则置中断标志RI中断后,首先判断主机送过来的地址信息与自己的地址是否相符对于地址相符的从机,置SM2=0,以接收主机随后发来的所有信息对于地址不相符的从机,保持SM2=1的状态,对主机随后发来的信息不理睬,直到发送新的一帧地址信息为止4从机发送数据结束后,要发送一帧校验和,并置第9位TB8为1,作为从机数据传送结束的标志5主机接收数据时先判断数据接收标志RB8,若RB8=1,表示数据传送结束,并比较此帧校验和,若正确则回送正确信号00H,此信号命令该从机复位即重新等待地址帧;若校验和出错,则发送0FFH,命令该从机重发数据若接收帧的RB8=0,则存数据到缓冲区,并准备接收下帧信息6主机收到从机应答地址后,确认地址是否相符,如果地址不符,发复位信号数据帧中TB8=1;如果地址相符,则清TB8,开始发送数据从机收到复位命令后回到监听地址状态SM2=1否第6单元单片机并行总线扩展
6.1并行扩展总线
1.单片机并行扩展总线,为什么P0口要接一个8位锁存器74LS373,而P2口却可以不接?答P0口是单片机中使用最频繁的总线通道,既要传送低8位地址信号,又要传送数据信号,PO口采用分时复用的方法解决这一矛盾单片机访问外围接口芯片时,根据指令的时序关系,P0口首先输出的是低8位地址信号(在ALE信号的高电平期间),在ALE信号的下降沿地址信号消失,然后P0口输出数据信号由于低8位地址信号在总线上的停留时间非常短,必须要有锁存器锁存低8位地址,常用的锁存器是74LS373单片机的ALE信号可以直接对接74LS373的G端,在ALE下降沿将地址信号锁存到74LS373中,从Q0~7输出的低8位地址与从P2口输出的高8位地址组成稳定的16位地址总线A0~A
152.单片机什么情况下需要增加总线驱动器?对对数据总线驱动器有什么要求?答微机系统总线的负载能力是有限的单片机的P0口可以驱动8个LSTTL电路,其它口能够驱动4个LSTTL电路当总线的实际负载超过承受能力时,必须接入总线驱动器单片机进行系统扩展时,有可能需要增加驱动能力的总线有数据总线、地址总线和一部分控制总线(、、)由于数据总线是双向的,因此要求扩展的总线驱动器必须具有双向三态缓冲功能
6.2存储器扩展
1.采用线选法并行扩展多片存储芯片时,为什么会出现地址空间不连续和“地址重叠”现象?采用译码法是否一定可以消除这两种现象?答线选法并行扩展多片存储芯片,是直接将单片机的高位地址线作为存储芯片的片选信号,高位地址线可组成的信号状态未能得到充分利用,因此可导致存储器地址空间不连续;“地址重叠”是指一个存储器芯片占有多个额定地址空间,一个存储单元具有多个地址,产生的原因是高位地址线中的无关位可组成多种状态,与存储芯片地址组合后可组成多个地址空间线选法若有未用的高位地址线就会出现“地址重叠”现象采用译码法片选不一定能消除地址空间不连续和“地址重叠”现象只要译码器输出的片选信号序号连续,地址空间就连续;若片选信号序号不连续,地址空间就不连续译码法地址线若没有无关位,就没有“地址重叠”现象,若有无关位,就会有“地址重叠”现象,比如部分译码法就可能会有“地址重叠”现象若有多片存储芯片,则需要多根高位地址线,同一时刻,因此每片存储芯片的地址可能不连续;特点简单明了,不增加电路,但地址空间不连续,运用于小规模系统
2.当单片机应用系统中程序存储器和数据存储器地址重叠时,它们的内容读取是否会发生冲突,为什么?答不会原因有二点1)控制信号不同数据存储器RAM的控制信号线为、程序存储器EPROM的控制信号为2)指令不同访问数据存储器RAM用MOVX指令;访问程序存储器EPROM用MOVC指令
6.3并行I/O口扩展
1.为什么输入接口要具有三态缓冲功能,而输出接口要具有锁存功能?答因为单片机系统的数据总线是所有I/O设备分时复用的设备传送数据时占用总线,不传送数据时应该和总线保持隔离状态,即对总线呈现高阻态输入设备只需要在向单片机传送数据时占用总线,别的时候应该和总线隔绝,因此应该具有三态缓冲功能,从而实现I/O设备的总线共享
(1)对单片机输出数据的锁存因为单片机对数据的处理速度比I/O设备快得多,单片机对I/O设备的访问时间比I/O设备对数据的处理时间短得多输出接口具有锁存功能,当单片机传送给输出设备的数据出现在数据总线上时,输出接口可以住数据,余后输出设备到输出接口取数据即可单片机数据总线可以为别的设备服务这样就解决了单片机与I/O口的速度协调问题
2.81C55内部结构有什么特点?其定时/计数器与单片机内部的定时/计数器有何异同?答81C55片内有三个可编程的I/O口,一个14位的可编程定时/计数器,还有256B的RAM81C55的定时/计数器与单片机内部定时/计数器的主要相同点是都可以作为定时/计数器用主要不同点如下
(1)8155的可编程定时/计数器实际上是一个14位减法计数器,其只有一种固定的工作方式,即14位计数;而单片机内部定时/计数器是加1计数器,可以有8位、13位和16位等计数方式
(2)81C55不论是定时还是计数工作都由外部提供计数脉冲,由TIMERIN端输入计数脉冲,使用时须注意芯片允许的最高计数频率;而单片机内部定时/计数器则不需要单独提供计数脉冲
(3)81C55的定时/计数器计满溢出时,由TIMEROUT端输出脉冲或方波,输出波形通过软件可定义为4种;而单片机内部定时/计数器则没有专门的输出脉冲端第7单元单片机串行总线扩展
7.1IIC总线
1.IIC总线只有两根数据线和时钟线两根连线,如何识别扩展器件的地址?答具有IIC总线结构的器件在出厂时已经给定了这类器件的特征编码另外,IIC总线器件还有三位引脚地址A
2、A
1、A0,可用硬件连接方式对这三位引脚接VCC或接地,形成地址数据,用于具有相同器件地址的器件识别
2.IIC总线一次完整的数据传输过程应包括哪些信号?答IIC总线一次完整的数据传输过程应包括启动(S)、发送寻址字节(SLA)、应答、发送数据、应答、…、发送数据、应答、停止(P),如图7-6所示
7.2SPI总线SPI总线有什么特点?其工作原理是什么?答SPI总线是Motorola公司推出的一种高速、全双工、同步通信的三线制总线,一根时钟线SCK,一根主机输入/从机输出数据线MISO、一根数据输入线主机输出/从机输入数据线MOSI,但总线上所有器件都必须另外加接片选信号有主模式和从模式两种工作模式,有4种可编程时钟速率,可编程串行时钟极性与相位有传送结束中断标志和写冲突出错标志、总线冲突出错标志SPI总线硬件功能非常强大,因此与SPI有关的软件就相当简单,使CPU有更多的时间处理其他事务主从式SPI允许在主机与外围设备之间进行串行通信只有SPI主器件能够启动数据的传输通过SPI控制寄存器SPCR将MSTR置“1”的方法设置主SPI传送数据(即处于主方式)当处于主方式时,向SPI数据寄存器SPDR写入字节,启动数据的传输SPI主设备立即在MOSI线上串行移出数据,同时SCK上提供串行时钟在SPI传送过程中,SPDR不能缓冲数据,写到SPI的数据直接进入移位寄存器,在串行时钟SCK下MOSI线上串行移出数据当经过8个串行时钟脉冲后,SPI状态寄存器SPSR的SPIF位置位,传送结束,同时产生一个中断请求从接收设备移位到主SPI的数据被传送到SPI数据寄存器SPDR因此SPDR所缓冲的数据是SPI所接收的数据在主SPI传送下一个数据之前软件必须通过读SPDR清除SPIF标志位,然后再执行当SPI被允许而未被配置为主器件时,它将作为从器件工作在从SPI中,数据在主SPI时钟控制下进入移位寄存器,当1B数据进入从SPI之后,被传送到SPDR为了防止越限(字节进入移位寄存器之前读该字节),从机软件必须在下一个字节的数据进入移位寄存器之前,先读SPDR中的这个字节,并准备传送到SPDR中
7.3单总线单总线通信的ROM功能命令有几个?分别有什么功能?答单总线通信的ROM功能命令有7个,这些命令与各个从机唯一的64位ID地址码相关,主要是用来管理、识别单总线芯片,实现传统“片选”功能
(1)搜索ROM系统初始上电时,主设备必须识别总线上所有从设备的ROM代码,以判断出从设备的数量和类型主设备通过重复执行搜索ROM循环(搜索ROM命令跟所着位数据交换),以找出总线上所有的从设备如果总线上只有一个从设备,则可以用读ROM命令来代替搜索ROMA命令,在每次执行完搜索ROM循环后,主设备必须返回至命令序列的第一步(初始化)
(2)读ROM主设备直接读取从设备的64位ID地址码,而无需执行搜索ROM过程该命令适用于总线上只有一个从设备的情况,如果该命令用于多节点系统,则必然发生数据冲突,因为每个从设备都会响应该命令
(3)匹配ROM匹配ROM命令跟所64位ROM代码当总线上有多个从设备时,允许主设备对多节点系统指定的从设备进行寻址从设备将接收到的ID地址码与各自的ID地址码进行比较,若相同表示该从设备被主设备选中,否则将继续保持等待状态
(4)直访ROM主机能够通过该命令同时访问总线上的所有从设备,而无须发出任何ROM代码信息例如,如果单总线器件采用DS18B20温度传感器,主机通过发出直访ROM命令后跟所温度转换命令,就可以同时命令总线上的所有DS18B20器件开始转换温度,这样大大节省了主机的时间需要注意的是,若直访ROM命令后跟随的是读操作命令,则该命令只能应用于单节点系统,即只有一个从设备的系统,否则将由于多个节点都响应该命令而引起数据冲突
(5)条件搜索ROM用于搜索输入电压超过设置的报警门限值的某个器件该命令的工作方式与搜索ROM命令一样,在完成条件搜索循环后,主设备必须返回至命令序列的第一步
(6)超速匹配ROM在超速模式下对从设备进行寻址
(7)超速跳过ROM在超速模式下,跳过读ROM命令3.功能命令与数据交换当执行以上7个ROM命令中的任意一个时,主设备就可以发送任何一个可使用的命令来访问相应的存储器和控制器件,进行数据交换第8单元单片机常用人机接口
8.1LED显示器及其接口
1.LED数码管的静态显示方式和动态扫描显示方式各有何特点?分别适用于什么场合?答LED静态显示方式下,每一位显示器的字段需要一个8位I/O口控制,而且该I/O口须有锁存功能,N位显示器就需要N个8位I/O口,每一位字段码分别从I/O控制口输出,保持不变直至CPU刷新显示为止,也就是各字段的亮灭状态不变静态显示方式编程较简单,但占用I/O口线多,硬件成本较高,一般适用于显示位数较少的场合动态扫描显示是将各位的所有相同字段线连在一起,每一位的a段连在一起,b段连在一起,…,dp段连在一起,共8段,由一个8位I/O口控制,而每一位的公共端(共阳或共阴com)由另一个I/O口控制数码管采用扫描方式轮流点亮动态扫描显示电路的特点是占用I/O端口线少,电路简单,硬件成本低,但编程较复杂,CPU要定时刷新扫描适用于显示位数较多的应用系统
2.若LED数码管变为6位,如何修改图8-6所示的动态显示电路及动态扫描子程序?答12673512673512673513911248101391124810PA0PA1PB2PA3PA4PA5PA6PA7PB5PB4PB3PB2PB1PB0RESETCEIO/MAD0~AD7ALEWRRD共阴极LEDRESET100Ώ×8EA+5VRDWRALEP0P
2.0P
2.78P89C51815575452×37406×2+5VDpgfedcba动态扫描子程序如下DIR4:MOVA#03H;8155初始化置A、B口为基本输出MOVDPTR#7F00H;置8155命令状态口地址MOVX@DPTRA;送工作方式控制字给8155LD0:MOVR0#7FH;置显示数据区末地址MOVR7#01H;置字位码初值反MOVAR7LD1:MOVDPTR#7F02H;置8155PB口地址MOVX@DPTRA;字位码送PB口MOVDPTR#7F01H;指向8155PA口MOVA@R0;取显示数ADDA#0EH;加TAB偏移量MOVCA@A+PC;读字段码CPLA;取反MOVX@DPTRA;字段码送PA口ACALLDELY;延时1msINCR0;修改显示单元地址MOVAR2JBACC.5LD2;判5位显示完否RLA;字位码左移一位MOVR
7.A;保存字位码AJMPLD1;转下一位显示LD2:RETTAB:DB3FH06H5BH4FH66H;字段码表DB6DH7DH07H7FH6FHDELY:MOVR7#02H;延时1ms子程序(fosc=12MHz)DY1:MOVR6#0F9HDJNZR6$DJNZR7DY1RET
3.点阵式LED显示器的工作原理是什么?答点阵LED显示器是将许多LED类似矩阵一样排列在一起组成的显示器件当单片机输出的控制信号,使得点阵中的LED有些发光,有些不发光,即可显示出特定的信息点阵式LED显示器常采用动态扫描方式显示若使某一个LED发光,只要将与该LED连接的行线加高电平,列线加低电平;若使某一列LED发光,只要将8根行线全加高电平,此列线加低电平;若使某一列LED部分发光,只要将需发光的行线加高电平,此列线加低电平
8.2LCD显示器及其接口
1.LCD1602液晶显示器的初始化程序要包括那几个步骤?答LCD1602模块初始化内容主要包括1清屏;2功能设置;3显示与不显示设置;4输入模式设置
2.如何编写程序,在LCD1602显示器的第2行第3列开始显示答将例8-6程序中的“MOVA#0C0H;第2行第1列”修改为“MOVA#0C3H;第2行第3列”,再就是把TAB2代码修改为显示代码“www.
8951.com”即可修改程序段如下;*****主程序*****ORG50HSTART:MOVSP#60;调整堆栈指针ACALLINIT;调初始化子程序ACALLCLS;调清屏子程序MOVA#80H;第1行第1列ACALLWRCMOVDPTR#TAB1ACALLPR_STRING;显示第1行字符串MOVA#0C2H;第2行第3列ACALLWRCMOVDPTR#TAB2ACALLPR_STRING;显示第2行字符串LOOP:AJMP$TAB1:DB20H4CH43H44H31H36H30H32H00H;字符“LCD1602”TAB2:DB20H57H57H57H2EH38H39H25H31H2EH43H4FH4DH21H;字符“www.
8951.com!”
8.3键盘及其接口
1.为什么会有“键抖动”?如何消除答由于案件开关的结构为机械弹性元件,在案件按下和断开时,触点在闭合和断开的瞬间会产生接触不稳定,引起输出电平不稳定,即出现“键抖动”现象键盘的抖动时间一般为5~10ms,抖动现象会引起CPU对一次案件操作进行多次处理,从而可能产生错误,因此必须消除抖动的不良后果消除“键抖动”不良后果的方法主要有硬件和软件去抖动两种方法硬件去抖动通常有双稳去抖电路、单稳去抖电路和RC滤波去抖电路其中RC去抖电路简单实用软件去抖动的原理是根据按键抖动的特性,在第一次检测到按键按下后,执行10ms左右的延时子程序后再确认该键是否确实按下,从而消除抖动
2.键盘扫描控制方式有几种各有何优缺点?答单片机应用系统中,对键盘的处理工作仅是CPU工作内容的一部分,CPU好要进行数据处理、显示和其他输入输出操作,因此键盘处理工作既不能占用CPU太多时间,又需要CPU对键盘操作能及时作出响应CPU对键盘处理控制的工作方式有以下几种程序控制扫描方式程序控制扫描方式是在CPU工作空余,调用键盘扫描子程序,响应键输入信号要求程序控制扫描方式的键处理程序固定在主程序的某个程序段当主程序运行到该程序段时,每次扫描键盘,判断是否键输入,若有,则计算按键编号,执行相应键功能子程序这种工作方式,对CPU工作影响小,但应考虑键盘处理程序的运行间隔周期不能太长,否则会影响对键输入响应的及时性定时控制扫描方式利用定时/计数器每隔一段时间产生定时中断,CPU响应中断后对键盘进行扫描,并在有键闭合时转入该键的功能子程序定时控制扫描方式与程序控制扫描方式的区别是,在扫描间隔时间内,前者用CPU工作程序填充,后者用定时/计数器定时控制,定时控制扫描方式也应考虑定时时间不能太长,否则会影响对键输入响应的及时性中断控制方式中断控制方式是利用外部中断源,响应键输入信号当无键按下时,CPU执行正常工作程序当有键按下时,CPU立即产生中断,在中断服务子程序中扫描键盘,判断是哪一个键被按下,然后执行该键的功能子程序这种控制方式克服了前两种控制方式可能产生的空扫描和不能及时响应键输入的缺点,既能及时处理键输入,又能提高CPU运行效率,但要占用一个宝贵的中断资源第9单元单片机模拟量接口
9.1D/A转换接口
1.选择D/A转换器时,主要应该从哪几个方面进行考虑?答选择D/A转换器时,主要应该从以下几个方面进行考虑
(1)输入信号的形式输入信号有并行和串行形式,根据实际要求选定在实际应用中大多数为并行输入,串行输入节省数据线,但速度较慢,适用于远距离数据传输
(2)分辨率和转换精度根据对输出模拟量的精度要求,来确定D/A转换器的分辨率和转换精度常用的分辨率有8位、10位、12位,相应的百分率值为
0.392%、
0.0978%、
0.0244%在精度指标方面,零点误差和满量程误差可以通过电路调整进行补偿,因此主要看芯片的非线性误差和微分非线性误差
(3)建立时间D/A转换器的电流建立时间很短,一般为50~500ns若是输出电压形式,加上运算放大器电路,电压建立时间一般为1~几个μs,一般都可以满足系统要求
(4)输入锁存器的情况D/A转换器的输入部分有不带输入锁存器、带一级输入锁存器和带两级输入锁存器三种类型,后两种可以工作于单缓冲和双缓冲方式这可根据对D/A转换器工作方式的要求来选择
(5)转换结果的输出形式转换结果的输出形式有电流或电压,有单极性或双极性,有不同量程,还有多通道输出方式可根据应用系统对模拟量形式的实际要求来确定其中有的要求可以采用不同方法来实现,例如要求输出为电压形式,可以选择内部带输出放大器的D/A芯片;也可以因兼顾其它性能而选择输出为电流形式的再外接放大器
2.DAC0832的单缓冲方式和双缓冲方式有何不同?答DAC0832有输入寄存器和DAC寄存器两级缓冲,可以工作于单缓冲和双缓冲方式单缓冲方式是把两个寄存器中的一个处于长通状态,另一个处于选通状态,或两个寄存器同时选通(两个寄存器的控制信号连接在一起)单缓冲方式多用于系统中只有一路D/A转换,或虽有多路D/A转换但不要求同步输出的情况双缓冲方式是单片机分两次发出控制信号,分时选通DAC0832的两个寄存器首先ILE、、有效,将数据锁存在输入寄存器;然后、有效,再将数据送入DAC寄存器双缓冲方式可以实现两路模拟量的同时转换输出
9.2A/D转换接口
1.选择A/D转换器时,主要应该从哪几个方面进行考虑?答选择A/D转换器时,主要应该从以下几个方面进行考虑
(1)分辨率和精度根据数据采集总的精度要求,合理确定A/D转换器的分辨率和精度,要考虑到整个输入通道的误差,除了A/D转换器的误差意外,还包括传感器、放大器等部分的误差一般来说,选分辨率高的就能提高测量精度,但分辨率相同的A/D转换器也有不同的转换精度
(2)转换时间主要取决于被测信号变化的快慢和对转换精度的要求根据采样定理,为了不失真地再现原信号,采样频率应该大于或等于被测信号中包含的最高频率的2倍工程上取到3~4倍,甚至10倍应该注意,A/D转换接口的转换过程包括硬件传输时间和软件操作时间硬件传输时间除了A/D转换器本身的转换时间外,还包括其它时间当接有采样/保持器时,必须考虑其获得时间;在高速采样(100KHz)时,还应考虑采样/保持器的孔径时间对输入信号最高频率的限制A/D转换板的“通过率”这一指标,就是对应于整板的硬件传输时间来说的软件操作时间一般不必考虑在高速数据采样系统中,若软件操作时间限制了采样频率的提高,就要采用直接存储器存取(DMA)方式目前常用A/D转换器中,双积分式精度较高,但转换时间较长(几十~几百ms),逐次逼近式的精度和速度都比较适中,且有较大的选择范围,转换时间为几~100μs;并行式转换时间最短,一般几十~几百ns可根据实际要求进行选择
(3)输入模拟电压的类型根据输入模拟电压的实际情况(单路还是多路、单极性还是多极性、幅值大小等)来选择合适的A/D转换器如果考虑到其它主要指标,所选的A/D转换器不能满足这些要求,可以采用辅助措施,如加接多路开关、偏置电压、信号分压或放大电路等
(4)输出数据的形式考虑系统对A/D转换器输出数据形式的要求(并行或串行方式、二进制码或BCD码等),选择符合要求的A/D转换器若不能满足要求,可用软件方法帮助实现另外需注意,单片机的某些型号中带有A/D转换器,如Philips公司的P87LPC700系列、P89LPC900系列及C8051F000系列单片机都带有不同位数的A/D转换器在选用时可予以考虑
2.在图9-17所示ADC0809与单片机的接口电路中,启动A/D转换指令MOVXDPTR#7FF8H和MOVX@DPTRA两条指令中包含了哪些信息?具体作用是什么?答这两条指令中包含三份信息,起到三种作用三份信息
①片选ADC0809(P
2.7有效);
②当前转换的通道地址(P
2.
2、P
2.
1、P
2.0=000);
③写ADC0809(有效)三种作用
①DPTR=7FF8H最低3位地址A2A1A0
(000)输入到ADC0809模拟信号通道地址输入端ADDC、ADDB、ADDA;
②P
2.7有效与有效(均为低电平)或非后为“1”,使ADC0809的ALE信号有效,锁存从ADDC、ADDB、ADDA输入的通道地址000;
③同时使ADC0809START信号有效,启动A/D转换第10单元单片机应用系统设计方法和实例
10.1单片机应用系统的设计过程单片机应用系统设计的内容和步骤有哪些?答单片机应用系统设计的内容和步骤是首先确定任务;其次进行方案设计;第三进行硬件电路设计;最后进行软件设计
10.2简易数字电压表设计
1.本例中A/D转换的最小分辨率是怎么确定的?答5/
2562.P1口和数码管之间为什么要用74LS244?答8051的I/O端口驱动能力很小,为了电路可靠工作,需要用8线驱动器74LS244来驱动数码管
10.3步进电动机控制P2口输出时为什么要用光电耦合器?答步进电机绕组断电时要产生反电动势,会对MCU造成严重的干扰在P2口输出时用光电耦合器可有效避免这种干扰,从而使系统可靠性提高。