《单片机课后题 2.doc》由会员分享,可在线阅读,更多相关《单片机课后题 2.doc(8页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、【精品文档】如有侵权,请联系网站删除,仅供学习与交流单片机课后题 2.精品文档.第一章 2微处理器、微型计算机、微型计算机系统有什么联系与区别?微处理器是利用微电子技术将计算机的核心部件(运算器和控制器)集中做在一块集成电路上的一个独立芯片。它具有解释指令、执行指令和与外界交换数据的能力。其内部包括三部分:运算器、控制器、内部寄存器阵列(工作寄存器组)。微型计算机由CPU、存储器、输入/输出(I/O)接口电路构成,各部分芯片之间通过总线(Bus)连接。以微型计算机为主体,配上外部输入/输出设备、电源、系统软件一起构成应用系统,称为微型计算机系统。6在微型计算机中,一般具有哪三类总线?试说出各自
2、的特征(包括传输的信息类型、单向传输还是双向传输)。所谓总线,就是在微型计算机各芯片之间或芯片内部各部件之间传输信息的一组公共通信线。计算机元件级总线包括地址总线AB(Address Bus)、数据总线DB(Data Bus)、控制总线CB(Control Bus)三种。(1)地址总线:地址总线是CPU用来向存储器或I/O接口传送地址信息的,是三态单向总线。地址总线的宽度决定了CPU可直接寻址的内存容量。通过地址总线确定要操作的存储单元或I/O接口的地址。(2)数据总线:数据总线是CPU与存储器及外设交换数据的通路,是三态双向总线。(3)控制总线:控制总线是用来传输控制信号的,传送方向依据具体
3、控制信号而定,如CPU向存储器或I/O接口电路输出读信号、写信号、地址有效信号,而I/O接口部件向CPU输入复位信号、中断请求信号等。7将下列二进制数转换为十进制数。111101.101B 100101.11B1100110.011B111101.101B=29.625 100101.11B=37.75 1100110.011B=102.3758将下列十进制数转换为二进制数、BCD码数。126.635317.12587.0735126.635=1111110.101B=(000100100110.011000110101)BCD317.125=100111101.001B=(001100010
4、111.000100100101)BCD87.0735=1010111.0001B=(10000111.0000011100110101)BCD9设机器数为8位,写出下列用真值表示的二进制数的原码、补码和反码。+0010101B0010101B+1000000B1000000B+0010101B0010101B+1000000B1000000B原码 00010101B10010101B01000000B11000000B反码00010101B11101010B01000000B10111111B补码00010101B11101011B01000000B11000000B第二章 1半导体存储器分
5、两大类:易失性存储器RAM和非易失性存储器ROM。闪速存储器属于非易失性存储器ROM。488KB的SRAM存储器芯片需要 13 根地址线和 8 根数据线。5半导体存储器有哪几种类型?半导体存储器的两个重要指标是什么?半导体存储器通常分为随机存取存储器(RAM,Random Access Memory)和只读存储器(ROM,Read Only Memory)两类。其中主要的技术指标是存储容量和存取速度。6型号是1K4位的静态RAM,应有多少条地址线?多少条数据线?10条地址线、4条数据线9简述堆栈的作用与操作。所谓堆栈,是指在存储器中开辟的一个区域,用来存放需要暂时保存的数据。(1)堆栈的作用用
6、来存放断点地址或保存临时数据。在调用子程序和执行中断服务程序的过程中,要保留断点地址,有时还要保护现场。只有保留了断点地址,才能在子程序或中断服务程序执行后保证返回到主程序的断点处,继续执行主程序。断点地址与现场信息是送入堆栈保存的。在返回主程序前,要把保存在堆栈中的现场信息送回对应的寄存器,这称为恢复现场。(2)堆栈操作堆栈有两种操作方式。将数据送入堆栈称为推入操作,又称为压入操作,如压入指令PUSHA把堆栈中内容取出来的操作称为弹出操作,如弹出指令POPA执行把栈顶内容送回A的操作。12.所谓中断,是指CPU正常运行程序时,由于微处理器内部事件或外设请求,引起CPU中止正在运行的程序,转去
7、执行请求中断的外设(或内部事件)的中断服务程序,中断服务程序执行完毕,再返回被中止的程序。利用中断可以避免不断检测外设状态,提高CPU的效率。14什么是接口?什么是端口?一个接口电路是否可以有多个端口?所谓接口,是指在两台计算机之间、计算机与外设之间、计算机内部各部件之间起连接作用的逻辑电路,是CPU与外界进行信息交换的中转站。所谓端口,是指I/O接口(包括芯片和控制卡)中供CPU直接存取访问的那些寄存器或某些硬件特定电路。第三章1MCS-51系列单片机内部有哪些主要的逻辑部件?MCS-51单片机是在一块芯片上集成了CPU、RAM、ROM、定时器/计数器和多种I/O功能部件,具有了一台微型计算
8、机的基本结构,主要包括下列部件:一个8位的CPU、一个布尔处理机、一个片内振荡器、128B的片内数据存储器、4KB的片内程序存储器(8031无)、外部数据存储器和程序存储器的寻址范围为64KB、21个字节的专用寄存器、4个8位并行I/O接口、一个全双工的串行口、2个16位的定时器/计数器、5个中断源、2个中断优先级、111条指令、片内采用单总线结构。2MCS-51单片机设有4个8位并行端口,实际应用中8位数据信息由哪个端口传送?16位地址线怎样形成?P3口有何功能?8位数据信息由P0口传送。P2口形成地址大高8位,P0口结果锁存器形成地址的低8位。P3口除具有一般的输入/输出功能,还具有第2功
9、能:P3.0RXD 串行口输入端P3.1TXD 串行口输出端P3.2 外部中断0请求输入端,低电平有效P3.3 外部中断1请求输入端,低电平有效P3.4T0 定时器/计数器0计数脉冲输入端P3.5T1 定时器/计数器1计数脉冲输入端P3.6 外部数据存储器及I/O接口写选通信号输出端,低电平有效P3.7 外部数据存储器及I/O接口读选通信号输出端,低电平有效5简述程序状态字PSW中各位的含义。程序状态字PSW是一个8位寄存器,它保存指令执行结果的特征信息,为下一条指令或以后的指令的执行提供状态条件。PSW中的各位一般是在指令执行过程中形成的,但也可以根据需要采用传送指令加以改变。其各位定义如图
10、所示。 进位标志C(PSW.7)在执行某些算术运算类、逻辑运算类指令时,可被硬件或软件置位或清零。它表示运算结果是否有进位或借位。如果在最高位有进位(加法时)或借位(减法时),则C = 1,否则C = 0。 辅助进位(或称半进位)标志位AC(PSW.6)它表示两个8位数运算,低4位有无进(借)位的状况。当低4位相加(或相减)时,若D3位向D4位有进位(或借位),则AC = 1,否则AC = 0。在BCD码运算的十进制调整中要用到该标志。 用户自定义标志位F0(PSW.5)用户可根据自己的需要为F0赋予一定的含义,通过软件置位或清零,并根据F0 = 1或0来决定程序的执行方式,或系统某一种工作状
11、态。 工作寄存器组选择位RS1、RS0(PSW.4、PSW.3)可用软件置位或清零,用于选定当前使用的4个工作寄存器组中的某一组。 溢出标志位OV(PSW.2)做加法或减法时由硬件置位或清零,以指示运算结果是否溢出。在带符号数加减运算中,OV = 1表示加减运算超出了累加器所能表示的数值范围(128+127),即产生了溢出,因此运算结果是错误的。OV = 0表示运算正确,即无溢出产生。执行乘法指令MUL AB也会影响OV标志,当积大于255时,OV = 1,否则OV = 0;执行除法指令DIV AB也会影响OV标志,如B中所存放的除数为0,则OV = 1,否则0V = 0。 奇偶标志位P(PS
12、W.0)在执行指令后,单片机根据累加器A中1的个数的奇偶自动将该标志置位或清零。若A中1的个数为奇数,则P = 1,否则P = 0。该标志对串行通信的数据传输非常有用,通过奇偶校验可检验传输的可靠性。6简述MCS-51单片机程序存储器的几个特殊入口地址的含义。0000H:程序入口地址0003H:外部中断0中断服务程序入口地址000BH:定时器/计数器0溢出中断服务程序入口地址0013H:外部中断1中断服务程序入口地址001BH:定时器/计数器1溢出中断服务程序入口地址0023H:串行口发送/接收中断服务程序入口地址第四章2设堆栈指针SP中的内容为60H,内部RAM中30H和31H单元的内容分别
13、为24H和10H,执行下列程序段后,61H、62H、30H、31H、DPTR及SP的内容将有何变化?PUSH 30HPUSH31HPOPDPLPOPDPHMOV0H,#00HMOV 31H,#0FFH(61H)=24H (62H)=10H (30H)=00H (31H)=0FFH (DPTR)=2410H (SP)=60H3设(A) = 40H,(R1) = 23H,(40H) = 05H。执行下列两条指令后,累加器A和R1以及内部RAM中40H单元的内容各为何值?XCHA,R1XCHDA,R1(A)=25H (R1)=40H (40H)=03H4设(A) = 01010101B,(R5) =
14、 10101010B,分别写出执行ANL A,R5;ORL A,R5;XRL A,R5指令后的结果。00000000B 11111111B 11111111B第五章 1编程将片内RAM 30H39H单元中的内容送到以3000H为首的存储区中。MOVR0,#30HMOVDPTR,#3000HMOVR7,#10L1:MOVA,R0MOVXDPTR,AINCR0INCDPTRDJNZR7,L1RET2片内RAM 60H开始存放20个数据,试统计正数、负数及为零的数据个数,并将结果分别存在50H、51H、52H单元中。MOV50H,#0MOV51H,#0MOV52H,#0MOVR7,#20MOVR0,
15、#60HL3:MOVA,R0JZL1JBACC.7,L2INC50HSJMP LENDL2:INC51HSJMPLENDL1:INC52HLEND:INCR0DJNZR7,L3RET12在片外RAM 2000H、2001H和3000H、3001H中分别存放两个字数据(高8位在偶地址),试比较两个数的大小,把大数存放在4000H、4001H单元中。MOVDPTR,#2000HMOVXA,DPTRMOV20H,AINCDPTRMOVXA,DPTRMOV21H,AMOVDPTR,#3000HMOVXA,DPTRMOV30H,AINCDPTRMOVXA,DPTRMOV31H,ACLRCMOVA,21H
16、SUBBA,31HMOVA,20HSUBBA,30HJNCL1MOVA,20HMOVB,21HSJMPL2L1:MOVA,30HMOVB,31HL2:MOVDPTR,#4000HMOVXDPTR,AINCDPTRMOVA,BMOVXDPTR,ARET 六2试编写外部中断1为跳沿触发方式的中断初始化程序。SETBIT1SETBEASETBEX13试编写一段对中断系统初始化的程序,允许外部中断0、外部中断1、定时器/计数器T0溢出中断、串行口中断,且使定时器/计数器T0溢出中断为高优先级中断。SETBEASETBEX0SETBEX1SETBET0SETBESSETBPT06中断允许寄存器IE各位的
17、定义是什么?IE是中断允许控制寄存器,CPU对中断系统的所有中断及某个中断源的“允许”与“禁止”都是由它来控制的。IE中断允许寄存器格式如下:寄存器中用于控制中断的共有6位,实现中断管理,其作用如下:EA为中断允许总控制位。EA = 1时,CPU开放中断;EA = 0时,CPU屏蔽所有中断请求。ES、ET1、EX1、ET0、EX0为对应的串行口中断、定时器/计数器1中断、外部中断1中断、定时器/计数器0中断、外部中断0中断的中断允许位。对应位为1时,允许其中断,对应位为0时,禁止其中断。1设MCS-151单片机时钟为12MHz,利用定时器T0编程令P1.0引脚输出2ms的矩形波程序,要求占空系
18、数为1:2(高电平时间短)。ORG0000HLJMP MAINORG000BHLJMPT0INTORG0030HMAIN:MOVSP,#60HMOVR7,#0MOVTMOD,#01H;初始化MOVTH0,#0FDH;定时666微妙MOVTL0,#66HSETBEASETBET0SETBTR0L1:SJMPL1;中断服务程序T0INT:MOVTH0,#0FDH;重载初始值MOVTL0,#66HINCR7CJNE R7,#1,LL1CLRP1.0SJMP LLENDLL1:CJNER7,#3,LLENDSETBP1.0MOVR7,#00HLLEND:RETI 七1若异步通信,每个字符由11位组成,
19、串行口每秒传送250个字符,问波特率是多少?2750位/秒=2750波特2设串行异步通信的传送速率为2400波特,传送的是带奇偶校验的ASCII码字符,每个字符包含10位(1个起始位,7个数据位,1个奇偶校验位,1个停止位),试编程初始化程序。设定串行口位方式1.MOVSCON,#40HMOVPCON,#80HMOVTMOD,#20HMOVTH1,#0F4HMOVTL1,#0F4HSETBTR13MCS-51单片机的串行口控制寄存器SCON的SM2、TB8、RB8有何作用?(1)SM2是多机通信控制位因多机通信是在方式2和方式3下进行的,所以SM2位主要用于方式2和方式3。当串行口以方式2或方
20、式3接收数据时,如SM2 = 1,则只有当接收到的第9位数据(RB8)为“1”时,才将接收到的前8位数据送入SBUF,并置位RI产生中断请求;否则,将接收到的前8位数据丢弃。而当SM2 = 0时,不论接收到的第9位数据是“0”还是“1”,都将前8位数据装入SBUF中,并产生中断请求。在方式1时,若SM2 = 1,则只有接收到有效停止位时,RI才置1,以便接收下一帧数据。在方式0时,SM2必须为0。(2)TB8是发送数据的第9位在方式2、3时,其值由用户通过软件设置。在双机通信时,TB8一般作为奇偶校验位使用;在多机通信中,常以TB8位的状态表示主机发送的是地址帧还是数据帧,且一般约定:TB8
21、= 0为数据帧,TB8 = 1为地址帧。(3)RB8是接收数据的第9位在方式2、3时,RB8存放接收到的第9位数据,它代表接收到的数据的特征:可能是奇偶校验位,也可能是地址/数据的标志位。八,2试用Intel 2764,6264为MCS-51单片机设计一个存储器系统,它具有8KB EPROM(地址由0000H1FFFH)和16KB的数据存储器(地址为2000H5FFFH)。要求绘出该存储器系统的硬件连接图,并指出每片芯片的地址空间。使用一片Intel 2764,两片RAM6264.参看图8-22,采用译码器译码。2764可以不用译码,其片选信号直接接地,其地址为0000H1FFFH,读控制接/
22、PSEN;RAM6264的片选分别接74LS138的/Y1、/Y2,其地址分别为:2000H3FFFH、4000H5FFFH,其读。写控制分别接/RD、/WR。九,55试用串行口扩展4个LED显示器电路,编程使数码管轮流显示YOUR和GOOD,每隔1s变换一次。显示的原理简图参看图9-5。ORG0000HMOVSCON,#00HLL:MOV30H,#0MOV31H,#1MOV32H,#2MOV33H,#3LCALLDISPMOVR7,#0DJNZR7,$MOV30H,#4MOV31H,#1MOV32H,#1MOV33H,#5LCALLDISPMOVR7,#0DJNZR7,$SJMPLLDISP
23、:MOV 34H,#4 ;显示位数送R7MOV R0,#30H ;先送最低位MOV DPTR,#TAB ;七段码表首地址DISP1:MOV A,R0 ;取七段码MOVC A,A+DPTR MOV SBUF,AJNB TI,$CLR TIINC R0 ;指向下一位DJNZ 34H,DISP1 ;全部送完RETTAB:DB 91H,0A3H,0C1H,8FH,90H,0A1H;yourgdEND第十章6使用DAC0832与MCS-51单片机连接时有哪些控制信号?双缓冲方式如何工作?在何种情况下要使用双缓冲工作方式?ILE:输入锁存使能信号输入端,高电平有效。:片选信号端。、:两个写信号端,均为低电
24、平有效。:传输控制信号输入端,低电平有效。DAC0832可工作于双缓冲器方式,输入寄存器的锁存信号和DAC寄存器的锁存信号分开控制,这种方式适用于几个模拟量需同时输出的系统,每一模拟量输出需一个DAC0832,构成多个DAC0832同时输出的系统。8试设计一个12位D/A转换器与8031的接口电路,编写将存放在片内RAM的50H、51H单元的12位数(低8位在50H单元中,高4位在51H的低半字节中)进行转换输出的程序。接口电路参看图10-18。SYNCBITP1.0 ;DAC7512的与8051的P1.0相连SCLKBIT P1.1 ;DAC7512的SCLK与8051的P1.1相连DIN
25、BIT P1.2 ;DAC75121的DIN与8051的P1.2相连DAH DATA50H;12位数据高字节DAL DATA51H;12位数据低字节DAOUT:MOVR7,#08H ;置循环次数MOV A,DAH ;取高4位数ANL A,#0FH;正常工作模式CLR SYNC;启动写时序DA1:RLC A;从最高位开始串行移位MOV DIN,C;输出数据SETBSCLK;产生SCLK上升沿CLRSCLK;产生SCLK下降沿DJNZR7,DA1;8位数据传送完毕?MOV R7,#08HMOV A,DAL;取低8位数据DA2:RLC AMOV DIN,CSETBSCLKCLR SCLKDJNZR7,DA2;低8位数据传送完毕?NOPSETBSYNCSETBDINRET