位串联

编辑
本词条由“匿名用户” 建档。

在计算机工程和电气工程中,位串联是一个术语,指任何采用软件替代专用硬件来产生传输信号或处理接收信号的数据传输方法。软件直接设置和采样GPIO(例如,微控制器上的引脚)的状态,并负责满足所有的时间要求和信号的协议排序。与位撞击相反,专用硬件(如UART、SPI、I²C)满足这些要求,如果有必要,提供数据缓冲器以放松软件的时间要求。Bitbanging可以以非常低的成本实现,并在一些嵌入式系统中普遍使...

简介

编辑

计算机工程和电气工程中,串联是一个术语,指任何采用软件替代专用硬件来产生传输信号或处理接收信号的数据传输方法。软件直接设置和采样GPIO(例如,微控制器上的引脚)的状态,并负责满足所有的时间要求和信号的协议排序。与位撞击相反,专用硬件(如UARTSPI、I²C)满足这些要求,如果有必要,提供数据缓冲器以放松软件的时间要求。Bitbanging可以以非常低的成本实现,并在一些嵌入式系统中普遍使用。

Bitbanging允许设备实现不同的协议,只需最小的或没有硬件变化。在某些情况下,新的、更快的处理器使比特撞击成为可能,因为最近的硬件比标准通信协议创建时的硬件运行速度快得多。

C语言代码示例

编辑

以下C语言代码示例在SPI总线上传输一个字节的数据。

考虑因素

编辑

是否部署比特撞击的问题,一方面是对负载性能和可靠性的权衡,另一方面是对硬件替代品的可用性的权衡。软件仿真过程比支持专用硬件要消耗更多的处理能力。微控制器将大部分时间花在发送或接收引脚的样本上,而牺牲了其他任务。

产生的信号通常有更多的抖动或突变,特别是如果处理器在通信的同时也在执行其他任务。然而,如果比特撞击的软件是由信号中断驱动的,这可能是次要的,特别是当控制信号如RTS、CTS或DCD可用时。当没有特定的硬件支持或需要更昂贵的微控制器时,在软件中的实现可以成为一种解决方案。

内容由匿名用户提供,本内容不代表vibaike.com立场,内容投诉举报请联系vibaike.com客服。如若转载,请注明出处:https://vibaike.com/168685/

(3)
词条目录
  1. 简介
  2. C语言代码示例
  3. 考虑因素

轻触这里

关闭目录

目录