⑤ 下载程序运行后,先从PC机发送一个0x55(A),可以在PC的接收软件看见接收到A。
6. 实验预习要求
理解硬件结构,先把程序编好然后在Keil C51环境下进行仿真,还要学会PC机上的串行口调试软件的使用(DPFlash也内嵌一个串口调试器)。
7. 实验参考程序 程序1:
ORG 0000H LJMP Main ORG 00F0H Main: MOV SP, #60H
MOV TMOD, #20H MOV TH1, #0FDH MOV TL1, #0FDH MOV SCON, #50H MOV PCON, #00H SETB
TR1
Mainloop:
MOV SBUF, #55H
SENDWT: JBC TI, Mainloop AJMP SENDWT ; END
程序2: ORG 0000H LJMP
Main
ORG 00F0H
Main: MOV SP, #60H MOV TMOD, #20H MOV TH1, #0FDH MOV TL1, #0FDH MOV SCON, #50H MOV PCON, #00H SETB TR1
REC: JBC RI, SENDWT AJMP
REC
;给堆栈指针赋初值 ;设置T1为方式2
;设置波特率为9600bps ;设置串口位方式1 ;定时器1开始计数 ;开始发送
;给堆栈指针赋初值 ;设置T1为方式2 ;设置波特率为9600bps ;设置串口位方式1 ;定时器1开始计数
Page 9 of 17
SENDWT: MOV CLR CJNE MOV
A, SBUF RI
A, #55H, REC SBUF, #41H
;开始发送
JNB TI , $ AJMP REC ; END
Page 10 of 17
实验四 用8155扩展I/O、RAM及定时器实验
1. 实验目的
掌握单片机与8155的接口原理,熟悉对8155的初始化编程和输入、输出程序的设计方法,了解8155定时器的使用方法。
2. 实验设备及器件 IBM PC机 示波器
一台 一台 一台
DP-51PRO单片机综合仿真实验仪
3. 实验内容
(1) 通过单片机的总线接口对8155芯片进行访问,编写程序分别实现对8155的I/O口和内部RAM、定时器进行操作。
(2) 连接线路验证8155的各项功能,熟悉它的应用方法。
4. 实验要求
熟悉8155并行接口芯片的编程方法和应用,能够在设计电路时合理使用8155对端口资源进行扩展,从而掌握它的使用技巧。
5. 实验步骤 ① 8155引脚如图所示,连接线路,将A3区J89接口的RST接地,将J89的CE、I/O/M分别接到
Page 11 of 17
A2区J63接口的A15和A14上,完成总线操作的电路接线。对8155的RAM的00H单元写入33H,再将00H单元读出来,观察写入的数据与读出的数据是否相同。 ② 使用导线将A3区J95接口和D1区接口连接,完成8155的端口控制测试实验部分(控制LED的亮与灭) ③ 将B2区JP20接口短接,启动时钟源短路,再X2 插座上插入20MHz晶振。用导线将B2区J112接口时钟源输出的1/8分频针脚连接到A3区J89接口的TIN上。使用导线将A3区J96接口和D1区J52接口连接,完成定时器输出实验部分(用8155定时器定时,每隔1s一次读取8155内部RAM的数据送PB口显示----实际时间计算有错误,请同学自行计算相应的定时时间并验证!)。 ④ 使用示波器观察8155定时器的输出信号(J89接口的TOUT)。
6. 实验预习要求
认真预习本实验内容,按照实验要求提前做好实验准备工作,认真阅读8155的数据手册。
实验参考程序:
参考程序1:8155端口控制测试程序 ORG 8000H LJMP MAIN ORG 8100H MAIN: MOV MOV MOV
SP, #60H A, #01H
;初始化堆栈
;初始化8155 IO口工作方式 ;设置PA口位输出方式 ;设置变量初值 ;初始化端口地址
DPTR, #7F00H
MOVX @DPTR, A MOV A, #0 MOV DPTR, #7F01H LOOP: INC A
MOVX @DPTR, A ACALL DELAY SJMP LOOP DELAY: MOV R4, #5 DELAY1: MOV R5, #200 DELAY2: MOV R6, #250 DJNZ R6, $ DJNZ DJNZ RET ;
R5, DELAY2 R4, DELAY1
;端口置数
END
参考程序2:;8155扩展单片机外部RAM实验程序
Page 12 of 17