单片机课后习题修改版Word下载.docx
- 文档编号:6669981
- 上传时间:2023-05-07
- 格式:DOCX
- 页数:21
- 大小:20.94KB
单片机课后习题修改版Word下载.docx
《单片机课后习题修改版Word下载.docx》由会员分享,可在线阅读,更多相关《单片机课后习题修改版Word下载.docx(21页珍藏版)》请在冰点文库上搜索。
在单片机中,问到指令的寻址方式,既要答目标操作数的寻址方式,也要答源操作数的寻址方式,这与微机不同,请切记!
1-13、【1】数值计算,能实时监测系统的输入量,控制系统的输出量,从而实现自动控制功能,主要面向工业控制等
【2】可参考23页
【3】可参考21~22页
第二章
2-1、略
2-2、【1】程序存储器64KB
【2】片内数据存储器256B
【3】外部数据存储器64KB
2-3、【1】32
【2】在读写外部存储器时
2-4、防止P1.x引脚被钳位在低电平状态
2-5、10mA
2-6略
2-7、【1】使用工作寄存器0区
【2】01H
2-8、SETBRS1
CLRRS0
2-9、【1】直接或寄存器间接寻址
【2】寄存器间接寻址
【3】直接寻址
【4】寄存器间接寻址
2-10、【1】一个机器周期=12个时钟周期
【2】1/12MHz*12MHz=1us
2-11、略
2-12、略
2-13、74HC573,74HC373芯片是“高电平送数,下降沿锁存”芯片。
【1】读取外部数据存储器时,在读信号后沿到来前须将数据信息送到数据线上,即利用读信号后沿锁存外部数据信息,而送数时钟LE与读信号相位匹配,故可以用其来扩展输入口;
【2】写外部数据存储器时,一般在写信号下降沿锁存数据信息,在写信号无效后,数据还会维持小于一个时钟周期的时间,当时钟频率高时,维持时间小于一个门电路的延时时间,当用74HC573或74HC373作为扩展输出口时,在写信号不加反相器时,LE与写信号相位不匹配,若加了反相器,数据输出锁存脉冲LE的下降沿对应写信号的后沿(即上升沿),同时写信号有效时间也得到了延时(延了一个门电路的时间),导致在写信号后沿到来时数据可能已经无效了,使锁存输出数据不可靠,故不可以用其来扩展输出口。
(可以参考63页的图来理解)
2-14、【1】各单元内容没改变
【2】0000H
2-15、【1】MOVX
【2】P3.6和P3.7
2-16、略
2-17、【1】55H
【2】略
第三章
3-1、低128字节:
(1)直接寻址:
MOVA,30H
(2)寄存器间接寻址:
MOVR0,#30H,
MOVA,@R0
高128字节:
寄存器间接寻址:
MOVR0,#80H,
MOVA,@R0
3-2、RET:
用于子程序返回
RETI:
用于中断服务程序返回
3-3、
(1)MOV40H(直),A(寄)
(2)MOVA(寄),@R0(寄间)
(3)MOVX@DPTR(寄间),A(寄)
(4)MOVCA(寄),@A+DPTR(基变)
(5)ADDA(寄),#32H(立即)
(6)PUSHACC(直接)
(7)MOVP1(直),32H(直)
(8)MOVC(位),P1.0(位)
(9)INCP0(直)
(10)DECR2(寄)
(11)SJMPEXIT(相对)
3-4、不变,验证(略)
3-5、
(1)ADDA,20H
MOV20H,A
(2)MOVR0,#80H
MOVA,@R0ADDA,31H
MOV31H,A
(3)MOVA,20H
MOVDPTR,#20H
MOVX@DPTR,A
(3)MOVDPTR,#0D0H
MOVA,PSW
MOVX@DPTR,A
(5)MOVR0,#08H
MOVDPTR,#8000H
MOVR7,#120
LOOP:
MOVX@DPTR,A
INCR0
INCDPTR
DJNZR7,LOOP
(6)MOVR0,#40H
MOVR7,#64
MOVXA,@DPTR
MOV@R0,A
(7)MOVR0,#40H
MOVR7,#128
MOVXA,@DPTR
MOV@R0,A
MOVR0,#40H
MOVDPTR,#00H
LOOP1:
DJNZR7,LOOP1
(8)MOVA,40H
MOVDPTR,#8000H
ADDA,@DPTR
MOV40H,A
MOVA,41H
INCDPTR
ADDCA,@DPTR
MOV41H,A
(9)MOVA,#04H
MOVDPTR,#1000H
MOVCA,@A+DPTR
MOVDPTR,#3003H
(10)MOVR0,#01H
LOOP:
MOV@R0,#00H
INCR0
CJNER0,#00H,LOOP
(11)略
(12)ANL20H,#01110111B
ORL20H,#01000100B
XRL20H,#00010001B
(13)ANLIPH,#01101111BORLIPH,#00000101B
(14)MOVA,30HRLARLAMOV30H,A
(15)MOVA,40H
DAA
ADDCA,@DPTR
DAA
(16)MOV30H,#32H
(17)MOVR0,#88HMOV@R0,32H
(18)MOVC,ACC.3MOVACC.0,C
(19)MOVC,P1.3
CPLP1.2
ANLC,P1.2
MOVP1.3,C
MOVC,P1.1
ORLC,P1.0
CPLC
ORLC,P1.3
3-6、MOVA,R2
ADDA,#99H
DAA
MOVR2,A
MOVA,R3
ADDCA,#99H
MOVR3,A
3-7、MOVR7,#16
MOVDPTR,#DATATAB
INCAUXR1
MOVDPTR,#4000H
MOVA,@DPTR
3-8、MOVA,R2
ANLA,#0F0H
SWAPA
MOVB,#10
MULAB
MOVB,A
MOVA,R2
ANLA,#0FH
ADDA,B
MOVR2,A;
R2转换完毕
MOVA,R3
ANLA,#0FH
MOVB,#100
MULAB
ADDA,R2
MOVR2,A
MOVA,B
ADDCA,#0
MOVR3,A
3-9、MOVA,R2
MOVB,#10
DIVAB
SWAPA
ORLA,B
3-10、略
3-11、
(1)立即数寻址直接寻址
(2)略
3-12、
(1)R7~R0的物理地址:
07H~00H
(2)CLRRS1
SETBRS0
第四章
4-1、【1】4;
【2】MOVIPH,#00010111BMOVIP,#00010000B
4-2、【1】2;
【2】一般情况下,采用边沿触发
4-3、TI,RI,TF2EXF2电平触发方式下的IE0和IE1
4-4、【1】每个机器周期S5P2相锁存引脚的电平状态,并在下一周期的S6状态按优先级的顺序查询没有被禁止的中断请求标志
【2】a此中断源的允许位为1;
bCPU已经开中断(即EA=1);
c当前的中断请求比现在服务的中断优先级比高;
d必须在当前的指令执行完才响应中断;
e在RETI或读写IE或IP或IPH之后,不会马上响应中断请求,而至少执行一条其它指令之后才会响应)。
4-5、课本第132页的区别
4-6、课本第132页的
(1)同级中断不能嵌套
4-7、课本第132页的
4-8、选择边沿触发方式程序如下:
4-9、【1】增强型有3个;
【2】T1的主要用途有定时/计数和作为串口波特率发生器
4-10、65536us;
256us
4-11、MOVR2,#5计数次数
MOVTH0,#0D8H
MOVTL0,#0F0H
ANLTMOD,#0F0H
ORLTMOD,#01H
SETBTR0
SETBEA
SETBET0
SIMP$
CTC0:
PUSHPSW
PUSHACC
DJNZR2,EXIT
MOVR2,#5
CPLP1.0
EXIT:
POPACC
POPPSW
RETI
4-12、ORG0000H
LJMPMAIN
MAIN:
MOVTH2,#0ECH
MOVTL2,#78H
MOVRCAP2H,#0ECH
MOVRCAP2L,#78H
MOVT2CON,#4H
SETBTR2
SJMP$
END
4-13、
ORG0000H
LJMPMAIN
ORG000BH
LJMPCTC0
ORG100H
MAIN:
MOVSP#5FH
MOVR0,#400
MOVTH0,#0DCH
MOVTL0,#00H
ANLTMOD,#0F0H
MOVTH2,#01AH
MOVTL2,#0AH
MOVRCAP2H,#1AH
MOVRCAP2L,#0AH
MOVT2CON,#00HT2工作于时钟输出方式
MOVT2MOD,#02H
CLRTR2
SETBTR0
SETBET0
SETBEA
CTC0:
PUSHPSW
PUSHACC
DJNZR0,EXIT
MOVR0,#400
CPLTR2
4-14、中断允许控制寄存器IE为1(有效),这时定时器T2只能工作在下降沿触发自动重装初值16位定时/计数器
4-15、参考第159页的图a,再加上一片74HC164芯片,其中一片74HC164的CLK连接另一片74HC164的AB与线
4-16、方式0和方式2
4-17、MAIN:
MOVTMOD,#20HT1工作于方式2
MOVTH1,#F4H波特率2400
MOVTL1,#F4H
MOVSCON,#00H串口工作于方式3,允许接收
MOVPCON,#00HSOMD=0
MOVR0,#50H串口数据缓冲地址
MOVR7,#10H数据长度
CLRTI
CLRRI
;
;
接收;
;
WAIT:
JBCRI,RESUB等待接收数据
SJMPWAIT
RESUB:
MOVA,SUBF取数据→A
CJNZR7,#11H检查数据是否接收完毕
JCOVER
JBRB8,PCH1判断奇偶校验是否出错
JBP,PER
SJMPPCH2
PCH1:
JNBP,PER
PCH2:
MOV@R0,A取数据→R0,启动接收
DJNZR7,WAIT判断数据块是否接收完毕
OVER:
MOVRI,0
RET
PER:
SETBPSW.5奇偶出错
发送;
TRSUB:
CRLTI
MOVA,@R0取数据
MOVC,P加奇偶位
MOVTB8,C
MOVSUBF,A发送
WAIT1:
JBCTICONT判断是否发送完
SJMPWAIT1
CONT:
DJNZR7,LOOP
END
4-18、ORG0000H
ORG002BH
LJMPCTC2
MOVDPTR,#80H
MOVR7,#8
MOVTH2,#9EH
MOVTL2,#58H
MOVRCAP2H,#9EH
MOVRCAP2L,#58H
MOVT2CON,#04H
SETBET2
CTC2:
MOVXA,@DPTR
MOVP1,A
MOVR7,#8
RETT
4-19、MOVTL1,#0F4H
MOVTH1,#0F4H
ANLTMOD,#0FH
ORLTMOD,#20H
SETBTR1
CLRET1
ANLPCON,#3FH
MOVSCON,#70H
SETBES
4-20、课本第154页最后一段
另附:
1.例:
接收到的数据放30H,待发送的数据放在40H,串口工作在方式1,波特率9600,晶振频率:
11.0592MHz,编写主程序和串口中断服务程序(不考虑接收后数据的处理,且待发送的数据始终准备好)。
分析:
1设定定时器的工作模式,根据选用的晶振计算计初值。
2设定TCON,PCON,TMOD,TH1,TL1
3编写主程序和串口中断服务程序。
ORG0023H
LJMPSERIAL
ORG0100H
MOVSP,#5FH
MOVTL1,#0FDH
MOVTH1,#0FDH
ANLTMOD,#0FH
ORLTMOD,20H
SETBTR1
ANLPCON,#3FH
MOVSCON,#50H
SJMP$
SERIAL:
PUSHAcc
CLRRS1
JNBRI,NEXT1
MOVA,SBUF
MOV30H,A
SJMPEXIT
NEXT1:
MOVA,40H
MOVSBUF,A
EXIT:
POPAcc
RETI
2.例:
串口工作在方式1,波特率9600,晶振频率:
11.0592MHz,从串口接收数据后又马上发送出去。
ORG3000H
MAIN:
MOVTMOD,#20H;
在11.0592MHz下,串行口波特率
MOVTH1,#0FDH;
9600bps,方式1
MOVPCON,#3FH
MOVSCON,#50H
JBCRI,RECEIVE;
接收到数据后立即发出去
SJMPLOOP
RECEIVE:
MOVA,SBUF
MOVSBUF,A
SEND:
JBCTI,SENDEND
SJMPSEND
SENDEND:
SJMPLOOP
第六章
6-1、【1】写数据时,数据出现在数据线上的时间比较短,在出现后沿时,数据线上的数据可能已经无效了,起不到锁存作用。
【2】74HC273、74HC174、74HC374、74HC377
6-2、略
6-3、【1】复位期间:
LED不发光,因为在复位期间P1口输出高电平
【2】复位后:
LED发光,因为在复位后P1口输出低电平
6-4、【1】M=N
【2】4
6-5、【1】正常工作时能发光、导通电压大于普通二极管、导通后,伏安特性曲线更陡、反向击穿电压低等
6-6、R=(Vcc-Vf-Vces)/If
6-7、共阴、共阳
6-8、【1】优:
直接利用I/O口作笔段码锁存器,软件编程简单
缺:
硬件复杂,I/O口利用率低
【2】优:
硬件结构简单、I/O口利用率高
软件编程难度大
【3】动态显示驱动方式
6-9、略
6-10、R=(Vcc-Vce)/Ic=(5-0.7)/1.2=3.6千欧
6-11、参考280页例题程序
6-12、【1】t=1/(f*N)2.5ms=1/(f*8)f=1/(2.5*8)msf=50Kz
【2】t=1/(f*N)2.0ms=1/(25*N)N=20
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机 课后 习题 修改