您的位置:首页 > 其它

串口通信系列一

2016-04-28 16:05 155 查看
对于单片机的学习,我们习惯上可以分为两大块,首先第一个是控制类的学习,包括LED小灯、数码管、电机和蜂鸣器等;第二个则是通信类学习,主要是学习串口通信以及串口通信延伸出来的各种知识。

然而,很多的同学辛辛苦苦结束了控制类的学习后,发现自己能够做一些小东西出来自娱自乐了,也就放松了学习;又或者是学到串口了,感觉很难,暂时放下了学习,这一放下,可能就很难再拿起来了。所以给大家的建议是,要持续系统的学习一门技术,建立起对这门技术或学科的概念模型,建立起来后才可以稍稍放慢下进度,等待后期的技术深化和提高。

这个系列的文章主要是围绕串口通信展开。我先将要点列一下,方便朋友们阅读:

1)串口通信难吗?

2)串口通信的基本知识

3)IO口模拟UART串口通信

4) UART串口通信的基本应用

先做一个开题声明,小编是学习宋雪松老师出品的金沙滩的单片机。所以内容会与宋老师的讲解是共通的,只是在内容上加入了个人的理解。

1)串口通信难吗?

串口通讯,其实不难。为什么这么说,因为串口通信也是一门技术,跟其他技术一样,在没接触、没弄懂的时候,隔着一层窗户纸,觉得很神秘,但是,只要你敢于去接触它,花点心思去理解,也就不难了。

觉得难的原因可能有几种情况:1、学久了,累了 2、师兄师姐们说不好学3、表面感觉高大上,不敢接触,或是接触后不长时间就抽身离开

归结起来就是:不去理解串口通信,理解不了串口通信。因为串口通信不同与控制类的学习,没有了直观性,你得到的往往只是一个结果,错了,很难去直观地理解出错的原因。

2)串口通信的基本知识

a)概念

通信按照基本类型可以分为并行通信和串行通信。这两者的关系可以简单理解为多车道和单车道的关系,即并行通讯可以一次发送多个位,实现字节为单位的通信; 串行通信则是一次发送一位,发送八次才能发完一个字节。我们本文所讲的串口通信自然就是串行通信了。

STC89C52有两个引脚是专门做UART串行通信的,一个是P3.0, 一个是P3.1, 它们还分别有另外的名字,叫RXD和TXD, 由它们组成的通信接口就称为串行接口,简称串口。

两个单片机之间进行UART串口通信,基本演示图如下:



先补充一些基础知识:

RXD :Recieve Data  串口接收端

TXD  :Transmit Data  串口发送端

GND  :地线,保持通信的基准数

那就可以很容易理解了:

你发送,我接收; 我发送,你接收。

b)RS-232通信接口

这个接口,就是我们常见的台式电脑的那个9针串行接口。

对这个接口,我们不需要深入理解,了解一下就可以了

1、物理上分为9针(公头)和9孔(母头)

2、9个引脚,我们只需了解3个,分别为2引脚RXD, 3引脚TXD, 5引脚GND

3、这3个要了解的引脚虽然和上面提到的3个名称相同,却又有不同的地方,因为它们不能直接与单片机联通,因为并不是所有的电路的5V都表示高电平,0V表示低电平。

4、对于RS-232标准来说,它是个反逻辑,或负逻辑。负逻辑的解释为:它的TXD和RXD的电压,-3V ~ -15V表示1, +3V ~ +15V电压代表0 。简单来说就是低电平表示1,高电平表示0

5、9针RS-232串口不能与单片机直接连接,需要用一个电平转换芯片MAX232完成。

c)USB转串口通信

工业上还有RS-232串口通信的大量使用,但在商业技术应用上,已将慢慢地使用USB转UART技术取代了RS-232串口。例如,我们的笔记本电脑就没有了RS-232串口,单一样不妨碍我们用笔记本和单片机通信,因为我们在电路(单片机的电路)中添加了一个USB转串口芯片,如CH340T芯片。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  单片机 串口通讯