1个SPI转换成4路UART方案
电路一点通 2024-09-06
在开发项目的时候,如果单片机的UART串口通信数量不够,怎么办?介绍了其中的一个解决方案,是采用WK2124芯片,它就能实现扩展单片机的UART串口通信接口数量。只需要用单片机原来的1个SPI通信,就可以转换成4路UART通信。


解决完了UART串口通信数量的问题,那如果单片机的IO引脚数量不够,又怎么办呢?可能有工程师会说,选择一个引脚数量多的单片机型号不就解决了吗,多简单的问题啊。是的,选择一个引脚数量多的单片机型号,的确是可以解决,而且还比较简单。只不过这只是其中的一个常用方法而已。有没有不通过换单片机的型号来解决呢?做过软件代码开发的工程师都有体会,重新换一个单片机,对于程序的设计,是一个怎样的工作量。如果是同一个品牌同一个系列的单片机,换一个型号这还好。如果是换品牌了,又换功能了,基本上就相当于程序需要重新开发了。基于此,可以参考第二种方案

HTR3355芯片


HTR3355芯片,是一个可以扩展单片机IO引脚数量的芯片,它与单片机的接口是IIC通信,也就是说单片机通过一个IIC通信,就可以增加IO引脚的数量。

HTR3355芯片---嘉兴禾润芯片的左边,有两个标准的IIC通信引脚,一个是SDA,一个是SCL,单片机就是通过这两个引脚进行IO引脚数量的扩展。扩展的IO引脚是在芯片的“右边”,分别是P0.0~P0.7和P1.0~P1.7。不难发现,HTR3355芯片总共可以扩展16个IO引脚数量。每个扩展的IO引脚,它的工作电压在2.2V~5.5V之间。

应用电路


既然HTR3355芯片能实现扩展单片机的IO引脚数量,那具体在项目开发中,该如何使用呢?相信这个问题,有不少工程师会比较关心的吧。

HTR3355芯片应用电路
在硬件方面,只需要将芯片的SDA引脚、SCL引脚和INT引脚连接到单片机就可以了。其中INT引脚是芯片的中断输出引脚,也要连接到单片机的外部中断引脚。在软件方面,工程师可以等效认为,HTR3355芯片的IO引脚就是单片机自身的IO引脚,单片机的IO引脚能干啥,它也能干啥。比如读取每个IO引脚的电平状态,控制输出每个IO引脚的高低电平,这些功能在HTR3355芯片上也能完成。假如芯片的P0.5引脚设置为输入引脚,平时的状态为高电平,如果引脚的电平被拉低到0V了,芯片的INT引脚就会向单片机输出一个中断信号。单片机检测到有中断信号,就会让IIC通信去读取HTR3355芯片内部的寄存器,去判断到底是哪个IO引脚触发了中断信号。其他的IO引脚功能,也是类似的,这样就实现了软件方面的开发设计问题了。

备注说明


需要强调的是,HTR3355芯片扩展的IO引脚,每个IO引脚都能自由地进行配置,可以配置输入和输出,互不影响。芯片的每个IO引脚,它驱动电流的能力是要强于单片机IO引脚的,简单的一个例子是它能直接驱动LED灯,不需要借助三极管和MOS管。芯片的AD0、AD1和AD2引脚,它们是IIC通信的地址选择引脚,如果没有涉及到级联的应用,直接连到GND就可以了。
总结下来,单片机的IO引脚数量不够,如果不想换单片机的型号,可以使用扩展IO引脚数量的方法,通过HTR3355芯片,只需要用IIC通信的2个引脚,就能将单片机的IO引脚数量扩大到16个。免责声明:本文来源@芯片哥,版权归原作者所有,如涉及作品版权问题,请及时与我们联系,谢谢!

声明: 本文转载自其它媒体或授权刊载,目的在于信息传递,并不代表本站赞同其观点和对其真实性负责,如有新闻稿件和图片作品的内容、版权以及其它问题的,请联系我们及时删除。(联系我们,邮箱:evan.li@aspencore.com )
0
评论
  • 立即报名:IIC Shenzhen 2024 预见发展新机


  • 相关技术文库
  • 硬件
  • 原理图
  • 信号完整性
  • EMI
下载排行榜
更多
评测报告
更多
EE直播间
更多
广告