24小(xiǎo)时联系電(diàn)话:18217114652、13661815404
中文(wén)
- 您当前的位置:
- 首页>
- 電(diàn)子资讯>
- 公司新(xīn)闻>
- 如何扩展微控制器的输...
公司新(xīn)闻
如何扩展微控制器的输入和输出
如何扩展微控制器的输入和输出
在我接受教育的早期练习電(diàn)路板和原理(lǐ)图时,我记得不止一次考虑简单地增加電(diàn)路板尺寸,以便我可(kě)以正确安装我的组件并使布線(xiàn)更容易。这绝对不会有(yǒu)帮助,我很(hěn)高兴我坚持不懈地通过挑战寻找解决方案,但在我的职业生涯中,仍有(yǒu)一些时候我已经研究了设备的必需品,并希望我能(néng)让他(tā)们的電(diàn)路板更大。
这同样适用(yòng)于微控制器输入和输出。不幸的是,当微控制器达到其输入或输出限制时,没有(yǒu)什么可(kě)以放松的。在需要与多(duō)个传感器和螺線(xiàn)管连接的应用(yòng)中,输入/输出 (I/O) 引脚可(kě)能(néng)不够用(yòng)。在这种情况下,有(yǒu)许多(duō)选项可(kě)用(yòng),每个选项都有(yǒu)自己的一组含义。
使用(yòng)更高引脚数的微控制器
微控制器中的 I/O 引脚通常按端口分(fēn)组。单个端口可(kě)能(néng)包含 8 到 32 个独立的 I/O 引脚,具體(tǐ)取决于微控制器架构。将微控制器升级到更高的引脚数似乎是最简单的解决方案。然而,选择更高引脚数的微控制器通常会增加组件成本。此外,根据迁移的类型,底层固件可(kě)能(néng)会受到很(hěn)大影响。
I/O 引脚因不同的微控制器而异。
在同一微控制器系列中升级时,固件修改很(hěn)小(xiǎo)或没有(yǒu)必要。但是,从 8 位微控制器(如 PIC18F25K20)升级到 32 位基于 ARM 的微控制器(如 LPC1768)涉及使用(yòng)一组单独的开发工具為(wèi)完全不同的架构编写固件。
一般来说,32 位微控制器的成本是 8 位微控制器的数倍。因此,仅仅為(wèi)了更多(duō)的 I/O 引脚而升级可(kě)能(néng)是一种矫枉过正的做法。
使用(yòng) 7400 系列逻辑 IC
為(wèi)避免将固件移植到全新(xīn)平台,7400 系列逻辑系列中有(yǒu)一些集成電(diàn)路 (IC) 选项非常适合 I/O 扩展。例如,74HC4051 是一款 3:8 CMOS多(duō)路复用(yòng)器/多(duō)路分(fēn)解器,也可(kě)用(yòng)于模拟信号。当然,使用(yòng)多(duō)路复用(yòng)器并不能(néng)完全解决微控制器上 I/O 引脚有(yǒu)限的问题,因為(wèi)每个 IC 会占用(yòng) 3 个引脚。
TPIC6C595 级联开漏输出移位寄存器。
更优雅的解决方案是使用(yòng)串行时钟移位寄存器,如 74HC595 用(yòng)于输出和 74HC165 用(yòng)于输入。这些 IC 可(kě)以相互级联,限制是将字节转移到所有(yǒu) IC 的延迟。使用(yòng)移位寄存器只涉及微控制器上的三个 I/O 引脚,而不管 IC 的数量如何。
I2C 扩展 GPIO IC
您也可(kě)以使用(yòng)I2C扩展GPIO芯片来增加PCB上I/O引脚的限制。顾名思义,微控制器使用(yòng) I2C 协议与扩展器芯片接口。使用(yòng) I2C 扩展器的优点是能(néng)够使用(yòng)提供的命令将单个引脚配置為(wèi)输入或输出。
您还可(kě)以通过将硬件地址引脚设置為(wèi)每个 IC 上的唯一地址来连接多(duō)个 I2C 扩展器。I2C 扩展器通常具有(yǒu)特殊的中断功能(néng),如果输入引脚从其先前状态发生变化,则可(kě)以生成中断。该微控制器轮询I2C扩展為(wèi)新(xīn)的输入值只有(yǒu)当中断被触发。
在某种程度上,中断驱动轮询方法比不断从级联移位寄存器移位值以检查值变化更有(yǒu)效。
PCB 布局考虑
级联移位寄存器和 I2C 扩展器都需要微控制器和 IC 之间的时钟和数据信号。将接口信号以相等的長(cháng)度相互靠近布線(xiàn),以防止时钟信号中出现毛刺,这一点很(hěn)重要。走線(xiàn)也应遠(yuǎn)离其他(tā)高速信号,以防止交叉耦合问题。