资料介绍
共享一个51单片机串口通信例,希望对初学者有用
51单片机串口通信例
下面介绍单片机上的串口通信。通过讲,读者可以掌握单片机上串口的工作原理和如
何通过程序来对串口进行设置,并根据所给出的实例实现与PC 机通信。
一、原理简介
51
单片机内部有一个全双工串行接口。什么叫全双工串口呢?一般来说,只能接受或只能
发送的称为单工串行;既可接收又可发送,但不能同时进行的称为半双工;能同时接收
和发送的串行口称为全双工串行口。串行通信是指数据一位一位地按顺序传送的通信方
式,其突出优点是只需一根传输线,可大大降低硬件成本,适合远距离通信。其缺点是
传输速度较低。
与之前一样,首先我们来了解单片机串口相关的寄存器。
SBUF
寄存器:它是两个在物理上独立的接收、发送缓冲器,可同时发送、接收数据,可通过
指令对SBUF
的读写来区别是对接收缓冲器的操作还是对发送缓冲器的操作。从而控制外部两条独立
的收发信号线RXD(P3.0)、TXD(P3.1),同时发送、接收数据,实现全双工。
串行口控制寄存器SCON(见表1) 。
表1 SCON寄存器
[pic]
2011-11-1 17:12:21 上传
下载附件 (8.02 KB)
表中各位(从左至右为从高位到低位)含义如下。
SM0 和SM1 :串行口工作方式控制位,其定义如表2 所示。
表2 串行口工作方式控制位
[pic]
2011-11-1 17:12:21 上传
下载附件 (32.23 KB)
其中,fOSC
为单片机的时钟频率;波特率指串行口每秒钟发送(或接收)的位数。
SM2