单片机原理与应用模拟题3.docx

  1. 1、本文档共5页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
单片机原理及应用模拟题 3 一、分析程序的执行结果, 将结果填写到空格中 。 1、 MOV 40H,#80H MOV R0,#40H MOV A,@R0 ;(A= 80H ) MOV B,#20H DIV AB ;(A= 4 B= 0 ) MOV @R0,A ;最终结果存于内存单元 40H 中。 2、 MOV A,#2AH RR A MOV B,A MUL AB ;(A= B9H B= 01H ) (OV= 1 CY= 0 ) 3、 MOV A,#0B2H MOV R1,#055H ANL A,R1 ;(A= 10H ) ORL A,R1 ;(A= 55H ) XRL A,R1 ;(A= 00H ) SWAP A ;(A= 55H ) 4、 设内存 20H 的内容为 30H,30H 的内容为 46H,46H 的内容为 57H MOV R0,#30H MOV A,@R0 ;(PSW 中 P的内容= 1 ) XCH A,R0 ADD A,#0DBH SUBB A,#74H ;(A= 96H ) ;(PSW 中 P的内容= 0 ) ;( PSW 中C 的内容= 1 ) - 1 - 二、程序设计 1、MCS51 内部 RAM 40H~60H 单元存放着有符号 16 进制数,将其中能被 2 整除的数,存放到 0090H 单元开始的外部 RAM 中。[使用汇编语言编写 ] 解: ORG 0000H JMP START START: MOV SP,#60H MOV DPTR,#0090H MOV R0,#40H MOV R1, #21 LOOP0 : MOV A ,@R0 MOV B, #2 DIV AB MOV R2, B CJNZ R2, #0, LOOP1 ; 余数为 0 则继续 ,不为 0 则转移 MOV A,@R0 MOV @DPTR,A INC DPTR LOOP1: INC R0 DJNZ R1, LOOP0 END 2、某一故障检测系统,当出现故障时, 线路出现下降沿;没有故障时,线路为 高电平。出现故障时,相应的指示灯变亮。故障消失后,指示灯熄灭。试用 MSC1211 为单片机实现该故障检测功能,画出电路原理图,并写出相应程 序。 解答:如图所示,使用 P10作为故障指示灯 ,故障源从 P32输入, - 2 - 相应的程序为: ORG 0000H AJMP MAIN ORG 0003H LI: CLR P1.0 JNB P1.0,LI RETI ORG 1000H SETB IT0 SETB EX0 SETB EA HERE: SETB P1.0 AJMP HERE END 3、用 MSC1211 的 T1 定时/计数器,定时 0.1S中断,使 P1 口的 8 个发光二极 管每隔 1S 循环点亮。设系统主频为 6MHZ。 解:ORG 0000H LJMP MAIN ;转主程序 ORG 001BH ;T1 中断服务程序入口地址 LJMP T1-ISR ORG 0100H - 3 - MAIN :MOV SP,#60H ;设置堆栈指针 MOV P1,#01H ;设置 P1.1 发光 MOV TMOD ,#10H ;T1 初始化 MOV TL1 ,#B0H MOV TH1 ,#3CH SETB TR1 ;启动 T0 计数 SETB ET1 ;允许 T0 中断 SETB EA ;CPU 开中断 SJMP $ ;等待 T1_ISR:MOV TL1,#B0H MOV TH1,#3CH MOV A,P1 ;P1 口循环左移 RL A MOV P1,A EXIT: RETI END 4、设有甲、乙两台单片机, 以工作方式 3 进行串行通讯, 设晶振为 11.0592MHz, 波特率为 9600,甲机将内存单元中的 120个数据作补偶校验后发送给乙机,乙 机对接收到的数据进行奇偶校验,若校验正确,则从机发送 00H 给甲机,甲机 继续发送数据,校验不正确,则发送 0FFH 给甲机,甲机重新发送原数据,编 写乙机的接收程序。(应在适当的地方加程序注释) 解:ORG 0000H AJMP MAIN ORG 0023H LJMP SE2_INT MAIN: MOV SP,#60H MOV TMOD #20H MOV TH1,#0FDH ; 设置波特率为 9600bps MOV TL1,#0FDH MOV SCON,#90H ; 串行口工作方式 3,允许接收 MOV DPTR,#2000H; 接收数据区 MOV R1,#120 SETB TR1 SETB EA SETB ES - 4 - SJMP $ ;等待接收中断 SE2_INT: JB RI,LOOPA CLR T1 LJMP ENDR LOOPA :CLR RI MOV A,SBUF MOV

文档评论(0)

5566www + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:6122115144000002

1亿VIP精品文档

相关文档