单片机实验报告书
- 格式:doc
- 大小:403.50 KB
- 文档页数:14
并行I/O接口实验
一、实验目的
熟悉掌握单片机并行I/O接口输入和输出的应用方法。
二、实验设备及器件
个人计算机1台,装载了Keil C51集成开发环境软件。单片机仿真器、编程器、实验仪三合一综合开发平台1台。
三、实验内容
(1)P1口做输出口,接八只发光二极管,编写程序,使发光二极管延时(0.5-1秒)循环点亮。实验原理图如图3.2-1所示。
图3.2-1单片机并行输出原理图
实验程序及仿真
ORG 0000H
LJMP START
ORG 0100H
START:MOV R2,#8
MOV A,#0FEH
LOOP:MOV P1,A
LCALL DELAY
RL A
DJNZ R2,LOOP
LJMP START
DELAY:MOV R5,#20
D1:MOV R6,#20
D2:MOV R7,#248
D3:DJNZ R7,D3
DJNZ R6,D2
DJNZ R5,D1
RET
END
中断实验一、实验目的
熟悉并掌握单片机中断系统的使用方法,包括初始化方法和中断服务程序的编写方法。
二、实验设备及器件
个人计算机1台,装载了Keil C51集成开发环境软件。
单片机仿真器、编程器、实验仪三合一综合开发平台1台。
三、实验内容
(2)用P1口输出控制8个发光二极管LED1~LED8,实现未中断前8个LED闪烁,响应中断时循环点亮。
实验程序及仿真
ORG 0000H
LJMP MAIN
ORG 0003H
LJMP INT00
ORG 0010H
MAIN:
A1:MOV A,#00H
MOV P1,A
MOV A,#0FFH
MOV P1,A
SETB EX0
JB P3.2,B1
SETB IT0
SJMP C1
B1:CLR IT0
C1:SETB EA
NOP
SJMP A1
INT00:PUSH Acc
PUSH PSW
MOV R2,#8
MOV A,#0FEH
LOOP: MOV P1,A
LCALL DELAY
RL A
DJNZ R2,LOOP
POP PSW
POP Acc
RETI
DELAY:MOV R5,#100
D1:MOV R6,#20
D2:MOV R7,#250
D3:DJNZ R7,D3
DJNZ R6,D2
DJNZ R5,D1
RET
END
3.6 定时/计数器实验
一、实验目的
掌握单片机定时/计数器的使用方法,包括初始化方法和中断服务程序的编写方法。
二、实验设备及器件
个人计算机1台,装载了Keil C51集成开发环境软件。单片机仿真器、编程器、实验仪三合一综合开发平台1台。
三、实验内容
(2)用CPU内部定时器中断方式计时,实现每1秒钟控制P1.0输出状态发生一次反转,P1.0接发光二极管。
实验程序及仿真
ORG 0000H
LJMP MAIN
ORG 000BH
LJMP TOSUB
ORG 0030H
MAIN:
MOV SP,#70H
SETB EA
SETB ET0
MOV TMOD,#01H
MOV TL0,#0B0H
MOV TH0,#3CH
SETB TR0
MOV R2,#00H
LJMP $
TOSUB: MOV TL0,#0B0H
MOV TH0,#3CH
INC R2
CJNE R2,#20,T01
CPL P1.0
MOV R2,#00H
RETI
T01: RETI
串行通信实验
一、实验目的
掌握单片机串行接口的使用方法。
二、实验设备及器件
个人计算机1台,装载了Keil C51集成开发环境软件。单片机仿真器、编程器、实验仪三合一综合开发平台1台。
三、实验内容
利用8031单片机串行口,实现两个实验台之间的串行通讯。其中一个实验台作为发送方,另一侧为接收方。
数据块传送。将甲单片机RAM中30H-37H单元的数通过串行接口传送到乙单片机去,程序只发送、接收一次。
实验原理
MCS-51系列单片机上有一个通用异步接收/发送器UART,通过引脚
RXD[P3.O]和TXD[P3.1]可与外部电路进行全双工的串行异步通信,发送数据时由TXD端送出,接收时数据由RXD端输入。
和译码器控制,可以在8 个通道中任意访问一个单边的模拟信号。
DC0808引脚功能:
芯片有28条引脚,采用双列直插式封装,各引脚功能如下:
1~5和26~28(IN0~IN7):8路模拟量输入端。
8、14、15和17~21:8位数字量输出端。
22(ALE):地址锁存允许信号,输入,高电平有效。
6(START): A/D转换启动脉冲输入端,输入一个正脉冲(至少100ns宽)使其启动(脉冲上升沿使0808复位,下降沿启动A/D转换)。
7(EOC): A/D转换结束信号,输出,当A/D转换结束时,此端输出一个高电平(转换期间一直为低电平)。
9(OE):数据输出允许信号,输入,高电平有效。当A/D转换结束时,此端输入一个高电平,才能打开输出三态门,输出数字量。
10(CLK):时钟脉冲输入端。要求时钟频率不高于640KHZ。
12(VREF(+))和16(VREF(-)):参考电压输入端
11(Vcc):主电源输入端。
13(GND):地。
23~25(ADDA、ADDB、ADDC):3位地址输入线,用于选通8路模拟输入中的一路
工作过程:①在IN0-IN7上可分别接上要测量转换的8路模拟量信号。
②将ADDA-ADDC端给上代表选择测量通道的代码。如000(B)则代表通道0;001(B)代表通道1;111则代表通道7。
③将ALE由低电平置为高电平,从而将ADDA-ADDC送进的通道代码锁存,经译码后被选中的通道的模拟量送给内部转换单元。
④给START一个正脉冲。当上升沿时,所有内部寄存器清零。下降沿时,开始进行A/D转换;在转换期间,START保持低电平。
⑤EOC为转换结束信号。在上述的A/D转换期间,可以对EOC进行不断测量,当EOC为高电平时,表明转换工作结束。否则,表明正在进行A/D转换。
⑥当A/D转换结束后,将OE设置为1,这时D0-D7的数据便可以读