串口和并口-硬件机制和软件策略

简介:
记得世纪之初的第四年,我刚上大学,记得老师讲串口比并口简单,但是并口一次可以发送8位的数据,当时我就觉得并口比串口好,因为它速度更快,可是后来,随着时间的流逝,我几乎发现并口失踪了,没有人再使用它了,难道一次可以传输8位的线缆没有一次仅可以传输1位的线缆好吗?
     后来参加工作,我逐渐明白了这个问题,并口虽然单次传输速度很快,然而一旦1位出错,8位的数据就全部重新传输,另一方面,也不利于单位控制,比如有的时候不需要传输8位的数据,只需要传输1位的控制位即可,另外最重要的,8位并行传输,8根线缆之间的串扰很强烈,出错率很高,除了传输ascii或者unicode字符之外,在控制方面,按位控制比按字节控制更加节能和高效,因此并口的利用率远远不如串口,硬件设计也过于复杂,而且硬件规范一旦成型就不易更改,而软件更改却很容易,因此一些控制信号最好通过软件协议来协商而不要通过硬件来固化,比如通信双方商量好,如果发送一个1110序列,那么就是马上要写数据了,数据内容中的1110如何转义也需要协商好,如果发送0111序列,那么就是请求读取数据,后面跟一个地址,这样要比专门搞一些地址针脚或者控制针脚要好很多。也就是说,硬件提供最基本的机制,比如收和发以及接地,而其余的控制协议和传输协议全部由软件来完成,这是最合理的了,这也是当今计算机工业发展的主流,比如磁盘一例,以往我们都是用ATA磁盘,也就是我们熟悉的IDE磁盘,它是并行口的,数据线有很多的针脚,两大排,插拔的时候要很小心,弄不好就插折了,而如今呢,再次打开机箱,我们发现了一根细很多的红色(也有别的颜色)线缆,那就是sata线缆,连接的就是sata磁盘,这根线缆有着不多的几个针脚,和usb差不多,它基于串行口,sata中s就是serial的意思。

     因此,不要在硬件上花费太多的时间、精力和金钱,最好的办法是用软件解决,评价一个硬件好不好并不是它的功能强不强,而是它必须是机制化的,不要有太多的策略。太多的功能必然意味着成本的增加,在成本和性质之间必须有一个权衡,就想同轴电缆败给双绞线一样,单论传输特性,同轴电缆肯定是无以伦比的,然而它造价高的超过了它带来的好处,因此它败了,双绞线的劣势完全可以用软件来弥补一二。软件的劣势可以通过重构来弥补,重构或者重写完全是取决于人的脑力的,而硬件的重构却需要巨大的人力财力投入,能用软件解决的问题不要用硬件解决。



 本文转自 dog250 51CTO博客,原文链接:http://blog.51cto.com/dog250/1271093

相关文章
|
2月前
Netty 与硬件设备交互,下行命令时(服务对设备),如何等待设备响应,再进行业务操作解决方案
Netty 与硬件设备交互,下行命令时(服务对设备),如何等待设备响应,再进行业务操作解决方案
|
4月前
|
数据采集 计算机视觉 异构计算
FPGA进阶(2):基于I2C协议的EEPROM驱动控制
FPGA进阶(2):基于I2C协议的EEPROM驱动控制
70 0
|
6月前
|
Linux
Linux设备深探:桥接硬件与软件的秘密通道
在Linux的世界里,"设备"这个词汇比你想象的要丰富和多彩得多。让我们一起来探索Linux设备的奥秘,理解它们是如何在Linux操作系统中发挥作用的。🐧✨
Linux设备深探:桥接硬件与软件的秘密通道
|
6月前
嵌入式硬件系统的时钟系统
嵌入式硬件系统的时钟系统
72 1
|
6月前
|
存储 芯片
一种LED驱动专用控制电路方案
一、基本的概述 TM1651 是一种带键盘扫描接口的LED(发光二极管显示器)驱动控制专用电路,内部集成有MCU 数字接口、数据锁存器、LED 高压驱动、键盘扫描等电路。本产品性能优良,质量可靠。采用SOP16/DIP16的封装形式。 二、特性说明 采用功率CMOS 工艺 显示模式(7字段×4 位),支持共阳数码管输出 键扫描(7×1bit),增强型抗干扰按键识别电路 辉度调节电路(占空比 8 级可调) 串行接口(CLK,DIO) 振荡方式:内置RC 振荡(450KHz±5%) 内置上电复位电路 内置自动消隐电路 封装形式:DIP16/SOP16 三、具体的应用
|
11月前
LED驱动控制专用电路
一、基本概述 TM1628是一种带键盘扫描接口的LED(发光二极管显示器)驱动控制专用IC,内部集成有MCU 数 字接口、数据锁存器、LED 驱动、键盘扫描等电路。本产品质量可靠、稳定性好、抗干扰能力强。 主要适用于家电设备(智能热水器、微波炉、洗衣机、空调、电磁炉)、机顶盒、电子称、智能电 表等数码管或LED显示设备。 二、特性说明 采用CMOS工艺 多种显示模式(10 段×7 位 ~ 13段×4 位) 最大支持矩阵按键10×2 辉度调节电路(8 级占空比可调) 串行接口(CLK,STB,DIO) 振荡方式:内置RC振荡 内置上电复位电路 内置数据锁存电路
119 0
|
网络协议 C语言 Perl
西门子S7-200 SMART硬件设备如何组态?通信如何组态,通信参数如何设置?
本篇我们来讲一下西门子S7-200 SMART硬件设备如何组态以及通信参数如何设置。
西门子S7-200 SMART硬件设备如何组态?通信如何组态,通信参数如何设置?
西门子S7-200 SMART如何用存储卡复位CPU出厂设置、固件升级、程序传输
上篇文章中我们学习了西门子S7-200 SMART的全局变量和局部变量以及如何编写带参数子程序并调用,本篇我们来介绍西门子S7-200 SMART使用存储卡复位CPU到出厂设置、固件升级和程序传输。S7-200 SMART CPU使用FAT32文件系统格式,支持容量为4G至32G范围内的标准商用MicroSD HC卡。
西门子S7-200 SMART如何用存储卡复位CPU出厂设置、固件升级、程序传输

相关实验场景

更多
下一篇
无影云桌面