购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

第4章

万能通信之自发自收
——单机通信

为什么称之为万能通信?因为接下来的六章所介绍的内容是灵活运用串口通信函数、采用各种技巧解决“所有”串口通信问题,一旦通过其他方式无法实现用户设计的功能,都可以利用这几章介绍的知识予以解决,这种方法是“万能的”。自发自收是一种不借助任何仪表、不需要任何外部设备就能实现串口通信的方式,解决了用户没有下位机就不能编程的难题。很多读者在初步操作串口时,认为一定要购置硬件设备,实际上是没有必要的,而且,硬件设备五花八门,学会了一种,还会有千千万万种,本章介绍的技术就是打开这“千千万万”种锁的钥匙。

学习串口通信前,必须首先掌握串口的基本技能和通信技巧,本章采用串口自发自收程序展示通信过程。前几章的学习了解了标准RS-232串口中9根针的功能及电压特性,仅第2引脚与第3引脚具有数据通信功能,也就是说,在这两根引脚上传输的是数据,第3引脚向外送数据,第2引脚从外面接数据,可是这数据送给“谁”了呢?又从“谁”那接收了呢?显然,这里的“谁”就是外部的设备,包括智能仪表、传感器、控制器等,但是现在没有这些硬件,怎么办?有人提出,准备两台电脑,由A发给B,再由B发给A,这种方式当然可以,可是成本比购置一个硬件要高得多,除非具有这种条件,否则仍要准备相应的通信电缆,既麻烦,又不经济。既然串口具有发和收的功能,为什么不可以自己发自己收呢?当然可以,这一大胆的想法就是本章要讲的一个技巧,将标准9针串口的第2引脚与第3引脚用金属(跳线帽、杜邦线、导线、别针、订书钉等)相连,通过引脚短路便可实现物理上的发-收功能,电压信号从第3引脚发出,经短路金属又回到第2引脚,如图4-1所示,这是实现自发自收的前提。可参考二维码视频讲解。

图4-1 DB-9针串口公头2引脚(接收)与3引脚(发

标准9针串口通过2、3引脚短路连接实现自发自收,其他的串口如何连接呢?对于TTL,其TxD与RxD用3.3 V或5.0 V表示逻辑1,用0.0 V表示逻辑0,将TxD与RxD短路即可;如果是简化的RS-232,由于只有三个引脚,即TxD、RxD和GND,与TTL一样,只要将TxD与RxD短路便可实现自发自收功能,虽然其表示逻辑1和逻辑0的电平与TTL正好相反,并且电压范围较高,但由于是自发自收,并不涉及逻辑和电平转换,因此可以直接使用;RS-485无法实现自发自收功能,这一点大家一定要注意,因为RS-485是通过A+与B-的电压差发送信号的,也就是差分驱动,需要两条线路共同完成一次信号传输,所以RS-485不具备这一功能。

但是,对于大部分的用户而言,仍然存在一个问题,因为大家都使用笔记本电脑,在笔记本电脑上没有标准9针串口,只有USB接口,必须通过USB转TTL、USB转RS-232模块生成串口。这种转换器在市场上很多,最好购置旧一些的芯片,比如PL2303芯片,可以即插即用;如果采用新的芯片,如CP210x,在很多机器上无法自动识别和安装,对于一般用户进行手动安装又有些困难。因此,建议初学者不采用。USB转RS-232模块又分为两种,一种是转为标准9针串口,这种转换模块与台式机上的功能一致,如果采用第1、4、6、7、8、9等控制引脚作为输入输出,必须购置这类转换模块;另一种是只转为简化的RS-232,具有TxD、RxD和GND三个引脚,仅能用于数据通信,而没有输入输出控制功能。可参考二维码视频讲解。 I2uw84SqQafROr4PE+tjcr2QLC0u3l65OyOTrglJUsyHIQ7BbzAfYLvPTz9+7qyV

点击中间区域
呼出菜单
上一章
目录
下一章
×