资源描述
单片机原理及应用实验指导书
编写人:谢四莲
2010 09 01
实验一I /O口输出实验—LED流水灯实验
一、实验目的
1、掌握单片机最小系统的构成;
2、掌握I/O口的使用及驱动能力的概念;
3、熟悉移位指令和软件延时程序。
二、实验设备与器件
1、计算机1台
2、单片机学习板一块,版本:2010B
三、实验原理
如下图所示,用单片机控制LED的亮与灭,在实验图中将MCU的P1口与LED的阴极相连,当P1口给低电平时,LED发亮,当P1口给高电平时,LED熄灭。
四、实验内容
1、利用52单片机及8个发光二级管等器件,构成一个流水灯单片机系统。
2、用Keil C51软件
3、对创建的程序进行编译与链接,生成hex文件,同时对程序进行软件仿真;
4、实验板验证
(1)用ISP软件下载hex程序到CPU。
(2)检查验证结果。
五、实验报告
在预习报告的基础上写出详细实验过程;画出实验原理图,写出单片机控制程序,写出调试步骤与仿真方法,观察实验现象,得出实验结果,并分析实验结果的正确性。
六、预习要求
1、理解单片机最小系统的构成
2、掌握单片机I/O口的使用以及软件延时程序的编写。
七、实验参考程序
ORG 0000H
LJMP START
ORG 0030H
START:
MOV A,#0FEH
LOOP:MOV P1,A
LCALL DELAY
RL A;循环左移
LJMP LOOP
DELAY: MOV R5,#20 ;延时程序
D1:MOV R6,#20
D2:MOV R7,#248
DJNZ R7,$
DJNZ R6,D2
DJNZ R5,D1
RET
END
实验二 中断实验
一、实验目的
1、了解MCS-51中断系统
2、了解中断嵌套及中断优先级的概念和编程方法。
二、实验设备与器件
1、计算机1台
2、单片机学习板一块,版本:2010B
三、实验原理
如下图所示,在实验图中将MCU的P1口与LED的阴极相连,当外中断1产生下降沿时,进入中断,中断一次使点亮的LED循环移位一个,也就是第一次中断时只有P10接的D4亮,第二次中断时只有P11接的D5亮,以此类推,当循环8次后,再次从P10接的D4重新开始循环。
三、实验内容
1、利用P3.3接一个外部中断输入,控制8个LED灯循环点亮。
2、用Keil C51软件程序
3、对创建的程序进行编译与链接,生成hex文件,同时对程序进行软件仿真
4、实验板验证
(1)用ISP下载hex程序到CPU
(2)检查验证结果
五、实验报告
在预习报告的基础上写出详细实验过程;画出实验原理图,给出设计程序,分析实验现象,得出实验结果。
六、预习要求
1、理解掌握MCS-51中断系统的编程。
七、实验参考程序
ORG 0000H
LJMP MAIN
ORG 0013H
LJMP IN11
ORG 0040H
MAIN:SETB EA
SETB EX1
CLR PX1
SETB IT1
MOV P1,#0FFH
MOV A,#0FEH
SJMP $
IN11:RL A
MOV P1,A
RETI
END
实验三定时器实验
一、实验目的
1、掌握单片机定时器的功能;
2、学会定时器中断的编写;
3、学会利用定时器硬件计数和软件计数功能的结合实现较长时间的定时。
二、实验设备与器件
1、计算机1台;
2、单片机学习板一块,版本:2010B
三、实验原理
一只发光二极管LED和8051的P1.0脚相连。当P1.0脚是低电平时,LED发亮;当P1.0脚是高电平时,LED不亮。通过对定时器0编制程序使定时器0每隔1S对P1.0端口的输出状态取反一次,最终达到闪烁的效果。单片机系统主频为12MHz。
四、实验内容
1、编写一段程序,用Pl 口的P10做输出,由定时器0实现定时,在P10端口上输出周期为2S的脉冲,实现闪烁效果。
2、用Keil C51软件创建程序
3、对创建的程序进行编译与链接,生成hex文件,同时对程序进行软件仿真
4、实验板验证
(1)用ISP下载hex程序到CPU
(2)检查验证结果
五、实验报告
在预习报告的基础上写出详细实验过程;画出实验原理图,写出单片机控制程序,写出实验现象,得出实验结果,并分析实验结果的正确性。
六、预习要求
1、理解此实验所用到的硬件结构。
2、掌握定时器中断的编程方法。
七.实验参考程序
ORG 0000H
LJMP START
ORG 000BH
LJMP TIME0
ORG 0030H
START:MOV SP,#60H
MOV P1,#0FFH
MOV TMOD,#01H
MOV TH0,#15H
MOV TL0,#0A0H
SETB EA
SETB ET0
SETB TR0
LOOP: AJMP LOOP
TIME0:PUSH ACC
PUSH PSW
CPL P1.0
MOV TH0,#15H
MOV TL0,#0A0H
POP PSW
POP ACC
RETI
END
实验四 8051与PC之间串行通信实验
一、实验目的
1、掌握8051单片机串行口软件编程和硬件使用方法;
2、了解PC超级终端软件的使用(串口调试助手),熟悉RS232串口标准。
二、实验设备与器件
1、计算机1台
2、单片机学习板一块,版本:2010B
三、实验原理
如下图所示,将单片机与PC机通过RS232串口线相连,当在单片机上按下P3.2按键时,单片机向PC机开始发送字符,在PC机的调试终端上出现程序中所设定的字符。
四、实验内容
1、51单片机的串行口经MAX232(实际使用MAX202,二者功能一样)电平转换后,与PC串口相连,实现51和PC的通信。
2、用Keil C51软件创建程序
3、对创建的程序进行编译与链接,生成hex文件,同时对程序进行软件仿真
4、实验板验证
(1)用ISP下载hex程序到CPU
(2)检查验证结果
五、实验报告
在预习报告的基础上写出详细实验过程;画出实验原理图,写出单片机控制程序,得出实验结果,修改程序,观察实验结果。
六、预习要求
1、了解MAX232工作原理
2、熟悉单片机串行口的发送与接收。
七、实验参考程序
ORG 0000H
LJMP START
ORG 0030H
START:MOV SCON,#50H
MOV TMOD,#20H
MOV PCON,#00H
MOV TH1,#0F3H ;预置初值,设波特率为2400
MOV TL1, #0F3H
SETB TR1
WRIT: JB P3.2,$
ACALL DELAY10
JB P3.2,WRIT
JNB P3.2,$
MOV A, #01H ;将16进制的字符01发送到串口去
MOV SBUF,A
TI
AJMP WRIT
DELAY10: MOV R1,#20 ;10毫秒延时子程序
D2:MOV R2,#248
DJNZ R2,$
DJNZ R1,D2
RET
END
实验五8255I/O扩展实验
一、实验目的
1、了解8255芯片结构及编程方法;
2、了解8255输入/输出实验方法。
二、实验设备与器件
1、计算机1台
2、单片机学习板一块,版本:2010B
三、实验原理
原理图如下图所示,利用8255可编程并行口芯片,实现输入/输出实验,实验中用8255PA和PB口做输出,实现在数码管上从0到F循环显示的效果。
四、实验内容:
1、利用8255可编程并行口芯片,实现输入/输出
2、用Keil C51软件创建程序
3、对创建的程序进行编译与链接,生成hex文件,同时对程序进行软件仿真
4、实验板验证
(1)用ISP下载hex程序到CPU
(2)检查验证结果
五、实验报告
在预习报告的基础上写出详细实验过程;画出实验原理图,观察实验现象,写出结果。
六、预习要求
了解8255的工作原理及其应用和编程方法
七、实验参考程序
ORG 0000H
LJMP START
ORG 0030H
START:
MOV DPTR,#0D7FFH
MOV A,#89H
MOVX @DPTR,A
MOV DPTR,#0D1FFH
MOV A,#00H
MOVX @DPTR,A
DISPLAY: MOV 20H,#00H ;用来存放查表的内容
MOV R7,#16
LOOP:
MOV A,20H
MOV DPTR,#TABLE
MOVC A,@A+DPTR
MOV 21H,A
MOV DPTR,#0D2FFH
MOV A,21H
MOVX @DPTR,A
ACALL DELAY
ACALL DELAY
ACALL DELAY
INC 20H
DJNZ R7,LOOP
LJMP DISPLAY
DELAY: MOV R1,#250
DLP: MOV R2,#250
DJNZ R2,$
DJNZ R1,DLP
RET
TABLE:DB0xA0,0xBB,0x62,0x2A,0x39,0x2C,0x24,0xBA,0x20,0x28,0x30,
0x25,0xE4,0x23,0x64,0x74
END
实验六A/D转换实验
一、实验目的
1、了解A/D转换与单片机的接口方法;
2、了解ADC0809转换性能及编程方法;
3、通过实验了解单片机如何进行数据采集。
二、实验设备与器件
1、计算机1台
2、单片机学习板一块,版本:2010B
三、实验原理
原理图如下图所示,实验用的ADC0809是8位A/D转换器,每采集一次一般需。本实验可采用延时方式或查询方式读入A/D转换结果,也可以采用中断方式读入结果,在中断方式下,A/D转换结束后会自动产生EOC信号,实验中该信号与CPU的外部中断0相接。
通过引出的端口连线测量板子上不同点的电压值,如电源电压(5V),地(0V),led的电阻分压(介于5V与0V之间)等。
四、实验内容:
1、利用ADC0808/(0809)做A/D转换器,测量电源电压,地,led的电阻分压,编制程序将模拟量转换成二进制数字量,用P1口输出到发光二极管显示,或通过八段数码管将数值显示出来。
2、用Keil C51软件创建程序
3、对创建的程序进行编译与链接,生成hex文件,同时对程序进行软件仿真
4、实验板验证
(1)用ISP下载hex程序到CPU
(2)检查验证结果
五、实验报告
在预习报告的基础上写出详细实验过程;画出实验原理图,观察实验现象,写出结果。调节电位器的电压大小,观察LED或数码管的显示值。
六、预习要求
了解A/D转换器的工作原理及控制方式
七、实验参考程序
ADCDATA EQU 35H ;存放转换后的数据
START BIT P2.7
OE BIT P2.3
EOC BIT P3.4
CLOCK BIT P2.0
ORG 0000H
LJMP MAIN
ORG 0100H
MAIN:
CLR START
SETB START
CLR START ;启动转换
CLOOP: CPL CLOCK
JNB EOC,CLOOP ;等待转换结束
SETB OE ;允许输出
MOV ADCDATA,P0 ;暂存转换结果
CLR OE ;关闭输出
MOV P1,ADCDATA
LJMP MAIN
END
展开阅读全文