单片机实验答案
单片机课后作业答案.
(2)XCH A,30H
;A=( A5H )
(3)XCH A,@R0
;A=( A5H )
(4)XCHD A,@R0 ;A=( 75H )
(5)SWAP A
;A=( A7H )
(6)ADD A,R0 ;A=( AAH ),CY=( 0 )
(7)ADD A,30H
;A=( 1FH ),CY=( 1 )
(8)ADD A,#30H ; A=( AAH ),CY=( 0 ) (9)ADDC A,30H ; A=( 20H ),CY=( 1 ) (10)SUBB A,30H ; A=( D4H ),CY=( 1 ) (11)SUBB A,#30H ; A=( 49 ),CY=( 0 )
MOV SP, #6FH MOV PSW,#50H MOV A,#77H PUSH A PUSH PSW MOV PSW,#35H MOV A,#0BFH POP A
4. 注释下列程序各语句,并说明该程序功能。
MOV R0, #36H ; 立即数#36H送R0
MOV A, @R0 ; 取36H单元中的数送累加器A
ANL A, #0FH ; 累加器A中数与立即数#0FH相与
SWAP A
; 累加器A中的高低四位交换
MOV B, A
; 累加器A中数送寄存器B
INC R0
; R0加1
MOV A, @R0 ; 取37H单元中的数送累加器A
ANL A, #0FH ; 累加器A中数与立即数#0FH相与
ORL A, B
; 累加器A与寄存器B相或
作业0:
1.试画出与.或.非三种位逻辑运算真值表,A&B、A|B、~A。
2.试分别分析“按键电平复位电路”在上电和按下按键两种状 况下,如何实现在RST引脚上产生高电平复位脉冲的?(只需要 定性分析工作原理)
单片机实验考核题目及答案
KeiL系统基本操作
系统基本操作;工程建立;参数设置;程序编辑与调试
1、延时函数设计
2、定时器T0的应用:方式1产生500ms的方波来驱动LED闪烁
----------------------------------------------------------------------------------------------------------------------
单片机实验操作考核题目与要求1
KeiL系统基本操作
系统基本操作;工程建立;参数设置;程序编辑与调试
1、延时函数设计
2、定时器T0的应用:方式0产生500ms的方波来驱动LED闪烁
----------------------------------------------------------------------------------------------------------------------
#include<reg52.h> //52单片机头文件
#include <intrins.h> //包含有左右循环移位子函数的库
#define uint unsigned int //宏定义
#define uchar unsigned char //宏定义
sbit P1_0=P1^0;
uchar tt,a;
单片机实验操作考核题目与要求16
KeiL系统基本操作
系统基本操作;工程建立;参数设置;程序编辑与调试
流水灯控制实验
1、定时器T0来控制时间快慢(500ms)
2、数组实现
----------------------------------------------------------------------------------------------------------------------
单片机实验指导书——带答案
《单片机原理及应用》实验指导书姓名:学号:专业班级:所在学院:成人教育学院2012年5月日单片机实验指导书目录实验一系统认识实验 (2)实验二程序调试 (4)实验三外部中断实验 (6)实验四串口实验 (8)实验一系统认识实验一、实验目的1.掌握SICElab-G2200实验/仿真系统的结构与使用方法;2.熟悉单片机系统开发软件WAVE6000。
二、实验设备1.G2200/2100 实验平台 1 台 2.仿真器/ 仿真板 1 台3.连线若干根 4.计算机 1 台三、实验内容P1端口接发光二极管,加1点亮。
四、连线方案:实验箱内部已连好五、实验步骤1.连接Lab51CPU板。
(已由实验师连好)2.仿真器与实验平台的连接将Lab51板的DC34芯插座与G6W仿真器上的DC34插座用扁平电缆连接起来。
(已由实验师连好)3.仿真器与计算机的连接用随机配带的串口通讯电缆,将仿真器与计算机连接起来,串口1、串口2均可。
特别注意:在仿真器与计算机连接串口电缆时,两台机器必须都断电,否则易损坏计算机和仿真器。
4.实验连线按连线方案,用随机配带的实验连线插入孔后,轻轻转动一下锁紧插头,保证良好接触。
拆线时,应先回转一下,不要硬拨,以免损坏线路板。
不管是拆线还是插线,都应在断电的情况下进行。
实验中“连线方案”的粗线即为需用户动手接连的线。
5.检查接线是否有误,确信没有接错后,接上电源,打开电源开关。
6.在计算机上打开“WAVE6000集成调试环境”,界面如下图所示:7.建立新程序(如果程序已编好,直接跳到第9步)选择菜单[文件 | 新建文件]功能。
出现一个文件名为NONAME1的源程序窗口,在此窗口中输入以下程序ORG 0MOV P1,#0 ;熄灭发光二极管LOOP: INC P1CALL DelaySJMP LOOPDelay: MOV R2,#3 ;延时程序MOV R1,#0DLP: DJNZ R0,DLPDJNZ R1,DLPDJNZ R2,DLPRETEND8.保存程序选择菜单[文件 | 保存文件]或[文件 | 另存为 ]功能。
单片机原理与应用实验考查题和标准答案
单片机原理与应用实验考查题及标准答案1.AT89S51内部四个并行I/O口各有什么异同?作用是什么?答:MCS-51单片机共有四个8位双向并行的I/O端口,每个端口都包括一个锁存器、一个输出驱动器和一个输入缓冲器。
但这四个端口的功能不全相同,P0口既可作一般I/O端口使用,又可作地址/数据总线使用;P1口是一个准双向并行口,作通用并行I/O口使用;P2口除了可作为通用I/O使用外,还可在CPU访问外部存储器时作高八位地址使用;P3口是一个多功能口除具有准双向I/O功能外,还具有第二功能。
2.开机复位后,CPU使用的是那组工作寄存器?他们的地址是设呢么?CPU如何确定和改变当前工作寄存器组?答:开机复位后,cpu使用第0组工作寄存器,地址是00H~07H,可通过对PSW状态字寄存器中的RS1和RS0两位的设置来确定和改变CPU当前使用的工作寄存器组3.微处理器,微计算机,微处理机,CPU,单片机,嵌入式处理器之间有何区别?答:微处理器、微处理机和CPU它们都是中央处理器的不同称谓,微处理器芯片本身不是计算机。
而微计算机、单片机它们都是一个完整的计算机系统,单片机是集成在一个芯片上的用于测控目的的单片微计算机。
嵌入式处理器一般意义上讲,是指嵌入系统的单片机、DSP、嵌入式微处理器。
目前多把嵌入式处理器多指嵌入式微处理器,例如ARM7、ARM9等。
嵌入式微处理器相当于通用计算机中的CPU。
与单片机相比,单片机本身(或稍加扩展)就是一个小的计算机系统,可独立运行,具有完整的功能。
而嵌入式微处理器仅仅相当于单片机中的中央处理器。
为了满足嵌入式应用的特殊要求,嵌入式微处理器虽然在功能上和标准微处理器基本是一样的,但在工作温度、抗电磁干扰、可靠性等方面一般都做了各种增强。
4.AT89S51单片机的片内都集成了哪些功能部件?答:AT89S51单片机的片内都集成了如下功能部件:(1)1个微处理器(CPU);(2)128个数据存储器(RAM)单元;(3)4K Flash程序存储器;(4)4个8位可编程并行I/O口(P0口、P1口、P2口、P3口);(5)1个全双工串行口;(6)2个16位定时器/计数器;(7)1个看门狗定时器;(8)一个中断系统,5个中断源,2个优先级;(9)25个特殊功能寄存器(SFR),(10)1个看门狗定时器。
单片机课后答案及实验
INTS2: MOV @R0 , A
INC R0
RETI
ERROR: SETB 00H
RETI
END
;启动T1 ;设数据指针
;奇校验
;保存一个字符 ;报错程序
3. 以中断方式设计单片微机的秒、分发生 器。假定P1.0每秒产生一个机器周期的正脉 冲,P1.1实现每分钟产生一个机器周期的正 脉冲。加上必要的伪指令和注释。假定晶 振频率为12MHZ。
(1)若不能正常通讯,可能原因是:右下方的串行通讯波特率 (9600)开关选择错误;或串口连接导线松动。
(2)若程序确定无误,而发光二极管显示不正常,可能是导线短 路,请更换或叠加导线(个别不亮不影响观察结果,则无需更 换);若8个发光管全都不受控制,则可能是芯片损坏,请联 系老师更换。
(3)在输入指令过程中,要注意指令的完整性,不要遗漏“#”、 “END”,区别数字“0”与字母“o”、“O”,
DEL: JBC TF0,REP AJMP DEL
REP: CLR P1.2 DJNZ R0,DEL AJMP L1 END
3. 设MCS-51单片机的晶振频率为6MHZ,以计数器 T0进行外部事件计数,每计数1000个外部事件输 入脉冲后,计数器T1开始2ms定时,定时时间到后, T0又开始计数,如此周而复始地工作。
2. 像仿真器一样,我们可以在实验装置上进行软、 硬件调试,观察控制硬件的执行结果或每条指令 的执行结果;
3. 应该养成自己动手的习惯,只有多动手才有可能 深入掌握软、硬件知识;
4. 刚开始接触肯定会有很多问题,应该学会自己分 析问题,解决问题,不要急于问老师;
5. 做实验前要认真准备,编好源程序,有效利用紧 张的实验时间。
习题讲解
单片机测试及参考答案
一.填空题1、8051是在8031的基础上,片内集成了4KB的ROM 作为程序存储器;8751是在8031的基础上,片内集成了4KB的EPROM 作为程序存储器。
2、MCS-51单片机的外部引脚按功能分为电源及时钟引脚、控制引脚、输入/输出引脚(I/O)三部分。
3、MCS-51单片机系统中,当PSEN信号有效时,表示CPU要程序存储器读取信息。
4、查表指令有MOVC A ,@A+PC和MOVC A,@A+DPTR两条,它们都属于基址寄存器加变址间接寻址方式。
5、一个机器周期包括12 个振荡周期,具体分为 6 个状态周期。
6、设(A)=85H,(RO)=20H,(20H)=AFH,执行指令:ADD A, @RO 后,(A)= 34H 、CY= 1 、AC= 1 、OV= 1 。
7、若要设定T1为方式2下的计数模式,T0设定为方式1下的定时模式,则TMOD的初始化值为61H 。
8 已知SP=30H ,PC=2345H,标号LABEL所在的地址为3456H,问执行长调用指令LCALL LABEL 后,(SP)= 32H ,(PC)=3456H9.某MCS-51 系统用于定时测试压力、温度、定时用T0来实现,压力超限和温度超限的报警信号分别由INT0和INT1输入,中断优先排列顺序依次为压力超限――――温度超限―――定时检测,则专用寄存器IE= 87H ,IP= 05H 。
二.选择题1.在中断服务程序中,至少应有一条( D )A .传送指令 B. 转移指令 C. 加法指令 D. 中断返回指令2.单片机复位后,SP、PC、PSW的内容为(C )A.SP = 07H PC = 0000H PSW = FFHB.SP = 00H PC = 00H PSW= 00HC.SP = 07H PC = 0000H PSW= 00HD.SP = 00H PC = 00H PSW = FFH3.8031定时/计数器共有四种操作模式,并由TMOD寄存器中M1 M0的状态决定,当M1 M0的状态为01 时,定时/计数器被设定为(B )A.13位定时/计数器B.16位定时/计数器C.自动重装8位定时/计数器D.T0为2个独立的8位定时/计数器,T1停止工作4.LCALL存于2000H开始的地址单元中,执行完相应的子程序中的返回指令后,PC=( D )A. 2000HB.2001HC. 2002HD. 2003H5.MCS-51单片机的堆栈区是在( A )。
单片机实验例题及答案
单片机实验考试题:1、用Proteus打开“简易电子琴.DSN”,按图编写程序,设计一个简易电子琴。
按数字键1~7,分别发“斗”、“来”、“米”……音(频率见实验指导书),按键抬起则发音停止,不考虑高八度和低八度音,按下1~7以外的其它键不发音。
2、用Proteus打开文件“计数器.DSN”,当按下键盘上的0~F十六个键时,能将键值以十六进制形式在四个数码管上滚动显示。
在LED上显示字符A~F的形式分别为:。
3、用Proteus打开文件“频率计.DSN”,图中,在单片机的外部中断0脚接有一个脉冲信号源,编写程序实现一个频率计的功能,能够测定该脉冲信号源的频率。
程序调试时可以修改信号源的频率,比较测量值与设定值的差距,仿真时一般误差在10%内就算正常。
修改信号源频率的方法是,右击信号源图标后再左击,打开信号源的属性对话框,修改其中的频率(frequncy),不要改变其它属性值,频率可以在1Hz到10000Hz之间设定。
(提示:可以设置一个外部中断0的中断服务程序,每次中断时给某个变量加一;再设置一个定时器中断服务程序,用于计时。
每秒钟读一次脉冲数,并将其清零,然后将脉冲数显示在数码管上,每秒钟内的脉冲数就是频率。
)4、用Proteus打开文件“电子秒表.DSN”,开机时显示00.00,单位是秒,精确到10毫秒,按“SW1”键启动或暂停,按“SW2”键时间清零。
提示:关于点亮小数点,每5mS刷新LED时,判断当刷新到第2个LED时将笔划代码中与小数点对应的位(bit7)清零。
5、用Proteus打开文件“播放音乐.DSN”,按图设计一个开机就能播放<康定情歌>的程序,并将其简谱在数码管上同步滚动显示。
此程序也可以下载到实验板上运行。
6、用Proteus打开文件“流水灯.DSN”,可以看到在单片机89C52的P2口接有8个发光二极管。
编写流水灯的程序,使8个发光二极管每隔约0.5秒依次点亮(每次亮一个),要求开始时从左往右点亮,每按一次按钮SW1后,改变流水的方向。
单片机实验答案
实验一熟悉键盘操作及数传指令编程设计1.内部RAM数据传送1)寄存器寻址与立即寻址,需要查看的数据有A、PSW和不同寄存器区的Rn等单元的内容步数A变化PSW变化RN变化PC原值变值原值变值原值变值原值变值ORG 0000HMOV PSW,#00HMOV R0,#30H 00(RO) 30 0 3MOV A,R0 00 30 3 5MOV R6,A 00(R6) 30 5 6MOV PSW,#14H 00 14 30(R6、R0) 00 6 7 MOV R0,#30H 00(R0) 30 7 000A MOV A,R0 000A 000C MOV R6,A 00(R6) 30 000C 000D MOV PSW,#10H 14 10 000D 000E MOV R0,#30H 000E 11 MOV A,R0 11 13 MOV R6,A 13 14 MOV PSW,#08H 10 08 30(R0、R6) 00 14 15 MOV R0,#30H 00(RO) 30 15 18 MOV A,R0 18 001A MOV R6,A 00(R6) 30 001A 001B SJMP $ 001B 001C END `2) 直接寻址,需查看30H、31H、32H、40H、ACC、PSW等单元的内容。
步数30H 31H 32H 40H ACC PSW PC原值变值原值变值原值变值原值变值原值变值原值变值原值变值ORG 0100H 0 0 0 00X00X0MOV30H,#45H 0 0 0 00X00X00 ·MOV31H,#46H 0450 0 00X00X00000103MOV 02H,31H 45460 00X00X00 `0106MOV0E0H,30H 45460 00X00X001060109MOV 32H,ACC 45460 00X00X450X00X010109010CMOV ACC,PSW 4546450X450X01010C010FMOV 40H,ACC 454645 00X450X450X01010F0112SJMP $ 4546450X450X450X0101120115END3)寄存器间接寻址,需查看@R0、RO等的内容@RO RO PC原值变值原值变值原值变值 ORG 0200H 0 0X00MOV 30H,#66H 0 66 0X00MOV R0,#30H 66 0X00 0200 0203 MOV @R0,#30H 66 30 0X00 0X30 0203 0205SJMP $ 30 0X300205 0207END 30 0X302.外部数据传送需要查看的数据有外部数据存储器单元2000H,外部程序存储器单元2001H。
单片机课后习题参考答案(全).
第1章单片机概述参考答案1.答:微控制器,嵌入式控制器2.答:CPU、存储器、I/O口、总线3.答:C4.答:B5.答:微处理器、微处理机和CPU它们都是中央处理器的不同称谓,微处理器芯片本身不是计算机。
而微计算机、单片机它们都是一个完整的计算机系统,单片机是集成在一个芯片上的用于测控目的的单片微计算机。
嵌入式处理器一般意义上讲,是指嵌入系统的单片机、DSP、嵌入式微处理器。
目前多把嵌入式处理器多指嵌入式微处理器,例如ARM7、ARM9等。
嵌入式微处理器相当于通用计算机中的CPU。
与单片机相比,单片机本身(或稍加扩展)就是一个小的计算机系统,可独立运行,具有完整的功能。
而嵌入式微处理器仅仅相当于单片机中的中央处理器。
为了满足嵌入式应用的特殊要求,嵌入式微处理器虽然在功能上和标准微处理器基本是一样的,但在工作温度、抗电磁干扰、可靠性等方面一般都做了各种增强。
6.答:MCS-51系列单片机的基本型芯片分别:8031、8051和8071。
它们的差别是在片内程序存储器上。
8031无片内程序存储器、8051片内有4K字节的程序存储器ROM,而8751片内有集成有4K字节的程序存储器EPROM。
7.答:因为MCS-51系列单片机中的“MCS”是Intel公司生产的单片机的系列符号,而51系列单片机是指世界各个厂家生产的所有与8051的内核结构、指令系统兼容的单片机。
8.答:相当于MCS-51系列中的87C51,只不过是AT89S51芯片内的4K字节Flash存储器取代了87C51片内的4K字节的EPROM。
9.单片机体积小、价格低且易于掌握和普及,很容易嵌入到各种通用目的的系统中,实现各种方式的检测和控制。
单片机在嵌入式处理器市场占有率最高,最大特点是价格低,体积小。
DSP是一种非常擅长于高速实现各种数字信号处理运算(如数字滤波、FFT、频谱分析等)的嵌入式处理器。
由于对其硬件结构和指令进行了特殊设计,使其能够高速完成各种复杂的数字信号处理算法。
单片机原理及其接口技术实验问答答案
实验一(无符号数加法实验)1 如果要实现2345+6789,程序应如何修改?2 如果去掉程序中的两句“DA A”指令,有何实验现象?原因是什么?3 如果将程序中的“ADDC”改为ADD”, 有何实验现象?为什么?4 如果将程序中的“ADD”改为“ADDC”,程序是否正确?为什么?解:1将程序中66改为23, 78改为45, 67改为67, 43改为892结果是十进制变为十六进制,原因是“DA A”指令是十进制调整指令。
3不能改为ADD,因为ADDC是带有进位CY的加法指令。
4 ADD一般情况下不能改为ADDC,因为缺少CY的进位,但是在本题中可以,因为不造成进位。
实验二闪烁灯控制1若将程序中的“SETB P1.1”改为“CLR P1.1”有何实验现象?答:将程序中的“SETB P1.1”改为“CLR P1.1”,指示灯不闪烁,因为SETB是置位指令,P1.1输出置1,CLR使P1.1输出置0,置1端口开启,置0时端口关闭,因此不闪烁。
2若将程序中的“JNB P1.1,LOOP”改为“JB P1.1,LOOP”有何实验现象?答:将程序中的“JNB P1.1,LOOP”改为“JB P1.1,LOOP”,会使闪光灯开关置0闪烁,因为闪光灯闪烁频率由RT控制。
3若要加快或减慢灯的闪烁频率,有何方法?为什么?答:若要加快频率可将MOV R7,#10H改为MOV R7,#5H,减慢频率可将MOV R7,#10H 改为MOV R7,#50H。
4若将P1.0改为与灯L7连接,有何实验现象?为什么?答:P1.1与L7连接,则L7灯就变成了闪烁灯。
因为当P1.0数据为1时,引脚上出现高电平,导致L7发光,反之,数据为0,P1.0引脚上出现低电平不发光。
5若将灯的开关控制由当前程序的P1.1控制改为由P1.5控制,应如何修改?答:若将P1.1控制改为由P1.5控制,可以酱SETB P1.1改为SETB P1.5将JNB P1.1改为JNB P1.5,$6若将当前的P1.0与灯连接改为P1.3连接,应该如何修改程序?答:若将当前P1.0与灯连接改为PL3灯连接,应将CPL P1.0G改为CPL P1.3。
单片机教学实验内容答案
1.数据传送实验要求:将片从30H开场连续7个单元的容送入从40H开场的地址单元中。
〔先在30H~36H中送初值〕*include<reg52.h>void main(){unsigned char data i,*d1,*d2;d1=0*30;d2=0*40;{*d1=0*10;*(d1+1)=0*11;*(d1+2)=0*22;*(d1+3)=0*45;*(d1+4)=0*30;*(d1+5)=0*32;*(d1+6)=0*21;}for(i=0;i<7;i++){*(d2+i)=*(d1+i);}}2.排序实验要求:将片从30H单元开场的10个无符号数,按由小到大的顺序排列。
〔先在30H~39H中送排序初值〕*include<reg52.h>void main(){unsigned char data *p,i,j,d;p=0*30;*(p+0)=0*21;*(p+1)=0*11;*(p+2)=0*31;*(p+3)=0*02;*(p+4)=0*22;*(p+5)=0*42;*(p+6)=0*32;*(p+7)=0*41;*(p+8)=0*05;*(p+9)=0*22;for(i=0;i<9;i++)for(j=0;j<9-i;j++)if(*(p+j)>*(p+j+1)){d=*(p+j);*(p+j)=*(p+j+1); *(p+j+1)=d ;}}3.并行接口实验要求:使用P1口控制LED1~LED8进展把戏显示。
显示顺序规律为:〔1〕8个LED依次左移单个点亮。
〔2〕8个LED依次左移逐个点亮。
〔3〕8个LED依次左移逐个熄灭,然后再从〔1〕进展循环,中间延迟时间1s。
*include<reg51.h>*define uchar unsigned char //在程序中用uchar替代unsigned char//目的在于减少代码输入量*define uint unsigned intvoid delay(uint); //定义延时函数void LeftMovLED(void); //定义向左移运点亮LED的函数//*******主函数********void main(void){while(1) //死循环{LeftMovLED(); //调用LeftMovLED实现左移点亮LED功能}}void LeftMovLED(void){uchar i,temp; //定义两个变量temp=0*01; //temp赋初值for(i=0;i<8;i++) //下面的代码循环8次{P1=temp; //将temp的值赋给PORTD点亮LED temp=temp<<1&0*fe; //将temp左移一位后将最后一位清零。
单片机实验答案
30.置1键6个数码管轮流亮1,置2键六个数码管轮流亮2,依次类推ORG 0000HDLED:MOV R0,#01MOV A,#01MOV B,ASTA2:SETB CASP:MOV P0,#0FFHMOV A,P0ASP1:RRC AJNC NEXTINC R0CJNE R0,#9,ASP1SJMP DLEDNEXT:MOV A,BMOV P1,AMOV DPTR,#TAB0MOV A,R0MOVC A,@A+DPTRMOV P2,AMOV R3,#0LOP:MOV R4,#0LOP1:NOPNOPDJNZ R4,LOP1DJNZ R3,LOPMOV A,BRL AMOV B,ACJNE A,#40H,NEXTSJMP DLEDTAB0:DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH,77H,7CH,39H,5EH,79H,71H END 31.每两个管一组交替亮8ORG 0000HMOV P2,#78HQWE:MOV A,#03HMOV P1,AASD:MOV R3,#0LOOP:MOV R4,#0LOOP1:NOPNOPDJNZ R4,LOOP1DJNZ R3,LOOPRL ARL ACJNE A,#0C0H,ZXCSJMP QWEZXC:MOV P1,ASJMP ASD32.对第四个数码管按照一段亮--二段亮---...全亮--灭一段--灭两段--...--全灭,如此反复。
ORG 0000HMOV DPTR,#TABMOV P1,#08HMOV A,#01HFTP:MOV R0,#01HASD:MOV A,R0MOVC A,@A+DPTRMOV P2,ALCALL LOPINC R0CJNE R0,#08H,ASDMOV R0,#06HQWE:MOV A,R0MOVC A,@A+DPTRMOV P2,ALCALL LOPDEC R0CJNE R0,#0FFH,QWESJMP FTPLOP:MOV R3,#0LOOP:MOV R4,#0DJNZ R4,$DJNZ R3,LOOPRETTAB:DB 00H,01H,03H,07H,0FH,1FH,3FH,7FH33.测试K0,K0向上拨时,六个数码管同时亮8,K0向下时,六个数码管依次灭ORG 0000HMOV P2,#7FHMOV P1,#00HMOV R0,#00HASD:MOV P0,#0FFHMOV A,P0JNB ACC.0,LEDSJMP MIELED:MOV P1,#3FHMOV R0,#00HSJMP ASDMIE:CJNE R0,#00H,ASDMOV P1,#1FHLCALL LOOPMOV P1,#0FHLCALL LOOPMOV P1,#07HLCALL LOOPMOV P1,#03HLCALL LOOPMOV P1,#01HLCALL LOOPMOV P1,#00HMOV R1,#01HSJMP ASDLOOP:MOV R3,#0LOP:MOV R4,#0DJNZ R4,$DJNZ R3,LOPRET 34.将K1-K6的置位情况显示在对应数码管上,开关ON的显示0,开关OFF的显示1.ORG 0000HMOV P2,#06HMOV DPTR,#TABAMD:MOV R1,#01HMOV P0,#0FFHMOV A,P0MOV R0,AASD:ANL A,R1MOV P1,R1MOVC A,@A+DPTRMOV P2,AMOV A,R1RL AMOV R1,AMOV A,R0CJNE R1,#40H,ASDSJMP AMDTAB:DB 3FH,06HEND621.第六个数码管亮H,中断一次,H左移一位。
单片机课后答案及实验
3; P99;第18题
MOV MOV MOV MOV ANL ORL SWAP CPL XRL ORL
30H ; 0A4H A ; 0D6H R0 ; 30H R2 ; 47H A ; R2 A ; @R0 A A A ; 0FFH 30H ; A
;30H=A4H ;A=0D6H ;R0=30H ;R2=47H
DEL: JBC TF0;REP AJMP DEL
REP: CLR P1.2 DJNZ R0;DEL AJMP L1 END
3. 设MCS-51单片机的晶振频率为6MHZ;以计数器T0 进行外部事件计数;每计数1000个外部事件输入脉 冲后;计数器T1开始2ms定时;定时时间到后;T0又开 始计数;如此周而复始地工作&
解:要求定时时间为1s;若采用定时模式1;根 据公式:定时时间T=65536-初始值xTcy; 可知最大定时时间为65.536ms&若定时 10ms;则必须有100个10ms;即100次溢出中 断为1s;10ms时间常数为D8F0H&
ORG 0000H AJMP MAIN ORG 000BH AJMP INT_T0 ORG 0030H MAIN: MOV TMOD ; 01H MOV TL0 ; 0F0H MOV TH0 ; 0D8H SETB TR0 MOV R6 ; 00H
MOV DPTR;0300H
LOOP:CLR DPS
MOVX A;@DPTR
ANL A;0FH SWAP A XCH A;B
INC DPTR MOVX A;@DPTR ANL A;0FH ORL A;B INC DPTR SETB DPS MOVX @DPTR;A INC DPTR DJNZ R2;LOOP CLR DPS SJMP $
(完整版)单片机课后习题答案最终修改版
第二章1、MCS-51系列单片机内部有哪些主要的逻辑部件?答:MCS-51系列单片机内部主要逻辑部件有:算术/逻辑部件ALU、累加器A(有时也叫ACC)、只读存储器ROM、随即存储器RAM、指令寄存器IR、程序计数器PC、定时器/计数器、I/O接口电路、程序状态寄存器PSW、寄存器组。
3、MCS-51内部RAM区功能如何分配?如何选用4组工作寄存器中的一组作为当前的工作寄存器组?位寻址区域的字节地址范围是多少?答:MCS-51单片机内部RAM共128B,地址空间为00H-7FH,按照功能分为用户区、位寻址区和寄存器工作区。
00H~1FH是32B单元的4个工作寄存器组,单片机执行程序时,具体使用哪一组是通过对PSW的RS1、RS0两位的设置来实现的。
可以位寻址的地址范围是20H~2FH的16B共128位的内部RAM区,按字节寻址的地址范围是30H~7FH共80B的内部RAM区。
5、8031设有4个8为并行端口,若实际应用8为I/O口,应使用P0~P3中的哪个端口传送?16位地址如何形成?答:(1)P1口是专门供用户使用的I/O口,是准双向接口,故可以使用P1口传送;(2)P0既可以做地址/数据总线使用,又可作通用I/O使用。
一方面用来输出外部存储器或I/O的低八位地址,另一方面作为8位数据输入/输出口,故由P0口输出16位地址的低八位。
(3)P2口作为通用I/O口使用,与P1口相同。
当外接存储器或I/O时,P2口给出地址的高八位,故P2 口输出16位地址的高八位。
8、MCS-51的时钟周期、机器周期、指令周期是如何分配的?当震荡频率为10MHz时,一个机器周期为多少微秒?答:CPU执行一条指令的时间称为指令周期,它是以机器周期为单位的。
MCS-51典型的指令周期为一个机器周期,每个机器周期由6个状态周期组成,每个状态周期由2个时钟周期(振荡周期)组成。
一个机器周期=6*一个状态周期=12*一个时钟周期=12/振荡周期当振荡周期为10MHz时,一个机器周期为12/10MHz=1.2us9、在MCS-51扩展系统中,片外程序存储器和片外数据存储器地址一样时,为什么不发生冲突?答:(1)、程序存储器和数据存储器物理上是独立的,寻址片外程序存储器和片外数据存储器的寻址方式、寻址空间和控制信号不同。
单片机 实验程序 答案
单片机实验5 1、将累加器A中的8位二进制转换成3位BCD码格式的十进制。 其中,百位数的BCD码放在21H单元中,十位和个位数放在22H 单元中。 参考程序: ORG 0000H LJMP MAIN ORG 1000H MAIN: MOV A, #0FFH MOV B, #64H DIV AB MOV 21H, A MOV A, #0AH XCH A, B DIV AB SWAP A ADD A, B MOV 22H, A L1: SJMP L1 END 实验步骤: (1)输入程序检查无错误,经汇编、连接后装入系统。 (2)在1012处设段点。 (3)GB=0000↙,运行程序。 (4)用R0721↙查看21H单元,应为02,用R0722查看22H 单元,应为55。 (5)改变A中的数,考察程序的正确。
单片机实验4 2、将内存单元20H中存放的两个BCD码拆开,求它们的乘积, 并把乘积以压缩的BCD码形式送回内存单元21H中。 参考程序: ORG 0000H LJMP MAIN ORG 1000H MAIN: MOV A,20H ;比如20H是一个十进制数67,注意是67不是67H ANL A,#0FH ;得到个位7 MOV B,A ;个位送B XCH A,20H ;再次取数67 SWAP A ;高低四位交换得到数76 ANL A,#0FH ;得到十位数6 MUL AB ;6*7=42(2AH) MOV B,#10 ;送被除数10 DIV AB ;得到A=4,B=2 SWAP A ;高低四位数交换,得到数A=40 ANL A,#0F0H ;将低4位清零,这句可以不要 ORL A,B ;得到BCD码42, MOV 21H,A ;将结果送给21H L1: SJMP L1 END
单片机实验1 2、将两个定时/计数器设定为方式1, 分别从P1.1和P1.2发出一个方波,用示波器测量其周期。 ORG 0000H LJMP MAIN ORG 000BH CPL P1.1 MOV TH0, #0F8H MOV TL0, #06H RETI ORG 001BH CPL P1.2 MOV TH1, #0F8H MOV TL1, #06H RETI ORG 1000H MAIN: MOV TH0, #0F8H MOV TL0, #06H MOV TH1, #0F8H MOV TL1, #06H MOV TMOD, #11H MOV TCON, #50H MOV IE, #8AH L1: SJMP L1 END
单片机课后习题答案(《单片机应用技术》C语言版)
单片机课后习题答案(《单片机应用技术》C语言版)单片机课后习题答案《单片机应用技术》C语言版1. 实验一:单片机概述与开发环境搭建题目一:简述单片机的概念及其优势。
答案:单片机是一种集成电路,具有微型化、低功耗、低成本等优势。
它可以独立完成各种任务,广泛应用于嵌入式系统中。
题目二:描述单片机开发环境的搭建步骤。
答案:单片机开发环境的搭建步骤如下:1) 安装C语言编译器;2) 安装单片机开发工具;3) 配置单片机开发环境;4) 创建工程并编写程序;5) 编译、下载并运行程序。
2. 实验二:基本IO口操作题目一:使用C语言编写程序,将P0口的四个引脚连接到四个LED灯,实现依次点亮、逐个点亮、全亮和全灭功能。
答案:代码如下:```c#include <reg52.h>#define uchar unsigned charvoid delay(uchar t) {while (t--);}void main() {P0 = 0xfe; // 1111 1110,点亮第一个LED delay(60000);P0 = 0xfd; // 1111 1101,点亮第二个LED delay(60000);P0 = 0xfb; // 1111 1011,点亮第三个LED delay(60000);P0 = 0xf7; // 1111 0111,点亮第四个LED delay(60000);P0 = 0xff; // 1111 1111,全亮delay(60000);P0 = 0x00; // 0000 0000,全灭while (1);}```题目二:编写程序,通过P1口的第0~3引脚接收外部开关信号,并通过P2口的0~3引脚控制LED灯的亮灭状态。
答案:代码如下:```c#include <reg52.h>#define uchar unsigned charvoid delay(uchar t) {while (t--);}void main() {uchar temp;while (1) {temp = P1 & 0x0f; // 获取P1口低4位的值P2 = ~temp; // 反转temp后赋值给P2口delay(60000);}}```3. 实验三:中断与定时器题目一:利用定时器0中断,编写程序实现一个1s的计时器,并在数码管上显示计时器的值。
单片机试验答案
由于单片机具有高可靠性、超小型、低价格、容易产品化等特点,在仪器仪表智能化、实时工业控制、实时数据采集、智能终端、通信设备、导航系统、家用电器等控制应用领域,具有十分广泛的用途。
目前在国内单片机应用中,MCS-51 系列单片机仍然是一种主流单片机。
为配合《单片机应用技术》课程的教学,使学生尽快了解、掌握89C51 单片机的使用,特编写了这本上机指导书(基础篇)。
《单片机》是一门实践性很强的课程,提高教学质量的一个重要环节是上机实习和训练,无论是学习汇编语言程序设计,还是学习接口电路和外设与计算机的连接,或者软硬兼施地研制单片机应用系统,不通过加强动手是不能获得预期效果的。
本实验指导书提供了9 个实验的指导性材料,实验还有一些思考题,可以根据课时的安排和教学要求进行取舍。
为了达到某些实验的目的,书中提供的参考程序与实际应用中的程序会有些差别,所以不一定是最优的。
由于时间紧迫,加上编者学识有限,如有不妥之处,欢迎读者批评指正。
编者实验须知1.实验前必须阅读教科书的有关部分和本实验指导书,了解实验目的、内容、步骤,做好实验前的准备工作,编写好实验中要求自编或修改的程序;完成实验前要求完成的准备工作后方可以上机实验,否则不得上机操作。
2.各种电源的电压和极性不能接错,严禁带电接线和接插元器件。
通电前须经过指导教师检查认可后方能通电。
3.不准随意拨弄各种与实验无关的旋钮和开关,凡与本次实验无关的任何设备都禁止动用和摸弄,注意安全。
4.严禁用手触摸实验系统印制电路板和元器件的引脚,防止静电击穿H-R丄芯片。
5.实验中若损坏仪器或元器件,应及时向指导教师报告,听候处理。
6.在实验室内保持安静和卫生,不得随意走动和喧哗,集中精力完成实验。
7.实验完成后,关掉电源,及时整理实验台桌面,保持环境整洁。
8.按规定认真完成实验报告,对实验中出现的现象进行分析,在规定的时间内交上实验报告。
9.凡实验或实验报告未能按规定完成的学生,不能参加本课程的考试或考查。
8051单片机实验报告(有答案).doc
第一章汽车总体设计1-1.在进行汽车总体布置是,使用五条基准线,是怎样确定的?答:在初步确定汽车的载客量(载质量)、驱动形式、车身形式、发动机形式等以后,要深入做更具体的工作,包括绘制总布置草图,并校核初步选定的各部件结构和尺寸是否符合整车尺寸和参数的要求,以寻求合理的总布置方案。
绘图前要确定画图的基准线(面)。
确定整车的零线(三维坐标面的交线)、正负方向及标注方式,均应在汽车满载状态下进行,并且绘图时应将汽车前部绘在左侧。
确定整车的零线、正负方向及标注方式,均应在汽车满载状态下进行,并且绘图时应将汽车前部绘在左侧。
1.车架上平面线;2.前轮中心线;3.汽车中心线;4.地面线;5.前轮垂直线。
1.车架上平面线纵梁上翼面较长的一段平面或承载式车身中部地板或边梁的上缘面在侧(前)视图上的投影线,称为车架上平面线。
它作为标注垂直尺寸的基准载(面),即z 坐标线,向上为“+”、向下为“-”,该线标记为0/Z。
2.前轮中心线通过左、右前轮中心,并垂直于车架平面线的平面,在侧视图和俯视图上的投影线,称为前轮中心线。
它作为标注纵向尺寸的基准线(面),即x 坐标线,向前为“-”、向后为“+”,该线标记为0/x。
3.汽车中心线汽车纵向垂直对称平面在俯视图和前视图上的投影线,称为汽车中心线。
用它作为标注横向尺寸的基准线(面),即y 坐标线,向左为“+”、向右为“—”,该线标记为0/y。
4.地面线地平面在侧视图和前视图上的投影线,称为地面线。
此线是标注汽车高度、接近角、离去角、离地间隙和货台高度等尺寸的基准线。
5.前轮垂直线通过左、右前轮中心,并垂直于地面的平面,在侧视图和俯视图上的投影线,称为前轮垂直线。
此线用来作为标注汽车轴距和前悬的基准线。
当车架与地面平行时,前轮垂直线与前轮中心线重合(如乘用车)。
1-2:发动机前置前驱布置形式,如今在乘用车上广泛应用的原因?发动机后置后驱布置形式在客车广泛应用原因?前置前驱优点:前桥轴荷大,有明显不足转向性能,越过障碍能力高,乘坐舒适性高,提高机动性,散热好(发动机的得到足够冷却),足够大行李箱空间(行李箱布置在汽车后),供暖效率高,操纵机构简单(发动机,离合器,变速器与驾驶员位置近),整车m小(省略传动轴装置),低制造难度。
单片机测试题与答案
单片机测试题与答案一、单选题(共107题,每题1分,共107分)1.FLASH的中文含义是 ( ) 。
A、闪速存储器B、随机存储器C、只读存储器D、电可擦除可编程存储器正确答案:A2.SP的中文含义是( )。
A、堆栈指针B、数据指针C、系统指针D、符号指针正确答案:A3.下列芯片中属于单片机的芯片是 ( ) 。
A、8086B、80386C、8155D、AT89C1051正确答案:D4.累加器A的内容是84H,执行RR A 指令后累加器的内容变为( ) 。
A、42B、80C、08D、不确定正确答案:A5.下列芯片中属于单片机的芯片是 ( ) 。
A、8086B、80286C、80486D、AT89C2051正确答案:D6.对于MCS-51系列单片机来说,立即寻址可寻址的空间是( )。
A、内部RAMB、程序存储器C、特殊功能寄存器D、外部RAM正确答案:B7.累加器A的内容是35H,执行SWAP A 指令后累加器的内容变为( ) 。
A、30B、05C、50D、53H正确答案:D8.下列指令中,对标志位CY有影响的指令是 ( ) 。
A、ADDB、,C、(B)INCD、(C)MOVE、,F、D.ANLG、,正确答案:A9.对于MCS-51单片机来说,一个机器周期是由 ( )个状态周期构成。
A、1B、2C、4D、6正确答案:D10.8051单片机的P3口可以驱动 ( )个LSTTL负载。
A、32B、8C、4D、16正确答案:C11.上电复位后,8051单片机P3口的值是 ( ) 。
A、80B、0FFC、00D、不确定正确答案:B12.8051单片机的工作频率为6MHz,其内部定时器的最大定时时间是 ( ) 。
A、131072μSB、65536μSC、256μSD、8192μS正确答案:A13.累加器A的内容是0ADH,执行RLC A 指令后累加器的内容变为( ) 。
A、5BB、5AC、56D、不确定正确答案:D14.8051单片机的堆栈位于( )中。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
前言由于单片机具有高可靠性、超小型、低价格、容易产品化等特点,在仪器仪表智能化、实时工业控制、实时数据采集、智能终端、通信设备、导航系统、家用电器等控制应用领域,具有十分广泛的用途。
目前在国内单片机应用中,MCS-51系列单片机仍然是一种主流单片机。
为配合《单片机应用技术》课程的教学,使学生尽快了解、掌握89C51单片机的使用,特编写了这本上机指导书(基础篇)。
《单片机》是一门实践性很强的课程,提高教学质量的一个重要环节是上机实习和训练,无论是学习汇编语言程序设计,还是学习接口电路和外设与计算机的连接,或者软硬兼施地研制单片机应用系统,不通过加强动手是不能获得预期效果的。
本实验指导书提供了9个实验的指导性材料,实验还有一些思考题,可以根据课时的安排和教学要求进行取舍。
为了达到某些实验的目的,书中提供的参考程序与实际应用中的程序会有些差别,所以不一定是最优的。
由于时间紧迫,加上编者学识有限,如有不妥之处,欢迎读者批评指正。
编者实验须知1. 实验前必须阅读教科书的有关部分和本实验指导书,了解实验目的、内容、步骤,做好实验前的准备工作,编写好实验中要求自编或修改的程序;完成实验前要求完成的准备工作后方可以上机实验,否则不得上机操作。
2. 各种电源的电压和极性不能接错,严禁带电接线和接插元器件。
通电前须经过指导教师检查认可后方能通电。
3. 不准随意拨弄各种与实验无关的旋钮和开关,凡与本次实验无关的任何设备都禁止动用和摸弄,注意安全。
4. 严禁用手触摸实验系统印制电路板和元器件的引脚,防止静电击穿芯片。
5. 实验中若损坏仪器或元器件,应及时向指导教师报告,听候处理。
6. 在实验室内保持安静和卫生,不得随意走动和喧哗,集中精力完成实验。
7. 实验完成后,关掉电源,及时整理实验台桌面,保持环境整洁。
8. 按规定认真完成实验报告,对实验中出现的现象进行分析,在规定的时间内交上实验报告。
9. 凡实验或实验报告未能按规定完成的学生,不能参加本课程的考试或考查。
第一章实验系统介绍本实验系统采用EL-MUT-III型单片机教学实验系统。
1. 系统概述1)微处理器:89S51,P1口、P3口对用户开放,供用户使用。
2)时钟频率:6.0MHz3)存储器:程序存储器与数据存储器统一编址,最多可达64KB,板载ROM(监控程序27C256)12KB;RAM1(程序存储器6264)8KB供用户下载实验程序,可扩展达32KB;RAM2(数据存储器6264)8KB供用户程序使用,可扩展达32KB。
0000H----2FFFH为监控程序存储器区,用户不可用。
4000H----5FFFH为用户实验程序存储区,供用户下载实验程序。
数据存储器的范围为:6000H----7FFFH,供用户实验程序使用。
用户在编写实验程序时要注意,程序的起始地址应为4000H,所用的中断入口地址均应在原地址的基础上,加上4000H。
用户中断入口地址见表1-1。
2.资源分配本系统采用可编程逻辑器件(CPLD)EPM7128做为地址的译码。
地址的编译码分为两部分。
一部分为系统CPLD,提供了系统器件(如监控程序存储器、用户程序存储器、数据存储器、系统显示控制器、系统串行通讯控制器等)的地址译码功能,此外还通过插孔CS0、CS1、CS2、CS3、CS4、CS5提供固定的译码地址给用户使用。
译码地址见表1-2。
另一部分为用户CPLD,它完全对用户开放,用户可通过芯片的JTAG接口与PC机相连,对芯片进行编程,得到译码地址,由插孔LCS0、LCS1、LCS2、LCS3、LCS4、LCS5、LCS6、LCS7输出,供使用。
表1—2:CPLD地址分配表地址范围输出孔/映射器件性质(系统/用户)0000H---2FFFH 监控程序存储器系统*3000H---3FFFH 数据存储器系统*4000H---7FFFH 用户程序存储器系统*8000H---CFDFH LCS0---LCS7 用户CFE0H PC机串行通讯芯片8250 系统*CFE8H 显示、键盘芯片8279 系统CFA0H---CFA7H CS0 系统CFA8H---CFAFH CS1 系统CFB0H---CFB7H CS2 系统CFB8H---CFBFH CS3 系统CFC0H---CFC7H CS4 系统CFC8H---CFCFH CS5 系统CFD0H---FFFFH LCS0----LCS7 用户注:系统地址中带“*”的表示用户不可用,也不可改,其他系统地址用户可用,但不可改。
3.系统使用方法1)用通信电缆将EL-MUT-III型单片机教学实验系统侧面的RS232接口与PC机的COM口相连接。
2)启动EL-MUT-III型单片机教学实验系统的电源开关,EL-MUT-III型单片机教学实验系统面板上的LED显示“199502”,几秒后显示P-。
3)双击桌面MCS51快捷图标如图1-1,启动51实验系统,启动后的界面如图1-2。
图1-1 图1-24)如需改变串口和波特率,在相应列表框中修改。
点击“确定”按钮后,立即实验系统面板上的“PRESET”键,面板上的LED显示“C-”,同时PC机屏幕显示“51 EL型(80C51)教学实验环境”界面,如图1-3。
图1-3 51 EL型(80C51)教学实验环境界面5)通过“文件”菜单新建或打开汇编语言文件,也可通过工具按钮新建汇编文件。
新建汇编文件的扩展名为.ASM。
6)用“编译”菜单下的汇编命令或工具按钮对汇编文件进行汇编。
如有错误,应对文件重新编辑,直至汇编无错误为止。
7)用“调试”菜单下的“调试”命令或工具按钮进入“调试”界面,如图1-4。
图1-4 “调试”界面8)用“调试”菜单下各调试命令,如图1-5对汇编文件进行调试,或用工具按钮对汇编文件进行调试。
工具按钮的功能如图1-6。
图1-5图1-6第二章上机指导实验一P1口实验(一)一、实验目的:1.学习P1口作为输出口的使用方法。
2.延时子程序的编写和使用。
二、实验设备:EL-MUT-III型单片机实验箱、8051CPU模块。
三、实验原理:实验原理如图2-1-1。
图2-1-1 P1口输出实验电路1.P1口的使用方法P1口为准双向口,每一位都能独立地定义为输入位或输出位。
作为输入位时,必须向锁存器相应位写入“1”。
89S51在复位时所有口锁存器均置为“1”,如果曾对口锁存器写过“0”,此时要使它作为一个输入口,则应再次写入一个“1”。
2.延时程序的实现常用两种方法实现延时程序,一是用定时器中断来实现,二是用指令循环来实现。
在系统时间允许的情况下可以采用后一种方法。
本实验系统晶振为6.0MHZ,则一个机器周期为12÷6 us=2 us。
延时0.1s的程序如下:MOV R7,#X (1)DEL1:MOV R6,#200 (2)DEL2:DJNZ R6,DEL2 (3)DJNZ R7,DEL1 (4)程序中X为延时值。
指令MOV、DJNZ需两个机器周期,所以每执行一条指令需要4us。
延时程序中X值应满足下式:4 + X( 4 + 200×4 + 4 )=0.1×106指令(1)时间指令(2)时间指令(3)时间指令(4)时间故X=123.75D=7CH 。
将X=123.75D=7CH代入上式,得到实际延时时间约为0.1002S。
3.程序流程图:程序流程图见图2-1-2和图2-1-3。
图2-1-2 点亮发光二极管程序流程图图2-1-3 左移循环点亮发光二极管程序流程图四、实验内容与步骤1.实验内容:1)P1口做输出口,接八只发光二极管,根据程序流程图2-1-2,编写程序使P1口8个发光二极管同时熄灭-----延时-----点亮。
2)根据程序流程图1-3,编写程序使P1口8个发光二极管每隔一个左移循环点亮。
2.实验步骤:1)将P1.0~P1.7分别连接发光二极管L1~L8。
2)按流程图2-1-2编写程序,对程序进行编辑、汇编直至无语法错误。
3)调试程序:(1)单步调试,观察并记录相应寄存器内容及发光二极管L1~L8的状态。
(2)全速运行程序,观察并记录发光二极管L1~L8的状态。
4)重复2、3步骤,进行实验内容2的实验。
五、实验报告1.写出使P1口8个发光二极管同时熄灭-----延时-----点亮源程序清单,并对每条指令给予注解。
2.写出使P1口8个LED每隔一个(或二个)左移循环点亮源程序清单,并对每条指令给予注解。
六、思考题1.改变延时常数,重做实验。
2.修改程序,使LED发光方式、方向等改变。
七、参考程序:1.点亮8个LED程序清单ORG 4000HLJMP STARTORG 4100HSTART:MOV A,#00HMOV P1,A ;点亮8个LEDLCALL DELAY ;延时0.1秒MOV A,#0FFHMOV P1,A ;熄灭8个LEDLCALL DELAY ;延时0.1秒JMP STARTDELAY:MOV R1,#124 ;延时0.1秒DEL1:MOV R2,#200DEL2:DJNZ R2,DEL2DJNZ R1,DEL1RETEND2.循环点亮LED程序清单ORG 4000HLJMP STARTORG 4100HSTART:MOV A,#0FEHLOOP:MOV P1,A ;点亮1个LEDRL A ;左移一位,点亮下一个发光二极管LCALL DELAY ;延时0.1秒JMP LOOPDELAY:MOV R1,#124 ;延时0.1秒DEL1:MOV R2,#200DEL2:DJNZ R2,DEL2DJNZ R1,DEL1RETEND实验二P1口实验(二)一、实验目的:1.P1口作为输入口的使用方法。
2.掌握数据输入、输出程序的设计方法。
二、实验设备:EL-MUT-III型单片机实验箱、8051CPU模块三、实验原理:1.P1口作为输入口实验原理见图2-2-1。
图2-2-1 P1口作为输入口实验电路2.程序流程图:程序流程图见图2-2-2。
图2-2-2 显示P1口状态程序流程图四、实验内容与步骤:1.实验内容:P1口做输入口:如图2-2-1,P1口的P1.0-P1.8分别接8个单刀双郑开关K1~ K8,74LS273做输出口接八个LED,编写程序读取开关K1-K8状态,并在LED上显示出来。
2.实验步骤:1)根据图2-2-1连线,CS273接CS0。
2)根据流程图2-2-2编写相应程序,对程序进行编辑、汇编直至无语法错误。
3)调试程序,拨动开关K1-K8,观察并记录程序运行结果。
五、实验报告仿照实验一,写出相应的实验报告。
六、思考题1.图2-2-1中芯片74LS273的作用是什么?2.在图2-2-1中,若LED反转1800,电路和程序如何修改?七、参考程序:;通过LED将P1口的状态显示ORG 0000HLJMP STARTORG 4100HSTART:MOV P1,#0FFH ;设置P1口为输入状态LP:MOV A,P1 ;P1口的状态读入累加器AMOV DPTR,#0CFA0H ;74LS273地址(输出口地址)送DPTRMOVX @DPTR,A ;A的值送LED显示JMP LP ;继续循环监测端口P1的状态END实验三P1口实验(三)一、实验目的:1.掌握P1口既做输入又做输出的使用方法。