1单片机技术考试习题精解题1·2-6堆栈有什么功能?堆栈指示器(SP)的作用是什么?在程序设计中,为什么需要对堆栈进行重新赋值。答:在单片机程序设计中,堆栈主要是为子程序的调用和中断操作设立的。其具体功能主要有保护断点和保护现场。堆栈指针的作用就是指向栈顶元素的,通过它还可以对栈顶元素进行出栈操作当堆栈中的元素进行出栈或入栈操作时,都会使栈顶元素发生变化,堆栈指针SP就需要重新赋值,让其指向新的栈顶元素。题2·MC51的中断系统有哪些中断源?答:C51有5个中断源如下。两个外部中断源分别是INT0、INT1,2个定时/计数中断源,一个串口中断源,全部中断都分为高级和低级两个优先级。题3·4-1简述C51单片机直接支持的数据类型,并加以说明。答:字符型(char):char有有符号字符型signedchar和无符号字符型unsignedchar之分,他们的长度都为一个字节。对于signedchar,其字节的最高位是符号位,“0”表示正数,“1”表示负数,以补码表示,表示的数值范围是-128~127;对于unsignedchar,表示的数值范围是0~256,可以用来存放无符号的数值,也可存放西文字符。整型(int):int有有符号字整型signedint和无符号整型unsignedint之分,他们的长度均为双字节。对于signedint,它存放双字节有符号的数值,以补码表示,表示的数值范围是-327698~32767;对于unsignedint,它存放双字节无符号的数值,表示的数值范围是0~65535。长整型(long):long有有符号字整型signedlong和无符号整型unsignedlong之分,他们的长度均为4个字节。对于signedlong,它存放4字节有符号的数值,以补码表示,表示的数值范围是-2147483648~2147483647;对于unsignedlong,它存放双字节无符号的数值,表示的数值范围是0~4294967295。浮点型(float):float型数据长度为4个字节,格式符合IEEE-754标准的单精度浮点型数据,包含指数和尾数两部分,最高位为符号位,“0”表示正数,“1”表示负数,其余8位为阶码,最后23位为尾数的有效数位,由于尾数的整数部分隐含为“1”,所以尾数的精度为24位。表示的数值范围是±1.175494E-38~±3.402823E+38(加38)。双精度型(double):double型占8个字节,其数值范围为1.7E-308~1.7E+308。题4·5-12已知TMOD值,试分析T0、T1工作状态(1)TMOD=93H;(2)TMOD=68H;(3)TMOD=CBH;(4)TMOD=52H2解:①TMOD=93H=10010011B,T1定时器,方式1,运行与INT1有关;T0定时器,方式3,运行与INT0无关。②TMOD=68H=01101000B,T1计数器,方式2,运行与INT1无关;T0定时器,方式0,运行与INT0有关。③TMOD=CBH=11001011B;T1计数器,方式0,运行与INT1有关;T0定时器,方式3,运行与INT0有关。④TMOD=52H=01010010B;T1定时器,方式1,运行与INT1无关;T0定时器,方式2,运行与INT0无关。题5·6-12比较I2C总线和SPI总线的优缺点。答:I2C总线是一种用于IC器件之间连接的二进制总线。其特点:(1)只要求两条总线线路:一条串行数据线SDA,一条串行时钟线SCL。二线传输时,I2C总线上的所有主器件(单片机和微处理器等)、外围器件等都连到同名端的SDA和SCL线上。(2)系统中有多个主器件时,任何一个主器件在I2C上工作时都可以成为主控制器。(3)I2C总线传输时,采用状态码管理方法。数据传输时的任何一种状态都会产生相应的状态码,并进行自动处理。(4)所有外围器件都可以采用器件地址和引脚地址的硬件编址方法,避免了片选线的连接方法。(5)所有带I2C总线接口的外围器件都具有应答功能;片内有多个连续存储单元地址时,数据读写时单元地址都有自动加1的功能。缺点是不可实现全双工数据传输。传输数据的吞吐能力小,速度慢。题6·7-1为什么要消除按键的抖动?有哪些方法?答:按键的抖动人眼是察觉不到得,但会对运行的CPU产生干扰,进而产生误处理。为了识别按键闭合一次,对按键做相应的处理,必须采取措施消除抖动。按键抖动消除的方法有两种:硬件消除法和软件消除法。题7·简述看门狗技术及其实现方法。题10·5-26设8051单片机的时钟是12MHz9600Baud、8位数据、奇校验方式,编写初始化程序。解:TMOD=0x21;TH1=0x0FD;TL1=0x0FD;PCON=0x00;SCON=0x0D0;题11·已知单片机系统晶振频率为12MHz,若要求定时值为10ms时,定时器T0工作在方式1时,定时器T0对应的初值是多少?TMOD的值是多少?TH0=?TL0=?(写出步骤)3题12·如何正确使用P3口?答:(1)P3口:准双向I/O口,具有内部上拉电阻,是通用的I/O口。P3口可驱动4个LSTTL负载。同时p3口还具有第二功能,在使用第二功能是,其输出锁存器应有程序置1。p3口的8条口线都定义第二功能。(2)引脚第二功能信号名称P3.0RXD串行数据接收P3.1TXD串行数据发送P3.2INT0外部中断0请求P3.3INT1外部中断1请求P3.4T0定时/计数器0计数输入P3.5TI定时/计数器1计数输入P3.6WR向外部写数据选通P3.7RD从外部数据选通(3)使用时应先按需要选用第二功能信号,剩下的口线才作第一功能I/O线用。(4)读引脚数据时,必需先给锁存器输出“1”。题13利用DAC0832输出端获得矩形波。#includereg52.h#defineuintunsignedchar#defineucharunsignedcharsbitcs=p3.1sbitwr=p3.4voiddelay1(){Uintj:For(j=255;j0;j--);}Voiddelay2(){Uintj:For(j=200;j0;j--);}Voidmain(){uchari=0;cs=0;wr=0;while(1){4DAC0832=0xff;Delay2()}}题14·7-2试编写一段程序,在图7-5所示的动态显示电路中显示“12345678”。程序如下:#includereg52.h#includeintrins.h#defineucharunsignedchar#defineuintunsignedintucharcodeDSY_CODE[]={0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};ucharcodeWEI_CODE[]={0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80};voidDelayMS(uintx){uchari;while(x--){for(i=200;i0;i--);}}voidmain(){uchari;while(1){for(i=8;i0;i--){P2=0x00;P0=DSY_CODE[8-i];P2=WEI_CODE[8-i];DelayMS(3);}}}题158段LED显示器主要有哪几种显示方式?动态显示方式的原理是什么?5答:LED数码管的显示方式有静态显示和动态显示。LED动态显示是将所有数码管的段选线(a~g、dp)都并接在一起,连接到一个8位的I/O接口上,每个数码管的公共端(称为位选端)分别由相应I/O接口控制。填空和选择MCS-51单片机的P0口作为通用I/O口使用时,在作为输入数据口前应先向P0口写___1____。单片机应用系统开发的一般过程有总体设计、_软件设计__、_硬件设计__、系统调试。MCS—51单片机的CPU主要的组成部分为(A)A.运算器、控制器B.加法器、寄存器C.运算器、加法器D.运算器、译码器单片机8051的XTAL1和XTAL2引脚是(D)引脚A.外接定时器B.外接串行口C.外接中断D.外接晶振运动控制2.2系统的调速范围是1000~100minr,要求静差率s=2%,那么系统允许的静差转速降是多少?解:rpmsDsnnn04.2)02.01(1002.01000)1(2.3某一调速系统,在额定负载下,最高转速特性为0max1500minnr,最低转速特性为0min150minnr,带额定负载时的速度降落15minNnr,且在不同转速下额定速降不变,试问系统能够达到的调速范围有多大?系统允许的静差率是多少?解:1)调速范围11135148515150151500min0max0minmaxNNnnnnnnD2)静差率01515010%Nsnn2.4直流电动机为PN=74kW,UN=220V,IN=378A,nN=1430r/min,Ra=0.023Ω。相控整流器内阻Rrec=0.022Ω。采用降压调速。当生产机械要求s=20%时,求系统的调速范围。如果s=30%时,则系统的调速范围又为多少??解:rpmVnRIUCeNaNN/1478.01430023.0378220rpmCeRInN1151478.0)022.0023.0(3781.3)2.01(1152.01430)1(snsnDN33.5)3.01(1153.01430)1(snsnDN2.7某闭环调速系统的调速范围是1500r/min~150r/min,要求系统的静差率5%s,那么系统允许的静态速降是多少?如果开环系统的静态速降是100r/min,则闭环系统的开环放大倍数应有多大?6解:1)101501500minmaxnnDmin/89.7)05.01(1005.01500)1(rsDsnnNN2)7.11189.71001clopnnK2.10在题2.9的转速负反馈系统中增设电流截止环节,要求堵转电流NdblII2,临界截止电流NdcrII2.1,应该选用多大的比较电压和电流反馈采样电阻?要求电流反馈采样电阻不超过主电路总电阻的1/3,如果做不到,需要增加电流反馈放大器,试画出系统的原理图和静态结构图,并计算电流反馈放大系数。这时电流反馈采样电阻和比较电压各为多少?解:(1)AIINdbl252,AIINdcr152.1scomdcrRUIssdcrnscomndblRRIURUUI**5.1152515*dcrdblnsIIURVRIUsdcrcom5.225.115(2)1.13/)8.05.10.1(3/R3/RRs不符合要求,取1.1sR,需要加电流反馈放大器由于需要的检测电阻值大,说明要求的电流信号值也大。要同时满足检测电阻小和电流信号大的要求,则必须采用放大器,对电流信号进行放大。为此,取1.1sR,则VRIUsdcrcom5.161.115(3)当dcrdII时,有)1()()1()()1()()1()1(**KCIRKKRKCUUKKKCRIUIRKCKKKCUKKnedsspecomnspedcomdsespensp当n=0时,)1()()1()(*KCIRKKRKCUUKKedsspecomnspsicominsispcominspsispcominspdblRKUKURKKKUKUKKRKKKRUKUKKI***)()()(36.15.161.12515*comsdblniURIUK3.1双闭环调速系统的ASR和ACR均为PI调节器,设系统最大给定电压*nmU=15V,Nn=1500r/min,NI=20A,电流过载倍数为2,电枢回路总电阻R=2Ω,sK=20,7eC=0.1