欢迎来到冰豆网! | 帮助中心 分享价值,成长自我!
冰豆网
全部分类
  • IT计算机>
  • 经管营销>
  • 医药卫生>
  • 自然科学>
  • 农林牧渔>
  • 人文社科>
  • 工程科技>
  • PPT模板>
  • 求职职场>
  • 解决方案>
  • 总结汇报>
  • 党团工作>
  • ImageVerifierCode 换一换
    首页 冰豆网 > 资源分类 > DOCX文档下载
    分享到微信 分享到微博 分享到QQ空间

    单片机基础第三版课后答案李广弟.docx

    • 资源ID:28108067       资源大小:22.52KB        全文页数:21页
    • 资源格式: DOCX        下载积分:10金币
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录
    二维码
    微信扫一扫登录
    下载资源需要10金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    单片机基础第三版课后答案李广弟.docx

    1、单片机基础第三版课后答案李广弟单片机基础课后答案 第三版(就是它了)第一章 一、填空题 1 1110 0EH 10011100 01100100 2 4 3. 255 51 4. 输入设备 5。 84 6。 630 8 1024 7. 位 字节 字 bit btype word 8. 1111 1111 00100100 11011011 9. 110 89 115 -50 二、单选: DBCAB BBCB 第二章一、填空 1 PC PC 2 反向器 晶振 两只电容 短 3 加电 手动 0000H 07H 第 0 00H 07H 4 6 2 1 12 5 DPTR DPH DPL 6 64KB

    2、 单选题 DCCAC AD 第三章一、填空题: 1 1031 2 34H 1 1 1 3 略 4 1100H 5 2 6 30H 71H 0A5H 0A5H 75H 0A7H 0AAH 0 1 IFH 1 1 0AAH 0 1 20H 1 0 0D5H 1 1 49H 0 0 二、单选题 CCBDCA 三、其它类型题 错 错 对 错 错 错 对 错 错 错 错 对 对 对 对 错 对 对 错 对 错 错 对 (三)其它类型题 3编写程序将RAM20H23H 单元的高4 位写 1,低4 位写 0。 分析:就是把这四个单元写入F0H。用一个DJNZ 的循环。 ORG 0000H MOV R0,1F

    3、H ;R0 指向20H 单元 MOV R5,#04H; 四个数 LOOP: INC R0 MOV R0,#0F0H ; 写入 DJNZ R5,LOOP ; 循环 4 次 END 4把m 和m+1 单元存有两个BCD 数,将它们合并到m 单元中,编写程序完成. (设m=30H, 高位在30H,低数在31H) ORG 0000H MOV A,30H ANL A,#0FH ;把它的高四位清零 SWAP A MOV 30H ,A ;高低四位调一下,放回原处 MOV A,31H ANL A,#0FH ORL A,30H ;合并起来 MOV 30H,A END 5.将内部RAM 中从data 单元开始的

    4、10 个无符号数相加,其和送 sum 单元多,假定相加结果小于255。编写程序完成。 (设data=30H, sun =50H) ORG 0000H MOV R0,#2FH ; 指向前一个单元 MOV R5,#0AH ;循环 10 次 CLR A ;先加到 A 中 LOOP: INC R0 ADD A,R0 DJNZ R5,LOOP MOV 50H,A END 6假定8 位二进制带符号数丰于R0 中,要求编写一个求补程序,所得补码入入R1 中。 ORG 0000H MOV A,R0 CPL A ;按位取反 ADD A,#01H ;1 MOV R1,A END 第四章一、填空题 1。 25H 4

    5、0H 03H 22。914ms 3.略 4(A ) =(30H) (A) (30H) (A) (30H) 5。 32.87ms 编程题 1把长度为10H 的字符串从内部RAM 的输入缓冲区inbuf 向位物外部RAM 的输出缓冲区outbuf 传送,一直进行到遇见回车或整个字符串传送 完毕。试编程实现。 ORG 0030H MOV R0,#inbuf MOV R1,outbuf MOV R4,#10H LOOP:MOV A,R0 ; 从内部 RAM取数 CJNE A,#0DH,LL ;是否为回车符 CR SJMP STOP ;是转停止传送 LL: MOVX R1,A ;不是则传送到外部 RAM

    6、 INC R0 INC R1 DJNZ R4,LL;沒传送完则循环 STOP: SJMP $ 2、内部 RAM从 list 单元开始存放一正数表,表中之数作无序排列,并以“-1”作结束标志。编程实现在表中找出最小数。 (3AH存放在运行程序时的最小的数) ORG 0030H MOV R0,list MOV A,R0 ;取第一个正数 LOOP: INC R0 ;指向下一个正数 MOV 3AH,R0 CJNE A,3AH,CHK ;前一个数与后一个数比较 CHK: JC LOOP1 ;前一个数小,则转 MOV A,R0 ;前一个数大,取后一个数 LOOP1: XCH A,3AH CJNE A,#0

    7、FFH,LOOP XCH A,3AH ;取最小数 MOV 3BH,A SJMP 3.内部RAM的 X,Y 单元中各存放一个带符号的数,试编程实现按如下条件进行的运算,并将结果存入 Z 单元中。 若 X 为正奇数,Z XY; 若 X 为正偶数,Z XY; 若 X 为负奇数,Z XY; 若 X 为负偶数,Z XY。 分析:负数:第 7位为 1,正数:第 7 位为0 奇数:第 0位为 1,偶数:第 0 位为0 ORG 0000H MOV A,20H CLR C RL A JC FS ;移到负数处处理 RR A RR A ;第0 位移到 C 再判定一下是不是 1 JC ZJS ;到正奇数处 MOV A

    8、,20H ORL A,21H MOV 22H,A SJMP OK ZJS: MOV A,20H ADD A,21H MOV 22H,A SJMP OK FS: MOV A,20H CLR C RR A JC FJS ;第0位是 1,移到正 奇数处理 MOV A,20H XRL A,21H MOV 22H,A SJMP OK FJS: MOV A,20H ANL A,21H MOV 22H,A OK: END 4、把一个 8 位二进制数的各位用 ASCII 码表示之(亦即为“0”的位用 30H 表示,为“1”的位用 31H 表示)。该数存放在内部 RAM 中 byte 单元中.变换后得到的 8

    9、个ASCII 码存放在外部 RAM以 buf 始的存储单元中去。 ORG 0030H MOV R0,byte MOV DPTR,#buf MOV R5,#08H MOV A,R0 LOOP: RLC A MOV R7,A JC LOOP1 MOV A,#30H SJMP LOOP2 LOOP1: MOV A,31H LOOP2: MOVX DPTR,A MOV A,R7 INC DPTR DJNZ R5,LOOP 5.编程实现运算式c = a2 2 +b 假定a、 b、 c 3 个数分别存放在内部RAM的DA、DB、DC单元中,别有平方运算子程序调用. (内部 RAM的 DA、DB、DC 单元

    10、设为20H 21H 22H) ORG 0000H MOV A,20H PUSH ACC AJMP SQR POP ACC MOV 22H,A MOV A,21H PUSH ACC AJMP SQR POP ACC ADD A,22H MOV 22H,A END 6、比较两个ASCII 码字符串是否相等。字符串的长度在内部 RAM 41H 单元,第一个字符串的首地址为 42H,第二个字符串的首地址为 52H。如 果两个字符串相等,则置内部 RAM 40H 单元为 00H;否则置 40H 单元为FF。 ORG 0030H MOV R0,42H MOV R1,52H MOV R7,41H ;字符串长

    11、度 LOOP: MOV A,R0 MOV 30H,R1 CJNE A,30H,LK INC R0 INC R1 DJNZ R7,LOOP MOV 40H ,#00H SJMP DD LK: MOV 40H,0FFH DD: SJMP DD 7。外部RAM首址为 table 的数据表中,有 10 个字节的数据.编程将每个字节的最高位无条件地置“1”. ORG 0030H MOV DPTR,table MOV R6,10 LOOP:MOVX A,DPTR SETB E7H; E7H 就是累加器 A 的最高位(ACC。7), 也可 : SETB ACC.7 MOVX DPTR,A INC DPTR

    12、DJNZ R6,LOOP 3编写程序将RAM20H23H 单元的高4 位写 1,低4 位写 0。 分析:就是把这四个单元写入F0H。用一个DJNZ 的循环。 ORG 0000H MOV R0,1FH ;R0 指向20H 单元 MOV R5,#04H; 四个数 LOOP: INC R0 MOV R0,#0F0H ; 写入 DJNZ R5,LOOP ; 循环 4 次 END 4把m 和m+1 单元存有两个BCD 数,将它们合并到m 单元中,编写程序完成. (设m=30H, 高位在30H,低数在31H) ORG 0000H MOV A,30H ANL A,0FH ;把它的高四位清零 SWAP A M

    13、OV 30H ,A ;高低四位调一下,放回原处 MOV A,31H ANL A,#0FH ORL A,30H ;合并起来 MOV 30H,A END 5。将内部RAM 中从data 单元开始的 10 个无符号数相加,其和送 sum 单元多,假定相加结果小于255。编写程序完成。 (设data=30H, sun =50H) ORG 0000H MOV R0,#2FH ; 指向前一个单元 MOV R5,#0AH ;循环 10 次 CLR A ;先加到 A 中 LOOP: INC R0 ADD A,R0 DJNZ R5,LOOP MOV 50H,A END 6假定8 位二进制带符号数丰于R0 中,要

    14、求编写一个求补程序,所得补码入入R1 中。 ORG 0000H MOV A,R0 CPL A ;按位取反 ADD A,#01H ;1 MOV R1,A END 第四章一、填空题 1。 25H 40H 03H 22.914ms 3.略 4(A ) =(30H) (A) (30H) (A) (30H) 5。 32.87ms 编程题 1把长度为10H 的字符串从内部RAM 的输入缓冲区inbuf 向位物外部RAM 的输出缓冲区outbuf 传送,一直进行到遇见回车或整个字符串传送 完毕。试编程实现。 ORG 0030H MOV R0,inbuf MOV R1,outbuf MOV R4,#10H L

    15、OOP:MOV A,R0 ; 从内部 RAM取数 CJNE A,0DH,LL ;是否为回车符 CR SJMP STOP ;是转停止传送 LL: MOVX R1,A ;不是则传送到外部 RAM INC R0 INC R1 DJNZ R4,LL;沒传送完则循环 STOP: SJMP 2、内部 RAM从 list 单元开始存放一正数表,表中之数作无序排列,并以“-1”作结束标志。编程实现在表中找出最小数。 (3AH存放在运行程序时的最小的数) ORG 0030H MOV R0,#list MOV A,R0 ;取第一个正数 LOOP: INC R0 ;指向下一个正数 MOV 3AH,R0 CJNE A

    16、,3AH,CHK ;前一个数与后一个数比较 CHK: JC LOOP1 ;前一个数小,则转 MOV A,R0 ;前一个数大,取后一个数 LOOP1: XCH A,3AH CJNE A,0FFH,LOOP XCH A,3AH ;取最小数 MOV 3BH,A SJMP $ 3.内部RAM的 X,Y 单元中各存放一个带符号的数,试编程实现按如下条件进行的运算,并将结果存入 Z 单元中。 若 X 为正奇数,Z XY; 若 X 为正偶数,Z XY; 若 X 为负奇数,Z XY; 若 X 为负偶数,Z XY。 分析:负数:第 7位为 1,正数:第 7 位为0 奇数:第 0位为 1,偶数:第 0 位为0 O

    17、RG 0000H MOV A,20H CLR C RL A JC FS ;移到负数处处理 RR A RR A ;第0 位移到 C 再判定一下是不是 1 JC ZJS ;到正奇数处 MOV A,20H ORL A,21H MOV 22H,A SJMP OK ZJS: MOV A,20H ADD A,21H MOV 22H,A SJMP OK FS: MOV A,20H CLR C RR A JC FJS ;第0位是 1,移到正 奇数处理 MOV A,20H XRL A,21H MOV 22H,A SJMP OK FJS: MOV A,20H ANL A,21H MOV 22H,A OK: END

    18、 4、把一个 8 位二进制数的各位用 ASCII 码表示之(亦即为“0”的位用 30H 表示,为“1的位用 31H 表示)。该数存放在内部 RAM 中 byte 单元中.变换后得到的 8 个ASCII 码存放在外部 RAM以 buf 始的存储单元中去。 ORG 0030H MOV R0,byte MOV DPTR,#buf MOV R5,#08H MOV A,R0 LOOP: RLC A MOV R7,A JC LOOP1 MOV A,30H SJMP LOOP2 LOOP1: MOV A,#31H LOOP2: MOVX DPTR,A MOV A,R7 INC DPTR DJNZ R5,LO

    19、OP 5.编程实现运算式c = a2 +b2 假定a、 b、 c 3 个数分别存放在内部RAM的DA、DB、DC单元中,别有平方运算子程序调用。 (内部 RAM的 DA、DB、DC 单元设为20H 21H 22H) ORG 0000H MOV A,20H PUSH ACC AJMP SQR POP ACC MOV 22H,A MOV A,21H PUSH ACC AJMP SQR POP ACC ADD A,22H MOV 22H,A END 6、比较两个ASCII 码字符串是否相等.字符串的长度在内部 RAM 41H 单元,第一个字符串的首地址为 42H,第二个字符串的首地址为 52H。如

    20、果两个字符串相等,则置内部 RAM 40H 单元为 00H;否则置 40H 单元为FF。 ORG 0030H MOV R0,42H MOV R1,52H MOV R7,41H ;字符串长度 LOOP: MOV A,R0 MOV 30H,R1 CJNE A,30H,LK INC R0 INC R1 DJNZ R7,LOOP MOV 40H ,00H SJMP DD LK: MOV 40H,#0FFH DD: SJMP DD 7。外部RAM首址为 table 的数据表中,有 10 个字节的数据。编程将每个字节的最高位无条件地置“1”。 ORG 0030H MOV DPTR,table MOV R6

    21、,10 LOOP:MOVX A,DPTR SETB E7H; E7H 就是累加器 A 的最高位(ACC。7), 也可 : SETB ACC。7 MOVX DPTR,A INC DPTR DJNZ R6,LOOP 第五章一、填空题 1 各项任务 2 INT0 T0 INT1 T1 串口 3 PC PC ROM 4 中断源 查询状态 5 1000000 1000000/65536 = 15。26 6 100 ms 7 111 101 8 T1 2 0FFH 001BH 二、单选题: DCAADCD 单片机基础 第五章 习题 课本 5.。1 设单片机的晶振频率为6MHZ,使用定时器 1 以方式0 产

    22、生 500us 的等宽正方波连续脉冲,并由P1。0 输出。 分析:使用P1.0 输出脉冲,可由定时器产生一个250us 的定时,到了时间,就执行CPL P1.0 就可以了。所以问题转化为产生定时。 解:(1) 计算定时器的初值: (2 13X ) T机 T定时 代入数据得:X 8067 由于方式0 的特点(高8 位,低 5 位),计算出TH1,TL1 得TH1 0FCH TL1 03H (2 ) 计算出TMOD 的初始值: TMOD 00H (3) 编程实现: 方法一:使用查询法。程序不断地查询 TF1 的值。如定时器溢出(TF11),则CPL P1.0 所以: MOV TMOD ,#00H

    23、MOV TH1,0FCH MOV TL1,03H MOV IE, #00H ;不用中断的方法,关掉 SETB TR1 ;开启定时器 LOOP: JBC TF1,LOOP1 AJMP LOOP LOOP1: MOV TH1,#0FCH MOV TL1,03H CPL P1。0 AJMP LOOP 方法二:使用中断的方法.需确定寄存器:TMOD 00H IE 88H TCON =40H (或 SETB TR1) T1 的中断向量001BH 程序如下: ORG 0000H AJMP MAIN ORG 001BH AJMP T1TIMER MAIN: MOV TMOD,#00H MOV TCON,40

    24、H MOV IE,#88H MOV TCON ,#40H MOV TH1,0FCH MOV TL1,#03H Here :AJMP Here T1_TIMER: MOV TH1,0FCH MOV TL1,03H CPL P1.0 RETI 注意:定时器定时或计数,不会影响CPU 的工作。 定时方式 1:与方式0 没有大的区别,只有定时器是 16 位的。所以 定时(2 x初值) T机 方式2:8 位初值自动赋值的定时/计数器 解法一样: (1) 计算T 的初始值 (2 ) TMOD ? (2 ) 程序设计 方式三: T0: TL0 8 位,可作定时也可作计数,与方式 0,一样使用。 TH0:8

    25、位,只能作定时,借作 TR1 TF1 T1:没法中断,只能产生不断的脉冲,全波特率 可用方式 0,1,2。如要停止脉冲,要强制设方式3 第六章一、填空题 1、 8 16 13 2 2、 高电平 低电平 高阻 3、 256 数据 4KB 程序 64KB 数据 64KB 程序 4、 16 P0 P2 5、 PSEN RD WR ALE CE ALE 6 6、 16KB 31FFH 7、 外存 8、 片选 9、 3 PSEN ALE 二、单选题 DADDC ADA 第七章 填空题 1 数据 ALE RD WR 2 无条件传送 查询 中断 3 缓冲 锁存 4 12 11 5 高 口方式定义 C 位置位/复位 6 方式1 输出 方式 1 输出 输出 输入 7 10100111 单选题 DACDBB 哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈


    注意事项

    本文(单片机基础第三版课后答案李广弟.docx)为本站会员主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2022 冰点文档网站版权所有

    经营许可证编号:鄂ICP备2022015515号-1

    收起
    展开