用FPGA来实现可定制的多UART口扩展是一种不错的解决方案。其中,在Zynq上通过AXI总线扩展多个UART难度不高,但限制了主控单元的使用,且成本较高。我趁着这个国庆长假在低成本的国产FPGA/CPLD上实现了一种基于FSMC接口(GD32上称为EXMC接口)的多串口控制器,适用于所有兼容ISA总线接口的嵌入式MCU/MPU系统。可以根据应用场景任意裁剪UART的个数、FIFO缓冲的深度。
用FPGA来实现可定制的多UART口扩展是一种不错的解决方案。其中,在Zynq上通过AXI总线扩展多个UART难度不高,但限制了主控单元的使用,且成本较高。我趁着这个国庆长假在低成本的国产FPGA/CPLD上实现了一种基于FSMC接口(GD32上称为EXMC接口)的多串口控制器,适用于所有兼容ISA总线接口的嵌入式MCU/MPU系统。可以根据应用场景任意裁剪UART的个数、FIFO缓冲的深度。