《单片机原理、应用与仿真》教材习题答案_第1页
《单片机原理、应用与仿真》教材习题答案_第2页
《单片机原理、应用与仿真》教材习题答案_第3页
《单片机原理、应用与仿真》教材习题答案_第4页
《单片机原理、应用与仿真》教材习题答案_第5页
已阅读5页,还剩22页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

习题与思考1一、填空1低电平2ALE33248R0R720H2FH586程序7上电复位按键复位80000H下一条指令的首地址92二、选择题1B2A3B4A5A6C7B三、判断题12345678四、简答题1什么是单片机什么是单片机应用系统两者有什么区别答单片机又名微控制器,是将微型计算机中的中央处理器(CPU)、随机存储器(RAM)、只读存储器(ROM)及I/O口电路等主要部件,结合连接它们的总线集成在一块芯片上,即它是一块智能芯片。单片机系统单片机本身只是一块芯片,它并不能集成计算机的全部电路,因此需要加上时钟、复位电路等,才能构成单片机最小应用系统;若最小系统资源不足时,还需扩展外围电路和外围芯片等,从而构成能满足应用要求的单片机系统。单片机应用系统它是为实际的控制应用而设计的,该系统与控制对象结合在一起,是满足嵌入式对象要求的全部电路系统。它在单片机的基础上配置了前/后向通道接口电路、人机交互通道接口电路、串行通信接口等面向对象的接口电路。另单片机系统和单片机应用系统都是软硬件结合的系统,缺一不可。2AT89S51单片机芯片控制线有几根每一根控制线的作用是什么答控制线主要有4根RST/VPD(9脚)复位信号输入端,高电平有效。(29脚)程序存储允许输出端,是片外程序存储器的读选通信号,低电平PSEN有效。(30脚)地址锁存控制信号/编程脉冲输入端。ROG/AL/VPP(31脚)访问程序存储器控制信号/编程电源输入端。3单片机特殊功能寄存器有哪些主要作用是什么答特殊功能寄存器见表41,主要作用是实现专门规定的功能4AT89S51单片机片内RAM是如何划分的,各有什么功能答(1)片内RAM低128B片内RAM低128B单元分为工作寄存器区、位寻址区、用户RAM区3部分,工作寄存器区。AT89S51单片机内部低32B单元分成4个工作寄存器组,每组占8个单元,分别用R0R7来表示。单片机运行时只能允许1个工作寄存器组作为当前工作寄存器组。位寻址区。AT89S51单片机具有位处理功能,因此存储空间有一个位寻址区,位于片内RAM的20H2FH单元中,16个单元共128位,其位地址范围为00H7FH。该区也可以作为普通的RAM单元使用,进行字节操作。用户RAM区。30H7FH单元作为用户RAM区。这些单元作为数据缓冲区,在实际应用中AT89S51的堆栈一般设在30H7FH范围内。(2)片内RAM高128B片内RAM高128B单元称为特殊功能寄存器区(SPECIALFUNCTIONREGISTER)。由于这些寄存器的功能已专门规定,故称为特殊功能寄存器(SFR)。5简述程序状态寄存器PSW各位的含义。单片机如何确定和改变当前的工作寄存器答CY进位标志,常用C表示。在进行加法(或减法)运算时,若运算结果最高位有进位(或借位)时,C置“1”,否则置“0”;在进行位操作时,C作为位操作累加器。AC半进位标志。在进行加法(或减法)运算时,若低半字节向高半字节有进位(或借位)时,AC置“1”,否则置“0”;AC还作为BCD码运算调整时的判别位。F0用户标志。由用户置位、复位,作为软件标志。RS1、RS0工作寄存器指针,用来选择当前工作的寄存器组。单片机复位时,RSLRS000,CPU选中第0组为当前工作寄存器。OV溢出标志。反映运算结果是否溢出,溢出时OV为“1”,否则为“0”。P奇偶标志。反映累加器A中内容的奇偶性。若A中有奇数个“1”,则P置为“1”,否则P置为“0”。6PC是什么寄存器是否属于特殊功能寄存器它有什么作用答PC是程序计数器,不属于特殊功能寄存器,其存放的内容是下一个要取的指令的16位存储单元地址。7当单片机外部扩展RAM和ROM时,P0口,P1口,P2口,P3口各起何作用答P0口数据/低8位地址复用线P1口I/O端口线P2口高8位地址线,多余的为I/O端口线P3口控制线8时钟周期、状态周期、机器周期、指令周期的含义是什么答时钟周期是为单片机提供定时信号的振荡源的周期,也称为振荡周期,是单片机的基本时间单位。时钟周期经2分频后成为内部两相脉冲信号P1、P2,用做单片机内部功能部件按序协调工作的控制信号,称为状态时钟周期,简称状态周期。CPU完成一个基本操作所需要的时间称为机器周期。规定一个机器周期的宽度为6个状态周期,并依次表示为S1S6。由于一个状态又包括两个时钟周期,因此,一个机器周期总共有12个时钟周期执行一条命令所需要的时间称为指令周期。AT89S51单片机有单周期指令、双周期指令和四个机器周期指令。习题与思考21单片机应用系统设计与开发过程分为几个阶段答单片机系统的传统开发过程一般可分为3步(1)单片机系统原理图设计、选择元器件插件、安装和电气检测等简称硬件设计。(2)单片机系统程序设计、汇编编译、调试和编程等简称软件设计。(3)单片机系统实际运行、检测、在线调试直至完成简称单片机系统综合调试。2如何创建汇编语言原代码仿真文件答创建汇编语言原代码仿真文件需要如下4步(1)源文件的建立(2)建立工程文件(3)工程设置(4)编译、连接3如何在原理图中进行汇编语言源代码仿真调试答在原理图中进行汇编语言源代码仿真调试需要如下4步(1)安装VDMAGDIEXE插件(2)PROTEUS的设置(3)KEILVISION3的设置(4)PROTEUS与KEILVISION3联调4如何实现用KEILC51与PROTEUS原理图进行高级语言源代码仿真调试答(1)通过KEILC51生成仿真文件(2)添加仿真文件(3)系统调试5单片机的硬件调试主要内容有哪些答(1)PROTEUS电路设计。利用PROTEUS进行单片机系统硬件设计,在ISIS平台上进行单片机系统电路设计、选择元器件、插接件、连接电路和电气检测。(2)KEIL源程序设计。在KEIL平台上进行单片机系统程序设计、编辑、汇编编译、调试,最后生成日标代码文件HEX;或在ISIS平台上进行单片机系统程序设计、编辑、汇编编译、调试,最后生成目标代码文件HEX。(3)PROTEUS实时仿真。在ISIS平台上将目标代码文件加载到单片机系统中,并实现单片机系统实时交互、协同仿真,它在相当程度上反应了实际单片机系统的运行情况。(4)PCB与硬件的设计和制作。利用PROTEUS自动生成PCB板电路图,并制作PCB板,安装元器件和接口,利用开发系统将上面生成的HEX文件下载到单片机芯片,完成调试与设计。6单片机的软件设计步骤是什么答(1)程序的总体设计。这是指从系统高度考虑程序结构、数据形式和程序功能的实现手法及手段。在拟定总体设计方案时,要求设计者根据系统的总任务选用切合实际的程序设计方法,画出程序的流程图(2)程序的编制。程序流程图绘制成后,整个程序的轮廓和思路已十分清楚。设计者就可统筹考虑和安排一些带有全局性的问题,例如程序地址空间分配、工作寄存器安排、数据结构、端口地址和输入/输出格式等,然后依照流程图来编制具体程序。(3)程序的检查和修改。一个实际的应用程序编好以后,往往会有不少潜在隐患和错误,因此,源程序编好后在上机调试前进行静态检查是十分必要的。静态检查采用自上而下的方法进行,发现错误及时修改,可以加快整个程序的调试进程。(4)仿真调试。在硬件系统测试合格且应用程序通过汇编检查合格后,方能进入仿真调试。习题与思考3一、填空1清零223保持不变8片内RAM低128B和特殊功能寄存器SFR5地址6ADPTRPC71031H862H30H不定值97030H60H1000H10HF1H01H118140H二、选择题二、选择题1D2B3D4B5D6C7B8D9C10C三、判断题12345678910四、简答题1AT89S51单片机有哪几种寻址方式,各寻址方式所对应的寄存器或存储器空间如何寻址方式寄存器、存储空间寄存器寻址寄存器R0R7、A、AB、DPTR和C(位累加器)直接寻址片内RAM低128B,特殊功能寄存器SFR寄存器间接寻址片内RAM低128B,片外RAM立即寻址程序存储器ROM变址寻址程序存储器ROM相对寻址程序存储器ROM位寻址可位寻址的单元(片内RAM的20H2FH单元和部分SFR)2指出下列每条指令操作数的寻址方式和功能。(1)MOVA,00H立即寻址(2)MOVA,26H直接寻址(3)MOVA,R0寄存器间接寻址(4)MOVA,R3寄存器寻址(5)MOVCA,APC变址寻址(6)SJMPLOOP相对寻址3在AT89S51片内RAM中,已知10H20H,20H30H,30H40H,40H50H。分析下列指令,说明源操作数的寻址方式以及按顺序执行每条指令后的结果。MOVA,30HA40HMOVR0,AR040HMOVP1,0F0HP10F0HMOVR0,10H40H20HMOVDPTR,2040HDPTR2040HMOV30H,20H30H30HMOVR0,10HR020HMOVP0,R0P020HMOV40H,10H40H10HMOVA,R0A30HMOVP2,P1P20F0H4若(A)00H(R0)20H,(R1)21H,R3)0AH,(20H)2CH,(21H)0FH,写出下列各指令独立执行后寄存器和存储单元的内容。若该指令影响标志位,写出CY、AC、OV和P的值。MOVA,R0A2CHANL20H,0F0H20H0F0HADDA,R3A0AHCY0、AC0、OV0、P0SWAPAA00HDECR121H0EHXCHDA,R1A0FH21H00H5已知20HX,21HY和22HY,图示说明如下程序执行后堆栈中的内容。MOVSP,82HPUSH20HPUSH21HPUSH22H6分别写出下列程序执行后累加器A和PSW中的内容。(1)MOVA,0FEHADDA,0FEHA0FCHCY1AC1OV0P0(2)CLRAADDA,00HMOVA,5AHADDCA,0A4HA0FEHCY0AC0OV0P17若CYL,P110101010B,P311101001B。指出执行如下程序后,CY、P1口及P3口内容的变化情况。MOVP13,CMOVP14,CMOVC,P16MOVP36,CMOVC,P10MOVP34,CCY0P110111010P3101010018设R012H,A034H,片内RAM单元的12H80H,56H10H。说明如下程序执行后各单元内容的变化情况。MOVA,R0A80HMOVR0,56H12H10H85HY84HY83HX82H不定值MOV56H,A56H80HMOVR0,0FFHR00FFH9若30H60H,写出执行如下程序后累加器A、寄存器R0及内部RAM60H、61H、32H单元中的内容。MOVA,30HA60HMOVR0,AR060HMOVA,0AHA0AHMOVR0,A60H0AHMOVA,00HA00HMOV61H,A61H00HMOV62H,30H62H60H10已知A64H,R028H,28H0BCH,写出执行如下程序后A的内容。ANLA,25HA24HORL28H,A28H0BCHXRLA,R0A98HCPLAA67H五、编程题1使用数据传送指令完成下列要求的数据传送(1)R0的内容送给R2。MOVA,R0MOVR2,A(2)将数0AH送给片内RAM20H单元。MOV20H,0AH(3)片内RAM20H单元的内容送给片内RAM60H单元。MOVR0,60HMOVA,20HMOVXR0,A(4)片内RAM20H单元的内容送给片外RAM1000H单元。MOVDPTR,1000HMOVA,20HMOVXDPTR,A(5)片内RAM20H单元的内容送给片外RAM60H单元。MOVR0,60HMOVA,20HMOVXR0,A(6)片外RAM60H单元的内容送给片内RAM20H单元。MOVR0,60HMOVXA,R0MOV20H,A(7)片外RAM2000H单元的内容送给片内RAM20H单元。MOVDPTR,2000HMOVXA,DPTRMOV20H,A(8)程序存储器ROM2000H单元的内容送给片内RAM20H单元。MOVDPTR,2000HMOVA,00HMOVCA,ADPTRMOV20H,A(9)程序存储器ROM2000H单元的内容送给片外RAM60H单元。MOVDPTR,2000HMOVA,00HMOVCA,ADPTRMOVR0,60HMOVXR0,A(10)将片内RAM20H单元的内容与片外RAM60H单元的内容交换MOVR0,60HMOVXA,R0XCHA,20HMOVXR0,A2编程使P1口的状态发生如下变化,然后仍从P1口输出。P10位置1,P17、P13位清0,P16、P14取反,P11、P12、P15位不变。ORG0000HSETBP10CLRP17CLRP13CPLP16CPLP14END3根据下列要求写出指令序列。(1)内部数据存储区20H和21H单元各存放有一个压缩BCD码数据,求其和并以BCD码形式存入22H单元。ORG0000HMOVA,20HADDA,21HDAAMOV22H,AEND(2)编写拼字程序,将31H和30H单元的低4位拼成一个8位二进制数31H的低4位送高位,结果存入片外RAM1000H单元。ORG0000HMOVA,31HANLA,0FHSWAPAMOV20H,AMOVA,30HANLA,0FHORLA,20HMOVDPTR,1000HMOVXDPTR,AEND(3)判断片内RAM20H单元的内容,若为正数程序转向2100H;若为负数程序转向2200H;若为0程序转向2300H。ORG0000HMOVA,20HCJNEA,00H,L1LJMPM1L1JCM2LJMPM3L2ORG2100HM3LJMPL2ORG2200HM2LJMPL2ORG2300HM1LJMPL24在片外RAM的2040H2043H4个存储单元中,存有01、02、03、04四个数,试编写程序将它们传送到片内RAM的40H43H存储单元中。ORG0000HMOVDPTR,2040HMOVR0,40HMOVR7,04HLOOPMOVXA,DPTRMOVR0,AINCDPTRINCR0DJNZR7,LOOPEND习题与思考4一、填空10003H0013H,000BH、001BH、0023H2外部中断0,外部中断1,内部定时/计数器0,内部定时/计数器1,串行口中断,外部中断0,串行口中断3三个机器周期4用户RAM区85外部中断1内部定时/计数器1中断6IE0,IE1,TF1,TF0,TI,RI72,08开总中断和相应中断源的中断关闭定时/计数器的中断9512S二、选择题1C2AB3C4B5A6D7B8A9A三、判断题四、简答题1什么叫中断MCS51单片机能提供几个中断源几个优先级各个中断源的优先级怎样确定在同一优先级中各个中断源的优先级怎样确定中断是指计算机暂时停止原程序执行转而为外部设备服务(执行中断服务程序),并在服务完后自动返回原程序执行的过程。AT89S51单片机的中断源有5个,分别是外部中断0,外部中断1,内部定时/计数器0,内部定时/计数器1,串行口中断。各个中断源的优先级由IP(中断优先级控制寄存器)确定,对应位为1是高优先级,否则为低优先级。两个优先级高优先级和低优先级。对于同一优先级中所有中断源,按优先权先后排序。从高到低依次是外部中断0,内部定时/计数器0,外部中断1,内部定时/计数器1,串行口中断2写出AT89S51单片机5个中断源的入口地址、中断请求标志位名称、位地址及其所在的特殊功能寄存器。中断源中断请求标志位中断入口地址位地址所在的SFRINT0IE00003H89HTCONT0TF0000BH8DHTCON1IE10013H8BHTCONT1TF10013H8FHTCON串行口RI、TI0023H98H、99HSCON3开AT89S51单片机外中断1,如何操作写出操作指令。SETBEX14AT89S51单片机有几个定时器/计数器定时和计数有何异同2,定时和计数实质都是一个16位的加1计数器,作为定时器用时,加法计数器对内部机器周期脉冲计数。作为计数器使用时,加法计数器对外部事件计数。5AT89S51单片机内部的定时器/计数器控制寄存器有哪些各有何作用工作方式寄存器TMOD,设置定时/计数器的工作方式,不能位寻址。控制寄存器TCON,控制定时/计数器的启动,及其溢出标志。6定时器T0和T1各有几种工作方式定时器T0有4种工作方式;定时器T1有3种工作方式。7设AT89S51单片机的晶振频率为12MHZ,问定时器处于不同的工作方式时,最大定时范围分别是多少方式08192S方式165536S方式2256S方式3256S8设单片机的12MHZ,要求用T0定时150S,分别计算采用定时方式0、定OSCF时方式1和定时方式2的定时初值。方式0TH00FBHTL00AH方式1TH00FFHTL06AH方式2TH0TL06AH五、编程题1使用定时器从P10输出周期为1秒的方波,设系统时钟频率为12MHZ。计算计数初值由下式得(216)12/(12106)50000106X216500003CB0H所以TH03CH,TL00B0H。TMOD寄存器初始化化(TMOD)01HIE及IR的使用中断方式,要使EA1及ET0开放中断。有TR01启动定时。程序设计主程序ORG0000HLJMPSTARTORG000BHLJMPT0FORG0100HSTARTMOVTMOD,01H;定时器0工作方式1MOVTH0,3CH;设置计数初值MOVTL0,0B0HMOVR7,10每次定时50MS,10次翻转SETBEA;开放中断SETBET0;开放定时0中断SETBTR0;定时开始SJMP;等待中断中断服务程序ORG0200HT0FDJNZR7,T0F_RETCPLP10;输出取反T0F_RETMOVTH0,3CH;重新设置计数初值MOVTL0,0B0HRETIEND2试编写程序,使T0每计满500个外部输入脉冲后,由T1定时,在P10输出一个脉宽10MS的正脉冲(假设在10MS内外部输入脉冲少于500个)。答T0工作与计数模式,采用工作方式0,初始值为TH0F0H,TL00CH;T1为定时器工作,定时时间1MS,利用R0计数满10次为10MS,程序如下ORG0000HSJMPMAINORG000BHSJMPT0SORG001BHSJMPT1SORG0030HMAINMOVR0,0AHMOVTMOD,14HMOVTH0,0F0HMOVTL0,0CHMOVTH1,3CHMOVTL1,0B0HSETBEASETBET0SETBET1SETBTR0HERESJMPT0SMOVTH0,0F0HMOVTL0,0CHSETBTR1SETBP10RETIT1SMOVTH1,3CHMOVTL1,0B0HDJNZR0,L0CLRP10CLRTR1MOVR0,0AHL0RETIEND3已知12MHZ,采用查询方式编写24小时制的模拟电子钟程序,秒、分钟、OSCF小时分别存放于R2、R3、R4中。ORG0000HSJMPMAINORG30HMAINMOVR4,0MOVR5,0MOVR6,0MOVR7,0MOVTMOD,01HMOVTH0,3CHMOVTL0,0B0HMOVR0,10SETBTR0L0JBTF0,L1SJMPL0L1CLRTF0MOVTH0,3CHMOVTL0,0B0HDJNZR0,L0MOVR0,10INCR5MOVA,R5MOVB,10DIVABMOVR2,BSWAPAORLA,R2MOVR2,A/16进制转换为10进制CJNER5,60,L0MOVR5,0MOVR2,00HINCR6MOVA,R6MOVB,10DIVABMOVR3,BSWAPAORLA,R3MOVR3,ACJNER6,60,L0MOVR6,0MOVR3,00HINCR7MOVA,R7MOVB,10DIVABMOVR4,BSWAPAORLA,R4MOVR4,ACJNER7,24,L0AJMPMAINEND习题与思考5一、填空107520MA;20MA2发光二极管;LED;LCD3定时扫描;编程扫描;中断扫描4显示稳定;节省CPU;硬件开销大;节省硬件;占用CPU5扫描法;线反转法二、判断题123三、简答题1为什么要消除按键的机械抖动消除按键抖动的方法有几种常用键盘的键是一个机械开关结构,被按下时,由于机械触点的弹性作用,在触点闭合或断开的瞬间会出现电压抖动,抖动的时间一般为5MS10MS,如图58所示。抖动现象会引起单片机对一次按键操作进行多次处理,因此必须考虑去抖动措施。硬件方法和软件方法。2说明矩阵式键盘按键按下的识别原理。按键设置在行列的交叉点上,只要有键按下,就将对应的行线和列线接通,使其电平互相影响。如键盘有44个按键,则需要44条口线,若键7按下,则行线1与列线3接通。行1若为低电平,则列3也输出低电平,而其他列输出都为高电平,根据行和列的电平信号就可以判断出按键所处的行和列的位置。3键盘有哪三种工作方式,他们各自的工作原理及特点是什么随机方式是利用CPU的空闲时间,调用键盘扫描子程序,响应键盘的输入请求。中断扫描方式提高CPU的效率定时扫描方式利用单片机内部定时器,每隔一定时间CPU执行一次键盘扫描程序,并在有键闭合时转入该键的功能处理程序。定时扫描方式要求扫描间隔时间不能太长,否则有可能漏掉按键输入,一般取几十毫秒。4说明LCD显示器的工作原理,画出AT89S51单片机与LCD1602的接口电路连接图。四、设计题1设计将字符“AB”通过液晶模块LCD1602显示在屏幕的左边。ORG0000HLJMPSTARTORG000BHLJMPL1ORG0100HSTARTMOVTMOD,00HMOVTH0,00HMOVTL0,00HMOVIE,82HSETBTR0MOVR5,50HMOVSP,60HLCALLNEXT调用初始化程序MOVA,80H写入显示地址ACALLWHITEMOVA,41H字母“A”的代码LCALLWDRMOVA,81H写入显示地址ACALLWHITEMOVA,42H字母“B”的代码LCALLWDRSJMPL1MOVTH0,00H中断服务子程序MOVTL0,00HDJNZR5,L2MOVR5,50HL2RETINEXTMOVA,38H初始化功能设定,显示方式为162LCALLWHITEMOVA,0EH显示器开、光标开、光标不闪烁LCALLWHITEMOVA,06H字符不动,光标自动右移一格LCALLWHITERETWHITELCALLL3写入指令寄存器子程序CLRP35提供E端上升沿脉冲CLRP30使RS0,选通命令寄存器CLRP31使R/W0,发出写信号SETBP35MOVP1,A写控制命令CLRP35RETWDRLCALLCBUSY写入数据寄存器子程序CLRP35提供E端上升沿脉冲SETBP30使RS0,选通命令寄存器CLRP31使R/W0,发出写信号SETBP35MOVP1,A写显示数据CLRP35RETL3PUSHACC检查忙碌子程序LOOPCLRP30SETBP31使R/W1,发出读信号CLRP35SETBP35MOVA,P1读状态CLRP35JBACC7,LOOP若最高位1,表示LCD忙,等待POPACCACALLDELAYRETDELAYMOVR6,255延时子程序D1MOVR7,255D2DJNZR7,D2DJNZR6,D1RETEND2设计一个AT89S51外扩键盘和显示电路,要求扩展8个键,4位LED显示器。习题与思考6一、填空1程序表格28KB34KB144AFFFH5方式0方式1方式2二、判断题1234三、简答题114172低8位地址线与数据线共用P0口3访问外部RAM用MOVX指令,访问内部RAM时使用MOV指令访问内部RAMMOVA,30H访问外部RAMMOVR0,30HMOVXA,R04MOVDPTR,2001HMOVXA,DPTRSWAPAMOV30H,AINCDPTRMOVXA,DPTRORLA,30HINCDPTRMOVXDPTR,A5通过D7位区分,D71为方式控制字,D70为C口按位置复位控制字四、设计题1使用AT89S51芯片外扩1片E2PROM2816,要求2816兼作程序存储器和数据存储器,且首地址为8000H。要求(1)确定2816芯片的末地址。87FFH(2)画出该应用系统的硬件连线图。2使用AT89S51单片机和8255A芯片扩展I/O端口,采用共阳极数码管循环显示09。硬件电路图程序ORG0000HAJMPMAINORG0100HMAINMOVDPTR,00C0H控制字地址MOVA,80HMOVXDPTR,A写入控制字L1MOVR0,00HLMOVDPTR,TAB查询要显示的字符的代码MOVA,R0MOVCA,ADPTRMOVDPTR,0040HB口地址MOVXDPTR,A将数据送入DPTRINCR0数字加1ACALLDELAY调延时程序CJNER0,10,L是否为10AJMPL1TABDB0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H共阳极DELAYMOVR4,20DEL3MOVR5,50延时程序DEL1MOVR6,249DEL2DJNZR6,DEL2DJNZR5,DEL1DJNZR4,DEL3RETEND习题与思考71分辨率转换时间转换精度5V/212122MV。209375V。33种连接方式。直通方式适合于不带微机控制的系统单缓冲方式带微机控制的系统,通常只有一路模拟量输出。双缓冲方式带微机控制的系统,一般有两路模拟量输出。4逐次比较式A/D转换是输入的模拟信号与不同的参考电压逐次比较,使转换后的数值由高位到低位一位一位地形成。转换速度转换精度5312MV122MV762V6延时方式延时一段时间后采集,与另外两种方式比较,采集不及时。查询方式是查询EOC引脚的状态,占用CPU中断方式是将EOC经反相器接AT89S51单片机的外部中断引脚,不占用INT0CPU。7在一个由AT89S51单片机与一片ADC0809组成的数据采集系统中,ADC0809的8个输入通道的地址为7FF8H7FFFH,试画出有关接口电路图,并编写程序,要求每隔1分钟轮流采集一次,共采样20次,其采样值存入片外RAM2000H单元开始存储区中。ORG0000HLJMPSTARTORG000BHLJMPT0FORG0100HSTARTMOVSP,70HMOVDPTR,2000HPUSHDPLPUSHDPHMOVTMOD,01H;定时器0工作方式1MOVTH0,3CH;设置计数初值MOVTL0,0B0HMOVR7,20每次定时50MS,共20次MOVDPTR,7FF8HMOVR5,08H;每次采集8个点MOVR6,20;采集20次MOVR1,40H;数据暂存起始地址SETBEA;开放中断SETBET0;开放定时0中断SETBTR0;定时开始SJMP;等待中断中断服务程序ORG0200HT0FDJNZR7,T0F_RETCLREAMOVDPTR,7FF8HLOOPMOVXDPTR,A启动A/D转换SETBP10JNBP10,查询P10状态MOVXA,DPTR读取转换结果MOVR1,A转换结果送入内部数据存储区INCDPTR指向下一个通道INCR1修改数据区指针DJNZR5,LOOPMOVR5,05POPDPHPOPDPLMOVR1,40HCOPYMOVA,R1MOVXDPTR,AINCDPTRINCR1DJNZR5,COPYPUSHDPLPUSHDPHMOVR7,20每次定时50MS,共20次MOVDPTR,7FF8HMOVR5,08H;每次采集8个点MOVR1,40H;数据暂存起始地址SETBEADJNZR6,T0F_RETCLREAT0F_RETMOVTH0,3CH;重新设置计数初值MOVTL0,0B0HRETIEND习题与思考8一、填空1单工全双工半双工24方式2方式3314SCONSM0SM15一致6数据帧地址帧7TI8RISM2二、判断题123456三、选择题1A2C。3C四、简答题1发送数据过程单片机通过指令MOVSBUF,A将所要发送的数据一位一位送入串行口,发送后将标志位TI置1。接收过程接收方的单片机首先要将REN位置1,表示允许接收;然后发送方将数据传送到接收方后会触发中断,单片机通过判断RI标志位后,通过指令MOVA,SBUF读取数据,数据读取后要用软件清除标志位RI。2四种工作方式。三种帧格式。方式0的波特率为或者;方1212式1波特率;方式2的波特率独立波特率发生器溢出的溢出率或定时器BRT1T32SMOD率;OSCF64SOD2方式3波特率率独立波特率发生器溢出的溢出率或定时器132S3不会,因为,它们在物理上是独立的,虽然共用一个地址号,但是接收缓冲器只能读出,不能写入,而发送缓冲器则只能写入,不能读出。4在单片机多机通信中,要确保主机与从机之间可靠的通信,必须保证通信接口具有识别功能,串行口控制器SCON的SM2就可以满足这一要求。当串行口以方式2或方式3工作时,发送和接收的每一帧信息都是11位,其中第9位数据是可编程的,通过对SCON中的TB8置“1”或清零,以区分发送的是地址还是数据,若TB8为1发送的是地址帧,否则发送的是数据帧。如果从机的控制位SM21,则当接收的是地址帧时,数据装入SBUF,并置RI1;如果接收的是数据帧时,则从机不予理睬,数据丢弃。51200BPS6SCON50H计数初值为0FAH习题与思考91单片机应用系统开发流程是什么答单片机应用系统的开发流程除了产品立项后的方案论证外,主要有总体设计、硬件系统设计与调试、软件设计、仿真调试和系统脱机运行检查5个部分。在总体设计完成后,硬件系统设计调试和应用程序设计可以同时进行,而应用程序仿真调试则应在硬件系统设计与制作调试完成后进行。2单片机开发系统由哪些部分组成各部分的具体任务是什么答主要有总体设计、硬件系统设计与调试、软件设计、仿真调试和系统脱机运行检查5个部分组成1总体设计总体设计包括以下几方面1)机型选择。2)器件选择3)软硬件功能划分。2硬件设计硬件的设计是根据总体设计要求,进行系统电路设计和PCB绘制。3软件设计软件设计包括拟定程序的总体方案、画出程序流程图、编制具体程序以及程序的检查修改等。4系统脱机运行检查系统应用程序调试合格后,利用程序写入器将应用程序固化到单片机的程序存储器中,然后将应用系统脱离仿真器进行上电运行检查。由于单片机实际运行环境和仿真调试环境的差异,即使仿真调试合格,脱机运行时也可能出错,所以这时应进行全面检查,针对可能出现的问题,修改硬件、软件或总体设计方案。3应用系统可靠性设计方法有哪些答提高系统可靠性的措施如下(1)采用抗干扰措施1)抑制电源噪声干扰安装低通滤波器、减少印制板上交流电引进线长度,电源的容量留有余地,完善滤波系统、逻辑电路和模拟电路的合理布局等。2)抑制输入/输出通道的干扰使用双绞线、光电隔离等方法和外部设备传送信息。3)抑制电磁场干扰电磁屏蔽。2提高元器件可靠性1)选用质量好的元器件并进行严格老化测试、筛选。2)设计时技术参数留有一定余量。3)印制板和组装的工艺质量。4)E2ROM型和FLASH型单片机不宜在环境恶劣的系统中使用。3采用容错技术1)信息冗余通信中采用奇偶校验、累加和校验、循环码校验等措施,使系统具有检错和纠错能力。2)使用系统正常工作监视器(WATCHDOG)对于内部有WATCHDOG的单片机,合理选择监视计数器的溢出周期,正确设计监视计数器的程序。对于内部没有WATCHDOG的单片机,可以外接监视电路。习题与思考101KEILC51编译器除了支持基本数据类型之外,还支持哪些扩充数据类型答BIT位类型,可以定义一个位变量,但不能定义位指针,也不能定义位数组。SFR特殊功能寄存器

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论