单片机实验5精选.ppt
文本预览下载声明
实验五 串行口通信
一、实验目的:
1、单片机系统中,如果并行口不够用, 可使用未用的串行口进行扩充,实现串行输入并行输出。
2、用单片机串行口实现与PC机的通信。
3、熟悉XLISP系列 单片机综合仿真试验仪的组成和使用方法。
(1)学会XLISP软件的应用:XLISP的安装、检测、程序擦除和烧写过程。
(2)用XLISP软件和keil-uvision2集成调试软件进行实验并能得到正确的实验结果。; 二、实验内容
1、串入并出实验
本实验用74LS164来扩充并行口,并利用74LS164串行口实现8路跑马灯。
2、单片机串行口实现与PC机的通信
3、前期准备工作
(1)本次实验采用程序直接烧入芯片完成,需要更换单片机AT89S51芯片;
(2)用XLISP软件完成程序的烧入;具体操作过程请查阅单片机实验指导书:P10-12 XLISP的使用。; (一)串入并出实验
本实验用74LS164来扩充并行口,利用74LS164串行??实现8路跑马灯程序。
1、硬件连接:
(1) 用一个2PIN数据排线一端插入CPU部分JP53(P3口)的P3.0,P3.1。另外一端插入74LS164部分的输入端JP20。
(2) 用一根8PIN的数据排线, 一端插入74LS164部分的输出端JP26, 另一端插入8路指示灯的JP32。
2、用Kiel软件输入程序,过程见附录。
3、启动XLISP程序,检测、程序擦除并将生成的.HEX文件烧入芯片,运行并观察结果,注意烧入时JP17必须在编程状态(弹起)。; 参考程序
org 0080h
mov scon, ;设定UART方式MODE0
start: mov dptr,#table ;数据指针指到TABLE
loop: clr a ;清除ACC
movc a,@a+dptr ;到TABLE取数据
cjne a,#03,a1 ;到结束码03了么?不是转A1
jmp start ;是则重新开始
a1: cpl a ;数据取向
mov 30h,a ;A存入30H
mov sbuf,30h ;30H的值存入SBUF
loop1: jbc ti,loop2 ;监测TI=1?是则跳到LOOP2
jmp loop1 ;否则继续监测
loop2: call delay ;延时
inc dptr ;数据指针加1
jmp loop
;DELAY: ;延时程序
MOV R5,#255
D3:MOV R2,#255
D4:DJNZ R2,D4
DJNZ R5,D3
RET
table : db 01h,02h,04h,08h ;左移
db 10h, 20h,40h,80h
db 01h,02h,04h,08h
db 10h, 20h,40h,80h
db 80h,40h,20h,10h ;右移
db 08h, 04h,02h,01h
db 80h,40h,20h,10h
db 08h, 04h,02h,01h
db 00h,0ffh,00h,0ffh ;闪烁
db 03h
END; (二) 用单片机串行口实现与PC机的通信
1、硬件连接:
用8PIN线,将LED数码管的数据口(JP5)接到CPU的P0口,控制口(JP8)接P2口,CPU的P3口接按键(JP37)。
2、输入通信程序生成 名.HEX文件,并由XLISP程序烧入,烧入后将XLISP程序关闭。
3、在PC机上打开 sscom20 串口调试工具,设置波特率为4800,串口号1,在打开文件文本中找 名.HEX文件,JP17要求在仿真状态(按下)点“发送文件”。
(1)接收:在串口调试工具字符输入框中输入数据,点发送,在数码管上观察显示情况。
(2)发送:在单片机仿真仪上按K2-K5键,查看串行调试工具显示窗口的显示。; org 000
显示全部