单片机原理与应用课后习题答案.pdf

上传人:文*** 文档编号:88135246 上传时间:2023-04-22 格式:PDF 页数:28 大小:2.57MB
返回 下载 相关 举报
单片机原理与应用课后习题答案.pdf_第1页
第1页 / 共28页
单片机原理与应用课后习题答案.pdf_第2页
第2页 / 共28页
点击查看更多>>
资源描述

《单片机原理与应用课后习题答案.pdf》由会员分享,可在线阅读,更多相关《单片机原理与应用课后习题答案.pdf(28页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、习 题11-1.4位单片机阶段,8位单片机阶段,16位单片机阶段,32位单片机阶段1-2,微处理器:指计算机内部对数据进行处理并对处理过程进行控制的部件,伴随着大规模集成电路技术的迅速发展,芯片集成密度越来越高,CPU可以集成在一个半导体芯片上,这种具有中央处理器功能的大规模集成电路器件,被统称为“微处理器”。微型计算机:简称 微型机、微机,也称 微电脑。由大规模集成电路组成的、体积较小的电子计算机。由微处理机(核心)、存储片、输入和输出片、系统总线等组成。特点是体积小、灵活性大、价格便宜、使用方便。微型计算机系统:简称 微机系统。由微型计算机、显示器、输入输出设备、电源及控制面板等组成的计算

2、机系统。配有操作系统、高级语言和多种工具性软件等。1-3.单片机就是把CPU,ROM,以及外围接口电路如I/O电路都集成在一快芯片上,其基本 拥有计算机的功能,由于其本身的集成度相当高,所 以ROMRAM容量有限,接口电 路也不多,适用与一般小系统中.单板机就是在一块PCB电路板上把CPU,一 定容量的ROM,RAM以及I/O接口电路等大规模集成电路片子组装在一起而成的微机,并配有简单外设如键盘和显示器,通常在PCB上固化有ROM或 者EPROM的小规模监控程序.多板机(系统机)是吧微处理器芯片、储存器芯片、各种工/0接口芯片和驱动电路,源等装配在不同的印刷板上,各印刷电路板插在主机箱内标准的

3、总线插槽上,通过系统总线相互联系起来。1-4.(1)单片机的存储器ROM和RAM是严格分开;(2)采用面向控制指令;(3)单片机的1/0 口引出管脚通常多功能的;(4)单片机的外部扩展能力强;(5)结构功能优化;(6)可靠性高.习题22-1.CPU、ROM、RAM、中断系统、定时/计时器、并行端口、串行端口2-2.P0还可作为低8 位地址总线,P2可作为高8 位地址总线P3.0 RXD 串行口输入端P3.1 TXD 串行口输出端P3.2 UNTO外部中断0 请求输入端,低电平有效P3.3:NT1外部中断1请求输入端,低电平有效P3.4 TO 定时器/计数器。计数脉冲输入端P3.5 T1 定时器

4、/计数器1计数脉冲输入端P3.6-W R 外部数据存储器写选通信号输入端,低电平有效P3.7 RD 外部数据存储器读选通信号输入端,低电平有效2-3.数据总线D一由P0 口组成地址总线AB一由P0 口输出低八位地址,P2 口输出高八位地址组成控制总线 CB一由 RST、EA、-PSEN.ALE 以及WR,RD 组成2-4.P0外部扩展存储器时,当做数据总线或地址总线。PO、Pl,P2、P 3都可作为工/0 口,P 0需要上拉电阻,其余其内部有上拉电阻。且 P0的驱动能力最强。2-5.MCS-51单片机储存器采用哈佛结构,即将程序储存器(ROM)和数据储存 器(RAM)截然分开,两者各有自己的寻

5、址方式、寻址空间、控制系统。物理上分为片内程序储存器、片外程序储存器、片内数据储存器和片外数据储存器逻辑上分为片内、片外统一编址的64KB程序储存器空间;片内256BK的数据程序储存 器空间;片 外 64KB的数据程序储存器空间2-6.00H-1FH单元为工作寄存区,20H-2FH单元式位寻址区,30F-7FH是数据缓冲区,也即是用户RAM区。2-7,外部中断。入口地址0003H,外部中断1入口地址0013H,定时器TO溢出中断OOOBH,定时器T1溢出中断OO1BH,串行口接收/发送中断0023。PSW的复位状态00H。2-8.程序计数器PC(Program Counter)是由16位寄存器

6、构成的计数器,存放的是下一条要执行的指令地址,用了控制程序的运行轨迹。数据存储地址指 针 DPTR主要用来作为片外数据存储寻址用的地址寄存器,它的寻址范围是64KB,由DPH、DPL两个8 位 SFR组成,用于片外数据存储器的间接访问,或程序存储器查表等。2-9.cy:进位标志。用于表示Acc.7有否向更高位进位(或借位)。AC:辅助进位标志也叫半进位标志。用于表示Acc.3有否向Acc.4进 位(或借位)。F0:用户标志位。RSk RSO:工作寄存器组选择位。0V:溢出标志位。表示Acc在有符号数算术运算中的溢出。P:奇偶校验位:它用来表示ALU运算结果中二进制数位1的个数的奇偶性。若为奇数

7、,则P=l,不然为0。2-1 0.振荡周期为单片机提供定时信号的振荡源的周期。状态周期又称作时钟周期,它是振荡周期的两倍,分为P1节拍和P2节拍,通常在P1节拍完成算术逻辑操作,在P2节拍完成内部寄存器之间的数据传送操作。通常将完成个基本操作所需的时间称作机器周期。指令周期是执行一条指令所需的全部时间。MCS-51单片机的指令周期通常由1、2、4 个机器周期组成。振荡周期=l/12us,时钟周期=l/6us,机器周期=lus。2-11.上电复位,按键电平复位电路。2-1 2.正常工作方式,低功耗方式分为待机(休眠)方式和掉电保护方式。习题33-1.立即数寻址:指令中直接给出操作数的寻址方式直接

8、寻址:指令中直接给出操作数地址(d ir)的寻址方式。寻址对象为:1内部数 据存储器,在指令中以直接地址表示;2特殊功能寄存器5 F R,在指令中用寄存器 名称表示。寄存器寻址:以通用寄存器的内容为操作数的寻址方式。通用寄存器包括:A、B、DPTR、R0-R7o寄存器间接寻址:以寄存器中的内容为地址,该地址的内容为操作数的寻址方式。能够进行寄存器间接寻址的寄存器有:RO、RI、DPTR,用前面加表示,如R0、R1、DPTR。变址寻址:由寄存器DPTR或PC中的内容加上A累加器内容之和而形成操作数地址的寻址方式称为变址寻址。变址寻址只能对程序存储器中的数据进行寻址操作。位寻址:对位地址中的内容进

9、行位操作的寻址方式。相对寻址:以当前程序计数器PC的内容为基址,加上指令给出的一字节补码 数(偏 移量)形成新的PC值的寻址方式。3-2.访问FSR用直接寻址,而访问外部数据存储器用寄存器间接寻址3-3.变址寻址把A作为无符号数与DPTR或PC的内容相加,得到访问的实际地址。而相对寻址以PC的内容为基础,加上给出的偏移量作为转移地址。3-4 不同,move A,A+DPTR 是 rom 内查表,而 movx A,DPTR 是在 外部ram内取数据3-5 cy=l ov=l A=13-6 A=1(50H)=0(51H)=25H(52H)=70H3-7 PUSH 30H;(SP)=61H(SP)=

10、24HPUSH 31H;(SP0=62H(SP)=10HPOP DPL;(SP)=61H(SP)=10HPOP DPH;(SP0=60H;(SP)=24HMOV A,#OOHMOVX DPTR,A结 果(2410H)=00H3-8 MOV 20H,#A4H;(20H)=OA4HMOV A,#D 6H;(A)=D6HMOV RO,#20H;(R0)=20HMOVR2,#57H;(R2)=57HANL A,R2;(A)=56H 相与ORL A,R0;(A)=F6H 相或SWAP A;(A)=6FH 高第四位交换CPL A;(A)=90HORL 20H,A;(20H)=B4H3-9(1)(A)=FC

11、H PSW:CY=1 AC=1 OV=0 P=0(2)(A)=36h psw:cy=0 AC=1 OV=0 P=03-103-11 MOV DPTR,#200DHMOV A,DPTRMOV DPTR,#280DHMOVX DPTR,A3-12一个机器周期2微秒TIME=(l+FA*l+FA*FA*2+FE*2+2)*23-13MOV C,ACC.OMOV P1.4,CMOV C,ACC.lMOVP1.3ZCMOV C,ACC.2MOV Pl.2 CMOV C/CC.3MOV P1.3,C3-14XCH A,ROXCH A,RIXCH A,RO3-15(1)MOV B,#04HMUL ABSWA

12、P AANL A,#FOHMOV B,AMOV A,PlANL A,#OFHORL A,BMOV Pl,A(2)MOV B,#OOHCLR CRLCAMOV B.l,CCLRCRLCAMOV B.O,C3-16MOV A,40HANL A,#3cHCPL AMOV B,AMOV A,40HANL A,#C3HORL A,BMOV 40H,A3-17(1)MOV DPTR#2000HAAOVX A,DPTRMOV B,#3MUL ABMOV 21H,AMOV DPTR,2001HAAOVX A,DPTRMOV B,#2MUL ABADD A,21HMOV 20H,A(2)Mov DPTR,#20

13、00HMOV A,DPTRMOV B,#3MUL ABMOV 30H,AAAOV31H,BMOV DPTR,#2OO1HAAOVX A,DPTRMOV B,#2MUL ABADD A,30HMOV 20H,AMOV A,BADDC A,31HMOV 21HM3-183-193-20 FEH=-2,执行SJMP OFEH指令后,pc=pc+2=-2+2=0,所以指令又重新执行这条指令。3-21 MOV c yTNB Z,CZXCPLCCZX:CPL CMOV OOH,CMOV C,XANL c,yORL C,00HMOV F,C习题四4-1程序:程序是完成某一特定任务的若干指令的有序集合程序设计

14、:为计算机准备这一指令序列的过程称为程序设计机器指令:不需要翻译即可由计算机直接执行的指令叫做机器指令汇编语言:汇编语言是一种面向机器额程序设计语言,它用英文字母来代替对应的机器语言高级语言:高级语言是一种面向算法,过程和对象的程序设计语言,它采用更接近人们的自然语言和习惯的数学表达式以及直接命令的方法来描述算法过程和对象4-2 包括顺序程序设计,分支程序设计,循环程序设计,子程序设计4-3 MOV RO,#ADDR1MOV R1,#ADDR3MOV A,ROADD A,R1MOV R0,AINC ROINC RIMOV A,ROADDC A,R1MOV RO,AINC ROINC RIMOV

15、 A,ROADDC A,R1MOV RO,ACLR AINC ROADDCA,#0MOVR0,A4-4 MOVRO,#ADDR1MOVR1,#ADDR3MOVA,ROADDA,R1MOVRO,AINCROINCRIMOVA,R0ADDCA,R1MOVRO,ACLRAINCROADDCA,#OHMOVRO,A4-7 子程序是具有某种功能的独立程序段,从结构上看它与一般程序没有多大区别,唯一的区别是子程序末端有一条程序返回指令。4-8 MOV C,B.OORL C,P2.0ANL C,ACC.OORL C/P3.04-9SWAPMOVP1.7,CMOVC,P1.0ANLC,P1.0MOV07H,C

16、MOVC,B.OANLC./P1.4ORLC,07HMOVP5W,5,CMOVA,R2ANLA,#OFOHADDA,R3SWAPAMOVB,#8DIVABMOVR4,AMOVA,R2ANLA,#OFOHSWAPAADDA,BSUM:AVERAGE:AVI:ADDSWAPADDSWAPRETMOVMOVMOVCLRMOVCLRMOVRRCMOVDJNZJNCMOVADDMOVMOVADDCMOVA,BAA,R4ARO,#40HRI,#8R3,#0R4,#3A,R3AR乙AR4,AV1ENDDA,R2A,#lR2,AA,R3A,#0R3,AENDD4-10MOVDPTR,#2100HMOVR7,#

17、64LOOP:MOVXA,DPTRCJNEA,#F,NEXTMOVR3QPHMOVR2QPLMOVDPTR,#1000HMOVA,R2MOVXDPTR,AINCDPTRMOVA,R3MOVXDPTR,ASJMP$NEXT:INCDPTRDJNZR7,L00PMOVA,#OFFHMOVDPTR,#1000HMOVXDPTR,ASJMP$4-11ORG0000HMOVRO,#40HMOVMOVTRANS:MOVMOVMOVXINCINCDJNZSJMP4-12 ORGMOVMOVMOVMOVSUM:MOVADDMOVCLRADDCMOVINCDJNZDPTR,#2OOOHR7,#21HA,ROR0

18、,#00HDPTR,ARODPTRR7,TRANS$0000H60H,#00H61H,#00HRO,#50HR7,#10A,ROA,60H60H,AAA,61H61H.AROR7,SUMJLMOVR7,#00HAVE:CLRCMOVA,#60HSUBBA,#10MOV60H,AMOVA,61HSUBBA,#00HMOV61H,AINCR7JNCAVEDECR7MOV5AH,R7SJMP$ENDORG0000HMOVRO,#40HMOVR7,#48MOVA,#OFFHFIND:CLRCMOVRI,ASUBBA,ROBIGMOVA,ROLJMPLOOPBIG:MOVA,RIINCROLOOP:DJ

19、NZR7,FINDMOVMIN,ASJMP$END4-14SIZEEQV 20ARRAYEQV 40HCHANGEBIT 10HORG0000HSJMPSORTORG0030HSORT:MOVR0,#ARRAyMOVR7z#SIZE-lCLRCHANGEGOON:MOVA,R0INCROMOVB,ROCJNEA,B,NOT EQUALSJMPNEXTNOT EQUALINGNEXTSCTHCHANGEXCHA,RODECROXCHA,ROINCRONEXT:DJNZR7,GOONJBCHANGE,SORTMOVRO,#ARRAyMOVR7,#S IZEMOVDPTR,#2OOHSEND:MOV

20、A,ROMOVXDPTR,AINCDPTRINCRODJNZR7,SENDSJMP$END4-16 MOVRI,#50HMOVRO,#30HMOVR7,#20CHANGE:MOVA,ROLCALLA5CCHGMOVR1,AINCROINCRIDJNZR7,CHANGESJMP$A5CCHG:MOVR2,AADDA,#OF6HMOVA,R2INCAD3OADDA,#7HAD30:ADDA,#30HDEJEND17 MOVRO,#40HMOVR7,#NMOVRI,#60HCHANGE:MOVA,ROLCALLAEXCHMOVR1,AINCROINCRIDJNZSJMPHEXCH:MOVCLRSUB

21、BMOVINCMOVRETRETN:MOVSUBBRET4-18 MOVMOVMOVMOVXCHANGE:PUSHPUSHR7,CHANGE$R2,ACA,#39HB,ARETNA,BA,BA,#07HSP,#40HDPTR,#2OOOHR3,#0A,DPTRDPHDPLMOV DPTR,#2OO5HMOV 30H,AANL A,#OFHLCALL ASCCHASCCH:MOVAQPCADDA,R3MOVbPC.AMOVXDPTR,AMOVA,30HSWAPAANLA,#0FHLCALLA C HINCDPTRMOVXDPTR,AINCR3POPDPLPOPDPHINCDPTRDJNZR7,C

22、HANGESJMP$PUSHDPHPUSHDPLMOVDPTR,#TABMOVCA,A+DPTRPOPDPLPOPDPHRETTAB:DB4-19 MOVXY:MOVLCALLRRSJMPDELAy40:MOVDELL:MOVDELL:DJNZDJNZRETEND3OH 31H 39HA,#8OPl,AD2-LAT40AXYR7,#100R6,#200R6QELLR7QELL习题66-1 共 6 个中断源,外部中断0 0003H,定时器TO OOOBH,外部中断1 0013H,定时器T1001BH,串行口接收发送中断0023H;约定的优先顺序如上所述,从高到低;当工E 0,工 E1置 1时说明

23、外部中断0,1以产生,硬件清零;当TFO,TF1置1时说明定时器0,1中断以产 生,硬件清零;当T I置1时说明串行口发送中断产生,用软件清零;当R工置1时说明 串行口接收中断产生,用软件清零。6-2中断允许控制器:工EEAQE.7):总允许位ES(IE.4):串行中断允许位ET1(IE.3):定时器1中断允许位EX1QE.2):外部中断1允许位ETO(IE.l):定时器0中断允许位EXO(IE.O):外部中断0允许位中断优先级控制器:工PPS(IP.4):若=1,串行中断设为高优先级PT1(IP.3):若=1,定时器1中断设为高优先级PX1(IP.2):若=1,外部中断1设为高优先级PTO(

24、IP.l):若=1,定时器。中断设为高优先级PXO(IP.O):若=1,外部中断0设为高优先级6-3外部中断请求有两种方式:电平触发方式和脉冲下降沿触发方式。在电平触发方式下,C P U在 每 个 机 器 周 期 的S 5 P 2时刻都要采样工NT0(P3.2)/:NT八(P3.3)管脚的输入电平,若采样到低电平,则认为是有中断请求,也即低电平有效。在脉冲下降沿触发方式下,CPU也在每个机器周期的S 5P 2时刻采样1NTO(P3.2)/:NT1(P3.3)管脚的输入电平,若在相继的两次采样中,前一个机器周期采 样信号为高电平,后一个机器周期采样到低电平,也即采样到一个下降沿,则认为是有效的中

25、断请求信号。6-4单片机有2个定时器/计数器。有特殊功能寄存器TMOD,TCON控制。6-5定时器/计数器作定时时间时与工作方式、初值、机器周期有关。作计数时,外界计数 的频率要小于机器频率的1/2.6-6 TO、T1有4中工作方式。用控制寄存器TMOD进行控制。方式0为13位计数,由T L O的低5位(高3位未用)和THO的8位组成。TLO的低5位溢出时向THO进位,THO 溢出时,置位TC O N中的TFO标志,向CPU发出中断请求。方式1的计数位数是16位,由TLO作为低8位、THO作为高8位,组成了 16位加1 计数器。方式2为自动重装初值的8位计数方式。工作方式2特别适合于用作较精确

26、的脉冲信 号发生器。方式3只适用于定时/计数器T O,定时器T 1处于方式3时相当于TR1=O,停止计数。工 作方式3将TO分成为两个独立的8位计数器TLO和THO。6-7定时工作方式时,因为计数脉冲由内部供给,是对机器周期进行计数,故计数脉冲频率 为f cont osc x 1/1 2、计数周期T=l/f cont=12/f o s c定时工作方式的计数初值X等 于:X=M-计数值=M-t/T=M-(f osc*t )/12式中:f o s c为振荡器的振荡频率,t为要求定时的时间。6-8G A TE E时,由外部中断引脚工NTO、工NT1和控制寄存器的TRO,TR1来启动定时器。当工NTO

27、引脚为高电平时TR0置位,启动定时器TO;当工N T1引脚为高电平时TR1置位,启动定时器T LGATE=O时,仅由TRO,TR1置位分别启动定时器TO、Tl6-9 ORG 0000HSJMP MAINORG 0003HSJMP INTOORG 0030HMAIN:MOV RO,#08MOV SP,#60HMOV A,#01HMOV Pl,#00HSETB ITOSETB EXOSETB EASJMP$INTO:CLR EXOLOOP:MOV Pl,ALACLL DELAYRL ADJNZRO,LOOPMOV Pl,#00HMOV RO,#08HSETB EXORETIDELAY:MOV R6

28、,#00hMOV R7,#00HDELAYLOOP:DJNZ R6,DELAYLOOPDJNZ R7QELAyLOOPRET6-10ORG 0000HLJMP M AINORG OOOBHLJMP TOSORG 1000HM A IN:MOV TMOD,#22HMOV TL0,#156HMOV TH。,#156HMOV TH1,OFFHMOV TLl.OFEHMOV O N,#4 0 HMOV PCON,#80hSETB ETOSETB EASETB TROCLR ASJMP$TOS:CPL P1.0IN C ACJNEA,#O2,T2OOCPL Pl.lCLR AT2OO:RETI习题77-

29、1 8051的串行口是全双工的异步串行口,有4种工作方式7-2 RS-232 接口标准时 E工A(Electronic Industry Association)7-3 RS-232电平与T T L电平需要进行电平匹配7-4SBU F是数据缓冲器,物理上有两个,一个用于发送,一个用于接收,但使用相同的标号地址,从而保证全双工通信的需要。7-5错误。是全双工的异步串行通信接口。7-6 4 种。7-7错误。物理上有两个SBUFo7-8错误。波特率由定时器T 1的溢出率决定的。7-9 SCON是串行口状态控制寄存器,SMOD是串行口波特率系数控制位。7-10SM O D=l时波特率倍增,否则不倍增。

30、7-11 SBUF是数据缓冲器,用于接收和发送数据。SCON控制串行通信方式的选择、接收/发 送、指示通信方式。7-12错误。改成可以同时发送和接收。7-13 T I置 1是为发送T I 中断,R I置 1是接收R I中断。7-14每秒钟发送的位数是通信的波特率。波特率=(2SMOD)/32xfosc/12x(256-X)X 为 TL1 的初始值7-15通信时主机先发送地址帧,寻找要通信的从机,由于所有从机的SM2=1且地址帧TB8E(对接收而言RB8=1),都相应主机的地址信息,接收后与自己的地址信息比较,若相 同则修改SM2=0,若不相同则保持SM2=1.接下来主机发送数据信息,由于数据帧的 TB8=0,与地址帧相同的从机继续接收主机发送来的数据,地址不同的从机拒绝接收数 据,从而实现主机与从机一对-的通信。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 教案示例

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