云题海 - 专业文章范例文档资料分享平台

当前位置:首页 > 《单片机原理及应用》期末复习题1电子教案

《单片机原理及应用》期末复习题1电子教案

  • 62 次阅读
  • 3 次下载
  • 2025/6/20 15:36:43

CJNE A,# 4FH,BD SJMP L1

BD:MOV 80H,#0FFH L1: RET

2、外部RAM单元2000H的内容传送到内部RAM单元70H;

MOV DPTR,#2000H MOVX A,@DPTR MOV 70H, A

3、将32H单元中内容的第7位取反后送给50H。 MOV A,32H CPL ACC.7 MOV C,ACC.7 MOV 50H,C

4、若(50H)=40H,试写出执行以下程序段后累加器A、寄存器R0及内部RAM的40H、41H、42H单元中的内容各为多少?(5分) MOV A,50H ;(A)=40H MOV R0,A ;(R0)=40H MOV A,#00H ;(A)=0 MOV @R0,A ;(40H)=0 MOV A, #3BH ;(A)=3BH MOV 41H,A ;(41H)=3BH MOV 42H,41H ;(42H)=3BH

(A)= 3BH ; (R0)= 40H;

(40H)= 0; (41H)= 3BH;(42H)= 3BH

5、将外部数据存储器3000H开始100个存储单元的内容存入3070开始的存储单

元(9分)

MOV DPTR #3000H

MOV P2,#30H MOV R1,#70H

MOV R5,#100

L1: MOVX A, @DPTR MOVX@R1,A

INC R1 INC DPTR DJNZ R5, L1 RET

四、读程序填空

1. CLR C

MOV A, 4DH SUBB A,, 4EH MOV 30H, A MOV A, 7FH SUBB A, 2BH MOV 31H, A SJMP $

(1)该程序的功能是: 两个16位数的减法:(7F4DH)-(2B4EH),结果存入内部RAM的30H和31H单元,31H单元存差的高8位,30H单元存差的低8位

(2)若(4DH)=06H,(4EH)=05H,(7FH)=0AH,(2BH)=01H 则执行上述程序后(30H)= 01 H。(31H)= 09 H。

2. START: MOV R0 , #40H MOV R7, #04H MOV A, @R0 LOOP: INC R0

MOV 50H , @R0

CJNE A, 50H , NEXT NEXT: JNC BIE1 MOV A, 50H BIE1: DJNZ R7, LOOP MOV 30H, A RET

(1) 该程序的功能是: 求出40H—44H中最大的无符号数,并将最大数存入30H中

(2) 设(40H)=12H, (41H)=22H , (42H)= 6EH, (43H)=5AH , (44H)= 8AH,

填写程序执行后的结果,(30H)= 8A H。

3.已知(30H)=49H,(31H)=2BH,(32H)=0A3H,执行以下程序: MOV R7,# 4 RR0: MOV R6,# 3 CLR C

MOV R0,# 30H

RR1: MOV A,@R0 RRC A MOV @R0,A INC R0

DJNZ R6,RR1 DJNZ R7,RR0 RET

从该程序可看出这段程序的功能是: 将内RAM中30H~32H的内容 右移4位 执行后结果:(30H)= 04H ,(31H)= 92H ,(32H)= 0BAH 。

(3分)

4、 已知(A)=58H,(30H)=7FH,(P1)=EAH,执行下列程序: MOV SP,#40H PUSH A PUSH 30H MOV A,P1 MOV 30H,A POP 30H POP A 执行后结果:(SP)= 40H ,(A)= 58H ,(30H)= 7FH ,(41H)= 58H 。

五、根据题意,按要求答题。

1. AT98S51单片机P1口上接8只发光二极管(高电平亮,低电平灭),若晶振频率是12MHz,用定时/计数器T0以工作方式1工作,使8只发光二极管每1S单循环点亮。

(1) 计算定时初值,写出过程 (2) 根据相关注释,填写程序 (3)

答:(1)定时初值:

(216-X)×1μS = 50mS

