主题中讨论的其他部件: MSP430FR4133
我在MSP430G2553上添加了多个外设,其中包括4*4键盘,16*2 LCD等。主板上没有足够的引脚。 所以,我想使用移位寄存器,这样我就可以移动其中一个键盘或LCD,因为这两个都占用了大量的针! 另外,请注意,我所拥有的LCD不支持SPI。我不精通汇编,因此代码示例非常有用。
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
我在MSP430G2553上添加了多个外设,其中包括4*4键盘,16*2 LCD等。主板上没有足够的引脚。 所以,我想使用移位寄存器,这样我就可以移动其中一个键盘或LCD,因为这两个都占用了大量的针! 另外,请注意,我所拥有的LCD不支持SPI。我不精通汇编,因此代码示例非常有用。
如果您仅使用MSP430G2553,并且没有足够的GPIO引脚直接从MCU连接到键盘和LCD,则您必须获得一些创意。
此博客文章(.
)对移位寄存器的工作原理及其如何用于串行输出并行信号(以便从根本上将2个GPIO信号(CLK和数据)扩展到8个或更多的并行引脚)有很好的解释。 这仅限于只能向连接到移位寄存器的外围设备输出电压的范围。 如果要将LCD连接到移位寄存器的输出,则必须将所需的信号逐个输出到移位寄存器,然后使用第三个MCU GPIO将移位寄存器值锁定到LCD中。
另一种选择是使用多路复用器在设备上使用同一组GPIO引脚来控制LCD输入和键盘输入。 这是一篇博客文章(.
),以及如何使用它,下面是一个TI器件的示例,该器件可以执行该功能(.
)。
第三个选项是使用SPI或I2C GPIO扩展器。 TI还生产这些芯片,您可以查找 TCA9535 以了解有关如何使用它们的详细信息。
希望这有助于为您指明正确的方向,使您的项目顺利进行。
此致,
Matt Calvo
这是我的2xx键盘,没有额外的部件,只使用一个带ADC输入的引脚。
e2e.ti.com/.../113.6769万
以下是8x8矩阵的示例 ,该矩阵使用3个带胶水逻辑的引脚。
blog.weinigel.se/.../sds7102-front-panel.html