版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、完美.完美.格式.编辑专业专业.资料.整理单片机原理及应用技术李全利第 3 版答案第一章答:微型计算机由微处理器、存储器和I/O接口电路构成。各部分通过地址总线AB线(DB)和控制总线相连。答:微处理器集成了运算器和控制器(即CP;而微型计算机包含微处理器、存储器和I/O 口电路等。答:I/O 接口电路,从而构成了单芯片微型计算机答:微型计算机有三种应用形式:多板机(系统机、单板机和单片机。多板机,通常作为办公或家庭的事务处理及科学计算,属于通用计算机。单板机,I/O 设备简单,软件资源少,使用不方便。早期主要用于微型计算机原理的教学及简单的测控系统,现在已很少使用。段。答:系统需求分析,硬件
2、方案设计,软件编程,仿真调试,实际运行。答:在系统编程(ISP)技术,在应用编程(IAP)技术。第二章 80C51 的结构和原理180C51 单片机在功能上、工艺上、程序存储器的配置上有哪些种类? 答:功能上分为基本型和增强型;工艺上分为HMOS 工艺和CHMOS 工艺;在片内程序存储器的配置上有掩膜ROM、EPROM 和Flash、无片内程序存储器形式。2 80C51地址范围和容量如何?在使用上有何特点?答:采用哈佛结构,在物理上设计成程序存储器和数据存储器两个独立的空间;80C51 基本型单片机片内程序存储器为 4KB,地址范围是 0000H-0FFFH128RAM00H-7FH80H-F
3、FH21SFR。380C51 单片机的P0P3 口在结构上有何不同?在使用上有何特点? 答:作为通用I/OP1、P2P3P0/8口是双功能口,每条口线还具有不同的第二功能。另外,P0 口的驱动能力为 8 个 TTL 负载,而其它口仅可驱动 4 个 TTL 负载。480C516 MHz、11.0592 、12MHz少?答:机器周期分别为 2s,1.085s,1s。580C51 单片机复位后的状态如何?复位方法有几种? 答:复位后,PC0000H,P0P3 口内容为FFH,SP07H,SBUF、IEPCON000H位,另一种是上电与按键均有效的复位。680C51 单片机的片内、片外存储器如何选择?
4、 答:80C51 的 引脚为访问片内、片外程序存储器的选择端。访问片内、片外数据存储器需要采用不同的指令加以区分。780C51 单片机的PSW 寄存器各位标志的意义如何? 答:CYCY=1,否则CY=0; A:辅助进位、借位标志(高半字节与低半字节间的进位或借位F0:用户标志位,由用户自己定义;RS1、RS0:当前工作寄存器组选择位; OV:溢出标志位。有溢出时OV=1,否则P:奇偶标志位。存于ACC 中的运算结果有奇数个 1 时 P=1,否则P=0。8 80C51答:当前工作寄存器组的选择由特殊功能寄存器中的程序状态字寄存器PSWRS1RS0 来决定。980C51 单片机的控制总线信号有哪些
5、?各信号的作用如何? 答:RST/VPD:复位信号输入引脚/备用电源输入引脚;ALE/ :地址锁存允许信号输出引脚/编程/VP片内外部程序存储器选通信号输出引脚。或FlashRO1080C51 单片机的程序存储器低端的几个特殊单元的用途如何? 答:0000H:单片机复位入口地址;0003H:外部中断0 的中断服务程序入口地址;000BH:定时/计数器0溢出中断服务程序入口地址00131的中断服务程序入口地址定时1第三章80C51的指令系统180C51 系列单片机的指令系统有何特点? 答:1642454仅有2条(即乘法和除法指令;49451780C51280C51 单片机有哪几种寻址方式?各寻址
6、方式所对应的寄存器或存储器空间如何? 答:80C51基址寄存器加变址寄存器变址寻址、相对寻址和位寻址。这些寻址方式所对应的寄存器和存储空间如下表所示。序号寻址方式寄存器或存储空间1寄存器寻址寄存器R0R7,A、AB、DPTR 和 C(布尔累加器)2直接寻址片内RAM128SFR3寄存器间接寻址片内 RAM(R0,R1,SP)片外 RAM(R0,R1,DPTR)4立即寻址ROM5变址寻址ROM(ADPTR,APC)6相对寻址ROM(PC 当前值的127128 字节)7位寻址可寻址位(内部RAM20H2FH 单元的位和部分SFR 的位)访问特殊功能寄存器SFR答:直接寻址和位寻址方式。访问内部RA
7、M答:直接寻址、寄存器间接寻址和位寻址方式。 5访问外部RAM答:寄存器间接寻址。 6答:立即寻址、变址寻址和相对寻址方式。 780C51答:CPU 中的位操作构成了片内的布尔功能系统,它可对位( PSW)中的进位标志 Cy 作为位操作的“累加器80C52 单片机内部RAM128答:寄存器间接寻址方式。试根据指令编码表写出下列指令的机器码。(1)MOV A,#88H-74H, 88H(2)MOV R3,50HABH,50H(3)MOV P1,#55H75H,90H,55HADDA,R127HSETB 12HD2H,12H将R0R1;内部RAM60HR2;外部RAM1000HRAM60H;外部R
8、AM1000H外部RAM1000H 的内容传送到外部RAM2000H答:MOV A,R0MOV R1,AMOV R2,60HMOVMOVX A,DPTR MOV 60H,AMOVMOVX A,DPTR MOV R2,AMOVMOVX A,DPTRMOVDPTR,#2000H MOVX DPTR, 1若R=30A=4030=6040=08H单元内容的变化。MOV A,R1 MOV MOV 40H,A MOV 答:(R1)=7FH=60H(30H)=08H(40H)=60H1若A=E8(R0=40R1=20(R4=3A(40=2C20=0F,试写出下列各指令独立执行后有关寄存器和存储单元的内容?若
9、该指令影响标志位,试指出 CY、AC、和OVMOV A,R0ANL40H,#0FHADDA,R4SWAPADECR1XCHDA,R1答:1A)=2CH240)=0CH3A)=22(C)=(AC=1(O)=04A)=8EH520)=0E,P=16A)=EF(2)=08HAR0 及内部RAM40H41H、42H 单元中的内容各为多少?MOVA,50HMOVR0,AMOVA,#00HMOVR0,AMOVA,#3BHMOV41H,AMOV42H,41H答:A)=3B(R)=4040H)=00(41)=3B(42)=3B。试用位操作指令实现下列逻辑操作。要求不得改变未涉及的位的内容。使ACC.04清除A
10、CC.3,ACC.4,ACC.5,ACC.6。答:SETB ACC.0ANLA,#0FHANLA,#87H试编写程序,将内部RAM20H、21H22H2FH、2EH2DH 单元。答:MOV 2FH,20HMOV MOV 2DH,22H16RAM30H31H单元,30H831H8答:CLRCYMOV MOV MOV R0, MOV A,R0 SUBB A ,#4EMOVR0,A;保存低字节相减结果DECR0MOVA, R0SUBBA,#2BHMOVR0,A;保存高字节相减结果R14 位数与R248R1 中。答:MOV A,R2ANLA,#0F0HORLR1,ARAM 的 20H、21HR2、R3
11、中,R28,R38答:MOV A,20H MOV B,21H MUL ABMOV R3,AMOV R2,B1若C=1(P=10100011(P=01101100CYP1口及 P3 口内容的变化情况。MOVP1.3,CMOVP1.4,CMOVC,P1.6MOVP3.6,CMOVC,P1.0MOVP3.4,C答:(CY)=1, (P1)=10111011B, (P3)=00111100B章480C51的汇编语言程序设计180C51 单片机汇编语言有何特点? 答:但它与高级语言相比移植性不好、编程复杂、对编程人员的基础要求高。答:利用累加器或寄存器; 利用存储器;利用堆栈。答:ORG,功能是向汇编程
12、序说明下面紧接的程序段或数据段存放的起始地址; END,功能是结束汇编; DB,功能是从标号指定的地址单元开始,在程序存储器中定义字节数据; DW,功能是从标号指定的地址单元开始,在程序存储器中定义字数据空间; EQU,功能是将表达式的值或特定的某个汇编符号定义为一个指定的符号名; BIT,功能是将位地址赋给指定的符号名。设被加数存放在内部RAM20H、21H22H、23H24H、25H16(采用大端模式存储。答:程序如下:ORG0000HMOVR0,21HMOVR1,23HMOVA,R0ADDA,R1MOV25H,ADECR0DECR1MOVA,R0ADDCA,R1MOV24H,ASJMP$
13、END编写程序,把外部RAM1000H101FH 的内容传送到内部RAM30H4FH答:ORG 0000HMOV DPTR,#1000H MOV R0,#30HMOV R7,#32 LOOP:MOVX MOV R0,AINC R0INC DPTR DJNZ RET编写程序,实现双字节无符号数加法运算,要求R0R)(R6R)60H61答:ORG MOVADDA,R7MOV61H,AMOVA,R0ADDC A,R6MOV60H,ASJMP $ END若80C51的晶振频率为6MHz,试计算延时子程序的延时时间DELAY:MOVR7,#0F6HLP:MOVDJNZ R6,$ DJNZ R7,LP R
14、ET答:延时时间: 2 s*1+((1+2*250+2)*246)+2+2=0.247486(2器周期)RAM30H37HBIG答:ORG0000HBIGDATA2FHONEDATA2AHTWODATA2BHSTART:MOVR7,#7;比较次数MOV LOOP:MOVMOV INC MOV CLR SUBBJCR0,#30H A,R0 ONE,A R0 TWO,R0 CA,R0NEXT;ONETWOMOVR0,ONE;ONE 大放后面(交换)DECR0MOVR0,TWO;TWO 小放前面INC NEXT:DJNZMOVSJMPR0 R7,LOOP BIG,37H$;END编写程序,把累加器A
15、3BCD在内部RAM50H51H52H答:单字节二进制数转换为压缩的 BCD 码仅需要 2 个字节;在将压缩的 BCD 码拆分存于 3个单元。org0MOV52H,#0MOV51H,#0MOV50H,#0MOVLCALL DCDTH SJMP $DCDTH:MOVR7,#8MOVR0,AR0LOOP:CLRCMOVA,R0RLCAMOVR0,AMOVR1,#51H;MOV A,R1 ADDC A,R1 DA A MOV R1,A DEC R1MOV A,R1 ADDC A,R1 DA AMOV R1,A DJNZ INCR1;50H51H,51HMOVA,#00HXCHDA,R1MOV52H,
16、AMOVA,R1SWAPAMOVR1,ARETEND编写子程序,将R12ASCII 码后存放在R3R4答:ORG0MOVR1,#5BHMOVA,R1ANLA,#0F0HSWAPAACALLASCIIMOVR3,AMOVA,R1ANLA, #0FHACALLASCIIMOVR4, ASJMP$ASCII:PUSHACCCLRCSUBBA, #0AHPOPACCJCLOOPADDA, #07HLOOP: ADDA, RETEND编写程序,求内部RAM50H59H5AH答:ORG0000HMOVR7,#10MOVR0,#50HMOVB,#10CLRCCLRALOOP:ADDCA,R0INCR0DJN
17、ZR7,LOOPDIVABMOV5AH,ASJMP$END如图4.10 7答:实现程序如下:TEMP EQU 30HORG 0000HJMP STARTORG 0100H START:MOV MOV P0,#8CH ; 正 序 显 示 MOV P3,#0FFH ; 输 入 方 式CLR CYNOKEY:MOV A,P3CPL AJZNOKEY;无键按下MOVTEMP,P3;有键按下CALLD10msMOVA,P3CJNE A,TEMP,NOKEYMOVR2,#0键号计数器复MOVA,TEMPLP:RRCA JNCINCR2SJMP LPDONE:MOVA,R2MOVMOVC A,A+DPTRM
18、OVP0,A JMPD10ms:MOVR5,#10D1ms:MOVR4,#249DL:NOPNOP DJNZ DJNZ RETCODE_P0:DBDB80H,90H,88H,83H,0C6H,0A1H,86H,8EH END章580C51的中断系统及定/计数器1.80C51 有几个中断源?各中断标志是如何产生的?又是如何复位的?CPU 响应各中断时, 其中断入口地址是多少?答:5 个中断源,分别为外中断 和 、T0 和 T1 溢出中断、串口中断。电平方式触发的外中断标志与引脚信号一致复位。T0T1,CPURITI,由硬件置位。必须由软件复位。另外,所有能产生中断的标志位均可由软件置位或复位。各
19、中断入口地址: 0003H,T0000BH, 0013H,T1001BH,RI 和TI0023H。某系统有三个外部中断源 3,当某一中断源变低电平时便要求CPU 处理,它们的优先处理次序由高到低为 、2、1,处理程序的入口地址分别为 2000H、2100H、2200H。试编写主程序及中断服务程序(转至相应的入口即可。答:将 3 个中断信号经电阻线或,接 。ORG0000HLJMPMAINORG00013HLJMPZDFZORG0040HMAIN:SETBEASETBEX1SJMP$0RGZDFZ:PUSHPSWPUSHACCJBP1.0,DV0JBP1.1,DV1JBINRET:POPACCP
20、OPPSWRETIORG2000HDV0:-JMPINRETORG2100H DV1:-JMPINRETORG2200HDV2:-JMPINRET外部中断源有电平触发和边沿触发两种触发方式不同?怎样设定?答:IT0=0S5P2 采样 引脚电平,当采样到低电平时,置IE0CPUIE0IE0IT0=1S5P2电平,如果在连续的两个机器周期检测到 引脚由高电平变为低电平,即第一个周期采样到=1,第二个周期采样到 =0,则置 IE01,产生中断请求。在边沿触发方式下,CPU 响应中断时,能由硬件自动清除IE0 标志。IE0IE11。若CPUCPU12MHz,为 1 微秒。边沿触发方式适合于以负脉冲形式
21、输入的外部中断请求。/答:定时/计数器实质是加 1 计数器。不同点:设置为定时器模式时,加 1 计数器是对内部机器周期计数(1 个机器周期等于 12个振荡周期,即计数频率为晶振频率的1/1计数器模式时,外部事件计数脉冲由T0 或 T1 引脚输入到计数器。在每个机器周期的S5P2 期间采样 T0、T1 引脚电平。当某周期采样到一高电平输入,而下一周期又采样到一低电平1,更新的计数值在下一个机器周期的S3P1相同点:它们的工作原理相同,它们都有4 种工作方式,由TMOD 中的M1M00:131:16方式 2:具有自动重装初值功能的 8 位计数器;方式 3:T0 分为两个独立的 8 位计数器,T1
22、停止工作。/4答:013 位计数器,由TL05(3)和TH08TL05TH0TH0TCON 中的TF0 标志,向CPU计数初值计算的公式为:X213N116TL08TH08161计数个数与计数初值的关系为:X216N28TH08TL0TF01CPU 发出中断请求,并将TH0 中的计数初值自动送入TL0。TL01TR0=0X28N3/计数器T0,定时器T13 时相当于TR10,停止计数。方式38 位计数器TL0 使用T0TL0TF01,向CPU 发出中断请求。而TH0(计数,并且借用了T1的控制位TRTFTH0的启、停受TR1TH0的溢出将TF1。/计数器的运行控制完全由TR1TR0化编程应作何
23、处理?答:TMODGATE 的值不同:完全由TR1、TR0 确定时GATE0;完全由 、 高低电平控制GATE1。T03T1T1的开启和关闭?301T1 的开启由TR1TR11/3T1/计数器T0从P1.0输出周期为120ms12MH试设计程序。答:采用定时 20ms,然后再计数 1、49 次的方法实现。a、T01TMOD =0b、计算计数初值X:12 MHz,所以机器周期Tcy1 。Nt/ Tcy 20103/110620000 4EH 送入TH120H 送入TL1、实现程序如下:ORG0000HAJMP MAINORG0030HMAIN:MOVTMOD,#01HT12MOVTH0,# 4E
24、H装入循环计数初MOVTL0,#20H首次计数值LP0:SETB ACALL NT0 CLRMOVR7,#4949LP1:ACALL NT0DJNZ AJMP LP0NT0:MOVTH0,# MOVTL0,#20HSETB TR0JNBTF0,$CLRTR0CLRRETEND要求从P1.11000Hz12MHz答:采用T0a、T01TMOD =0b、计算计数初值X:晶振为 12 MHz,所以机器周期Tcy 为 1 。1/1000=1103 Nt/ Tcy 0.5103/1106500 X216N6553650065036FE0CH即应将FEH 送入TH0 中,0CH 送入TL0 中。c、实现程
25、序如下:ORG0000HAJMPMAIN;跳转到主程序ORG000BH;T0 的中断入口地址LJMPDVT0ORG0030HMAIN:MOVTMOD,#01HT02MOVTH0,# 0FEH;装入循环计数初值MOVTL0,#0CH;首次计数值SETBET0;T0 开中断SETBEA;CPU 开中断SETBTR0;启动 T0SJMP$;等待中断DVT0:CPLP1.1MOVTH0,# 0FEHMOVTL0,# 0CHSETBTR0RETIEND/计数器T110T1输出一个脉宽为10ms12MHz答:a、T12TMOD =1T11TMODM1M0=01,GATE=0,C/ =0,可取方式控制字为
26、10H; b、计算初值X:定时 10ms 时:12 MHz,所以机器周期Tcy1 。Nt/ Tcy 10103/110610000 即应将D8H 送入TH1 中,F0H 送入TL1 中。计数 100 时:N100 X28N2561001569CHc、实现程序如下:ORG0000HAJMPMAIN;跳转到主程序ORG001BH;T1 的中断入口地址LJMPDVT1ORGMAIN:MOV0030HTMOD,#60H;T12MOVTH1,#9CH;装入计数初值MOVTL1,#9CH;CLRP1.7SETBET1;T1 开中断SETBEA;CPU 开中断SETBTR1;启动 T1SJMP$;等待中断D
27、VT1:SETBCLRP1.7 ET1CLRTR1MOVTMOD,#10H;T11MOVTH1,#0D8H;装初值MOVTL1,#0F0HSETBTR1JNBTF1,$;查询等待 10msCLRTF1CLRTR1CLRP1.7MOVTMOD,#60H;T12MOVTH1,#9CH;装初值MOVTL1,#9CH;SETBET1;T1 开中断SETBTR1;启动 T1RETIEND/计数器T0 产生定时时钟,由P1881/秒(1 。答:采用定时 20ms,计数 50 次实现 1 秒定时。编制 1 秒延时子程序,由主程序调用。a、T01TMOD =0b、计算计数初值X:12 MHz,所以机器周期Tc
28、y1 。Nt/ Tcy 20103/110620000 4EH 送入TH120H 送入TL1、实现程序如下:ORG0000HAJMP MAIN跳转到主程ORG0030HMAIN:CLRMOVA,#01HLP0:MOVP1,A CALL RLAAJMP LP0D1SEC:MOVR7,#50计数50MOVTMOD,#01HDL:MOVTH0,#4EHMOVTL0,#20HSETB TR0JNBTF0,$CLRTR0CLRTF0DJNZR7,DLRETEND章 680C51的串行口180C51 单片机串行口有几种工作方式?如何选择?简述其特点? 答:四种工作方式,由SCON 中的SM0、SM1 进行
29、定义:方式 0:同步移位寄存器的输入输出方式,主要用于扩展并行输入或输出口,波特率固定。方式 1:10 位数据的异步通信口,波特率可变。2:113:112串行通信的接口标准有那几种?答:RS-232C 接口、RS-422A 接口、RS-485 接口答:最大距离与传输速率及传输线的电气特性有关。当传输线使用每 0.3m(约 1 ft)有 50PF 电容的非平衡屏蔽双绞线时1000bps 时, 最大传输距离将迅速下降。在利用RS-422/RS-485 通信的过程如果通信距离(波特率固定)答:离就越远。故应减小通信距离或减少负载数量。 5利用单片机串行口扩展并行输入接口电路如图所示。试编写程序完成将
30、SW1SW8 的状态反应在P0LED(如SW1L7。答:电路图如下:ORGMOVSCON,#10H LOOP:CLRP1.7NOP NOP NOPSETB P1.7 CLR RIJNB RI,$MOV SJMP LOOPEND6利用单片机串行口扩展并行输出接口电路如图所示。试编写程序完成将SW1SW8 的状态74LS164 所接的LED(如SW1 闭合时L0答:电路图如下:ORG0000HMOVMOVP1,#0FFH LOOP:MOVMOVSUBF,AJNBTI,$CLRTI SJMP END章780C51单片机的系统扩展当单片机应用系统中数据存储器RAM 地址和程序存储器EPROM读取是否会
31、发生冲突,为什么?答:80C51ROM 的读操作由PSENMOVCRAM 读操作用RDMOVXROMRAM突。7.1481C5581C5580Hb、将立即数88H81C5530H、MOVMOVX A,DPTRb、MOVA,#88HMOVDPTR,#7E30HMOVXA,DPTRI2C答:a、二线制传输。器件引脚少,器件间连接简单,电路板体积减小,可靠性提高。b、传输速率高标准模式传输速率为 100Kb/s,快速模式为 400Kb/s,高速模式为 3.4Mb/s。c、支持主/从和多主两种工作方式7、I2C 总线的起始信号和终止信号是如何定义的?答:SCL 线为高电平期间,SDA 线由高电平向低电
32、平的变化表示起始信号;SCL 线为高电平期间,SDA 线由低电平向高电平的变化表示终止信号。起始和终止信号如图所示。8、I2C 总线的数据传送方向如何控制? 答:1(0”表示主机发送数据”表示主机接收数据。10、AT24C 系列芯片的读写格式如何? 答:a、写操作过程对 AT24C02 写入时,单片机发出起始信号之后再发送的是控制字节,然后释放SDA 线并在SCL9SDA生一个应答信号,单片机收到应答后就可以传送数据了。片机就逐个发送各数据字节,但每发送一个字节后都要等待应答。单片机发出停止信号 后,启动AT24C02(约10ms。AT24C02 片内地址指针在接收到每一个数据字节后自动加 1,在芯片的“一次装载字节数”(页面字节数)n 个字节数据格式如下:b、读操作过程对AT24C02读出时,单片机也要发送该器件的
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 私域流量客户维护服务手册
- 唾液酸度检测与健康关联分析
- 瑜伽理疗体式动作规范
- 复合肥选购验收规范操作指南
- 个人防护用品佩戴监督检查
- 产妇产后恶露观察护理作业指引
- 苹果花芽分化期病虫害综合防治
- 孕期月子餐营养搭配烹饪标准
- 产后骨盆修复治疗手册
- 职业健康知识普及教育手册
- 公司破产股东债务协议书
- IPC7525B2011(CN)Stencildesignguidelines模板设计指南(中文版)
- 系统上线后运行情况汇报
- 劳动争议调解员培训课件
- 水电站大坝安全现场检查技术规程 -DL-T 2204
- 信用停车积分管理办法
- 建设用地报批培训课件
- 移动公司水电管理办法
- 涉密部门业务管理制度
- 回收制冷设备方案(3篇)
- 银行委托律师协议书
评论
0/150
提交评论