X=216-50000 =15536

(2) MOV TMOD,#01H ;设T0工作方式

MOV DPTR,#15536 ;置定时初值50mS MOV TH0,DPH MOV TL0,DPL

MOV A,#01H ;置A初值 SETB TR0 ;允许定时

LOOP:MOV R7,#20 ;设定时次数 MOV P1,A ;从P1口输出

LOOP1: JNB TF0,$ ;判断定时50mS到没 CLR TF0 ;定时时间到,TF0清0 MOV TH0,DPH ;重新置定时初值50mS MOV TL0,DPL

DJNZ R7,LOOP1 ;判断定时次数到没 RL A ;输出左移

SJMP LOOP ;继续循环输出 END

2、根据给定存储类型和数据类型,声明下列变量:

(1)在片内RAM低128字节定义一个有符号整型变量val,初值为100;

(signed) int data val = 100;

(2)在ROM定义一个3元素的无符号字节数组num,数组内容分别为:12H,34H,56; unsigned char code num[3] = {0x12, 0x34, 56};

(3)在片外RAM定义一个指向无符号字节类型的指针变量p; unsigned char xdata *p;

6、简述矩阵式8行2列键盘的工作过程,其中P1口连接8根行线,P3.0和P3.1连接2根列线。

判断是否有键按下:先给列线P3.0和P3.1送低电平,然后读行线P1的值,判断P1是否为0xff;若P1为0xff则表示没有键按下,则返回重新判断是否有键按下;若P1不为0xff则表示有键按下,则延时10ms去抖动,再重新读行线P1口,再次判断是否有键按下。

若确实有键按下,则判断哪一个键按下:先给第一根列线P3.0送低电平,而P3.1送高电平,然后读行线P1,判断P1是否为0xff;若是则表示按下的键在这第一列;否则给第二列P3.1送低电平,而P3.0送高电平,然后读行线P1,判断P1是否为0xff,若是则表示按下的键在这第二列;找到按键所在列后,再根据读到的行线值中0的位置从而判断按键所在行线。 确定按键后,执行按键所对应的服务程序;然后等待键释放;按键释放通过给所有的列线P3.0和P3.1送低电平,然后读行线P1的值来进行判断;按键释放后再次延时去抖动,然后返回重新判断是否有键按下。

7、简述51单片机串行双机通信的过程,写明发送和接收时软硬件分别执行的操作。 先

数据发送时,在TI=0时,CPU将待发送数据送入SBUF,启动发送;数据由TXD引脚按位送出,发送时钟由T1控制,最先送出起始位(0),然后依次是8位数据位(低位在前),最后是停止位(1);一帧数据发送完毕后,硬件自动将TI置1,向CPU请求中断;CPU接收到请求信号后,需将TI清0,然后才能启动下一次发送。

数据接收时,允许接收位REN必须置1,接收器开始工作;当接收到起始位(0),启动接收;在波特率的控制下,把接收到的数据依次移入移位寄存器;当接收完一帧数据,将移位寄存器中的数据送入SBUF,同时硬件自动将RI置1,向CPU请求中断。CPU接收到请求信号后,需将RI清0,然后才能正常接收下一帧数据。

  • 收藏
  • 违规举报
  • 版权认领
下载文档10.00 元 加入VIP免费下载
推荐下载
本文作者:...

共分享92篇相关文档

文档简介:

CJNE A,# 4FH,BD SJMP L1 BD:MOV 80H,#0FFH L1: RET 2、外部RAM单元2000H的内容传送到内部RAM单元70H; MOV DPTR,#2000H MOVX A,@DPTR MOV 70H, A 3、将32H单元中内容的第7位取反后送给50H。 MOV A,32H CPL ACC.7 MOV C,ACC.7 MOV 50H,C 4、若(50H)=40H,试写出执行以下程序段后累加器A、寄存器R0及内部R

× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:10 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219
Copyright © 云题海 All Rights Reserved. 苏ICP备16052595号-3 网站地图 客服QQ:370150219 邮箱:370150219@qq.com