首页|嵌入式系统|显示技术|模拟IC/电源|元件与制造|其他IC/制程|消费类电子|无线/通信|汽车电子|工业控制|医疗电子|测试测量
首页 > 分享下载 > 常用文档 > 单片机教程22课:单片机串行口通信程序设计

单片机教程22课:单片机串行口通信程序设计

资料介绍
单片机资料

1.串行口方式0应用编程
8051单片机串行口方式0为移位寄存器方式,外接一个串入并出的移位寄存器,就能扩展
一个并行口。
[pic]
<单片机串行口通信程序设计硬件连接图>
例:用8051单片机串行口外接CD4094扩展8位并行输出口,如图所示,8位并行口的各位
都接一个发光二极管,要求发光管呈流水灯状态。
串行口方式0的数据传送可采用中断方式,也可采用查询方式,无论哪种方式,都要借助
于TI或RI标志。串行发送时,能靠TI置位(发完一帧数据后)引起中断申请,在中断服
务程序中发送下一帧数据,或者通过查询TI的状态,只要TI为0就继续查询,TI为1就结
束查询,发送下一帧数据。在串行接收时,则由RI引起中断或对RI查询来确定何时接收
下一帧数据。无论采用什么方式,在开始通信之前,都要先对控制寄存器SCON进行初始
化。在方式0中将,将00H送SCON就能了。
-----------------单片机串行口通信程序设计列子--------------------------
ORG 2000H
START: MOV SCON,#00H ;置串行口工作方式0
MOV A,#80H ;最高位灯先亮
CLR P1.0 ;关闭并行输出(避象传输过程中,各LED的"暗红"现象)
OUT0: MOV SBUF,A ;开始串行输出
OUT1: JNB TI,OUT1 ;输出完否
CLR TI ;完了,清TI标志,以备下次发送
SETB P1.0 ;打开并行口输出
ACALL DELAY ;延时一段时间
RR A ;循环右移
CLR P1.0 ;关闭并行输出
JMP OUT0 ;循环
说明:DELAY延时子程序能用前面我们讲P1口流水灯时用的延时子程序,这里就不给出了

二、串行口异步通信
org 0000H
AJMP START
ORG 30H
START:
mov SP,#5fh
单片机教程22课:单片机串行口通信程序设计
本地下载

评论