全球旧事资料 分类
单片机串口通信浅谈
一、准备知识
1.什么是串口?串即串行的意思,是指数据在一根数据线上按照二进制数的数位一位接一位的传输,例如要传输一个字节的数据10110010,先将最低位的0通过数据线传送过去,然后是下一位的1(两次传送时间间隔很小),依次将8位数据(1字节)传送过去。在此对比一下并口的传输方式,并就是并行的意思,就是说数据是并行传过去的,假如一个并口有8根数据线,那么它一次可以传送8位即一个字节,仍以刚才的数据为例,在某一时刻,通过并口传送此数据,那么此并口的一根线上传的是0信号,另一根是1信号,以此类推,每根线上在同一时刻传的数据不一样,这样就达到一次传送多位的目的。初次接触的同学可能会很自然地认为并口比串口速度快,但其实不是这样的,首先,并口需要不只一根线,成本相对较高,多根线也造成线路阻抗、噪声等问题更加突出,不适合长距离传输。而串口只需两根线(一根发送,一根接收)即可完成通讯的功能,目前串口的速度以比并行端口传输速率快,rs232(即通常所说的串口)、USB、1394等都属于串口。以下是串口的照片:
需要注意的是,串口是2排共9针(每针具体功能见下文),而我们常用的显示器接口VGA用的则是3排共15针,需要将两者区分开来。2.什么是波特率?波特率又称比特率,单位bps(bits),指的是每秒传输的二进制位数,8个二进制位即1个字节。Rs232常用的波特率有19200、9600、4800,其中9600最常用。3.什么是单片机的寄存器?寄存器是单片机内的重要组成部分,在初学51时通过控制相应寄存器的值来告诉单片机你要使用他的什么功能。例如,我在代码中输入SCON0x50,就告诉单片机我要使用它的串行端口,使用的是模式1(模式的讲解见下文)。
二、单片机端准备工作
1.需要用到的元器件或模块:单片机最小系统模块×1,max232×1,10uF电容×4,串口接头×12.串口接头各引脚说明
f3.电路图
连51单片机P31口连51单片机P30口
4.51单片机串口通信需要用到的寄存器及讲解需要用到的几个寄存器:TMOD(定时器计数器模式寄存器)、TCON(定时器计数器控制寄存器)、SCON(串行端口寄存器)、PCON(电源控制寄存器)。本文串口通信所使用的波特率为9600,要想单片机能够得到一个准确的频率就必须使用到单片机的定时器计数器功能,当定时器走了一定秒数时就会让单片机发一个脉冲,脉冲上就承载着此次传输的一位数据,TMOD用来告诉单片机定时器是如何工作的,SCON用来在串口进行通讯时告r
好听全球资料 返回顶部