返回首页
当前位置: 主页 > 串行口程序设计 >

51单片机串行口通信程序设计例子

时间:2009-03-06 17:13来源:未知 作者:牛牛 点击:
串行口方式0应用编程 8051单片机串行口方式0为移位寄存器方式,外接一个串入并出的移位寄存器,就能扩展一个并行口。 单片机串行口通信程序设计硬件连接图 例:用8051单片机串行口外接CD4094扩展8位并行输出口,如图所示,8位并行口的各位都接一个发光二极管
串行口方式0应用编程 8051单片机串行口方式0为移位寄存器方式,外接一个串入并出的移位寄存器,就能扩展一个并行口。

点此在新窗口浏览图片
<单片机串行口通信程序设计硬件连接图> 内容来自单片机之家www.dpj100.com

例:用8051单片机串行口外接CD4094扩展8位并行输出口,如图所示,8位并行口的各位都接一个发光二极管,要求发光管呈流水灯状态。 串行口方式0的数据传送可采用中断方式,也可采用查询方式,无论哪种方式,都要借助于TI或RI标志。串行发送时,能靠TI置位(发完一帧数据后)引起中断申请,在中断服务程序中发送下一帧数据,或者通过查询TI的状态,只要TI为0就继续查询,TI为1就结束查询,发送下一帧数据。在串行接收时,则由RI引起中断或对RI查询来确定何时接收下一帧数据。无论采用什么方式,在开始通信之前,都要先对控制寄存器SCON进行初始化。在方式0中将,将00H送SCON就能了。

-----------------单片机串行口通信程序设计列子--------------------------

单片机

ORG 2000H 内容来自单片机之家www.dpj100.com

START: MOV SCON,#00H ;置串行口工作方式0 单片机

MOV A,#80H ;最高位灯先亮 单片机

CLR P1.0 ;关闭并行输出(避象传输过程中,各LED的"暗红"现象)

单片机

OUT0: MOV SBUF,A ;开始串行输出

内容来自单片机之家www.dpj100.com

OUT1: JNB TI,OUT1 ;输出完否 单片机

CLR TI ;完了,清TI标志,以备下次发送 单片机

SETB P1.0 ;打开并行口输出 单片机

ACALL DELAY ;延时一段时间 单片机

RR A ;循环右移 单片机

CLR P1.0 ;关闭并行输出 内容来自单片机之家www.dpj100.com

JMP OUT0 ;循环 单片机

说明:DELAY延时子程序能用前面我们讲P1口流水灯时用的延时子程序,这里就不给出了。 内容来自单片机之家www.dpj100.com

顶一下
(6)
60%
踩一下
(4)
40%
------分隔线----------------------------
推荐内容