共享一个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 ……