首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

FlexLua低代码单片机实现WK2124 扩展 4 个 UART 串口

WK2124 扩展 4 个 UART 串口

本文基于 FlexLua 低代码单片机技术,无需复杂单片机C语言开发。即使新手也可很容易用FlexLua零门槛开发各种功能丰富稳定可靠的 IoT 硬件,更多学习教程可参考 FlexLua 官网。

一、WK2124介绍

WK2124是SPI接口的4通道UART扩展器件,可以通过SPI总线扩展出4个串口(UART)。 并且每个串口的波特率可以单独设置。所以基于WK2124模块,我们就可以很容易扩展出最多4个串口,来满足一些应用场景的特殊需求,比如需要接多个RS232接口,多个RS485接口,或者多个TTL串口传感器模块的情况。

二、接线图

三、材料清单

WK2124串口扩展模块(SB-P13)

四、完整实例代码

本实例用WK2124模块扩展出4个UART串口,每个UART口只要接收到数据,就回复“I got uartn data”给对方。

--配置Core的USB口为虚拟串口,这样就可以在电脑串口调试中断上收到Print打印的信息了

LIB_UsbConfig("CDC")

--配置WK2124模块开始工作,4个UART扩展口都开启,并且模块占用SPI(CS,MISO,MOSI,CLK)以及D5引脚

--UART1和UART2的波特率为115200,UART3和UART4的波特率为9600

LIB_WK2124Config("B115200","B115200","B9600","B9600","D5")

while(GC(1) == true)

do

--查询Uart1是否收到数据,如果收到就print输出收到的数据

u1_flag,u1_tab = LIB_WK2124UartRecvQuery("UART1")

if u1_flag == 1 then

print("Uart1 Recv:")

--将从uart1串口收到的数据逐个打印出来

for i, v in ipairs(u1_tab) do

print(i, v)

end

--并返回已收到数据的应答信息

LIB_WK2124UartSend("UART1", LIB_StrToTab("I got uart1 data!\r\n"))

end

--查询Uart2是否收到数据,如果收到就print输出收到的数据

u2_flag,u2_tab = LIB_WK2124UartRecvQuery("UART2")

if u2_flag == 1 then

print("Uart2 Recv:")

--将从uart2串口收到的数据逐个打印出来

for i, v in ipairs(u2_tab) do

print(i, v)

end

--并返回已收到数据的应答信息

LIB_WK2124UartSend("UART2", LIB_StrToTab("I got uart2 data!\r\n"))

end

--查询Uart3是否收到数据,如果收到就print输出收到的数据

u3_flag,u3_tab = LIB_WK2124UartRecvQuery("UART3")

if u3_flag == 1 then

print("Uart3 Recv:")

--将从uar3串口收到的数据逐个打印出来

for i, v in ipairs(u3_tab) do

print(i, v)

end

--并返回已收到数据的应答信息

LIB_WK2124UartSend("UART3", LIB_StrToTab("I got uart3 data!\r\n"))

end

--查询Uart4是否收到数据,如果收到就print输出收到的数据

u4_flag,u4_tab = LIB_WK2124UartRecvQuery("UART4")

if u4_flag == 1 then

print("Uart4 Recv:")

--将从uart4串口收到的数据逐个打印出来

for i, v in ipairs(u4_tab) do

print(i, v)

end

--并返回已收到数据的应答信息

LIB_WK2124UartSend("UART4", LIB_StrToTab("I got uart4 data!\r\n"))

end

end

如果感兴趣,上面代码中出现的LIB开头的库函数可以在 API文档 中通过Ctrl+F查询。

五、代码实验效果

在电脑端同时打开四个串口调试助手软件,这个四个软件通过《USB转TTL模块》和WK2124的4个UART串口连接,连接完成以后即可在电脑上模拟和WK2124的4个UART串口进行数据的收发通信。

实物连接图如下:

电脑端4个串口调试助手软件的截图如下:

我们可以看到每当向WK2124的某个UART串口发送01 02 03 04 05 06数据时,都能收到"I got uartn data"的消息。

同时在Core开发板所连接的调试助手上,我们可以看到每个UART收到的具体数据:

  • 发表于:
  • 原文链接https://page.om.qq.com/page/O03p8IIojF5ABH03hrODOI0g0
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券