0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

利用沁恒赤菟V307实现八串口服务器

RTThread物联网操作系统 来源:RTThread物联网操作系统 作者:RTThread物联网操作 2022-01-27 18:43 次阅读

串口服务器,提供串口转网络的功能,将串口转换成TCP/IP协议网络接口,实现串口和网络接口的数据双向透明传输,扩展串口设备的通讯距离。

赤菟V307是搭载沁恒自研RISC-V内核青稞V4F的高性能互联型MCU,主频支持144MHz,支持硬件浮点运算(FPU),提供八个UART接口、USB2.0高速接口(480Mbps)并内置了PHY收发器、千兆以太网MAC并集成10M PHY、2个CAN接口等丰富的外设资源。

利用沁恒赤菟V307实现八串口服务器

基于八个UART接口、10M以太网的强大外设,通过单片赤菟V307即可实现八串口服务器,每个串口独立工作。

利用沁恒赤菟V307实现八串口服务器

源码仓库地址:https://github.com/openwch/ch32v307/tree/main/Application/8_uarts_server

下载源码工程后,可直接导入到RT-Thread Studio即可打开工程体验。

网口端设计网口端采用的是开源的轻量级TCP/IP协议栈LwIP,可以轻松实现赤菟V307网口端的TCP、UDP通信

例程中默认开启的是TCP Client模式,采用单向循环链表的方式接收TCP Server发过来的数据。

利用沁恒赤菟V307实现八串口服务器

当串口端接收到数据时,直接启动TCP Client的发送函数,并更新队列的读指针。

串口端设计

串口端为了加快数据的收发,采用DMA循环队列的方式接收数据,通过查询接收DMA 传输数据数目寄存器CNTR,与上一次该值进行比较,有变化则说明串口接收到数据,此时便更新队列写指针,并计算队列中数据长度。

利用沁恒赤菟V307实现八串口服务器

根据网口接收端的链表中的数据地址及长度,启动串口端的发送DMA进行数据发送。

多任务设计

通过RT-Thread操作系统,创建两个线程,分别为用于网口端接收数据的“eth_rev”线程和用于串口端接收数据的“uart_rev”线程。

采用时间片轮转方式进行这两个线程的调度,当“eth_rev”线程收到网口端的数据时,启动串口端的发送DMA将数据通过串口发送出去;当“uart_rev”线程收到串口端的数据时,启动网口端的发送函数将数据通过网口发送出去,这样就实现了串口和网络接口的数据双向透明传输。

利用沁恒赤菟V307实现八串口服务器

验证

串口默认波特率为115200,实测八个串口独立工作,可以实现收发10+KB/s的速度。

利用沁恒赤菟V307实现八串口服务器

该例程目前仅实现了TCP Client的收发,还有TCP Server、UDP Server/Client等需要完善,希望各位开发者能够积极提交pr,一起完善该项目。

可添加微信15950380583为好友,注明:赤菟V307,邀请您进入沁恒RISC-V MCU开发者微信交流群,一起玩转RISC-V MCU。

赤菟V307评估板购买链接:https://item.szlcsc.com/3329177.html

原文标题:尝鲜赤菟CH32V307-基于RT-Thread和LwIP实现八串口服务器

文章出处:【微信公众号:RTThread物联网操作系统】欢迎添加关注!文章转载请注明出处。

审核编辑:汤梓红

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 服务器
    +关注

    关注

    12

    文章

    8088

    浏览量

    82433
  • 设备
    +关注

    关注

    2

    文章

    4169

    浏览量

    69156
  • 串口
    +关注

    关注

    14

    文章

    1483

    浏览量

    74481

原文标题:尝鲜赤菟CH32V307-基于RT-Thread和LwIP实现八串口服务器

文章出处:【微信号:RTThread,微信公众号:RTThread物联网操作系统】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    【教程】NA111串口服务器可配置型网关使用教程#串口服务器

    串口服务器
    电子学习
    发布于 :2023年02月08日 09:53:50

    【教程】NA111串口服务器存储型网关模式使用教程#串口服务器

    串口服务器
    电子学习
    发布于 :2023年02月08日 10:21:04

    【教程】NA111串口服务器网页配置教程#串口服务器

    串口服务器
    电子学习
    发布于 :2023年02月08日 10:31:24

    工控必备的串口服务器

    串口服务器
    亿佰特物联网应用专家
    发布于 :2023年03月08日 17:31:12

    串口服务器如何使用OneNET平台MQTT服务器通讯教程 #MQTT #串口服务器 #OneNET平台

    串口服务器
    亿佰特物联网应用专家
    发布于 :2023年10月26日 15:47:36

    串口服务器应用接线较长

    串口服务器应用接线较长1、虚拟串口模式2、点对点模式3、点对多点模式http://www.cnsmart.net4、多台主机模式
    发表于 01-06 08:47

    RS485串口服务器

    本帖最后由 maggie602451 于 2022-8-10 16:08 编辑 `RS485串口服务器ZLAN5143I的一款专门为抗雷击、抗电磁干扰、抵抗恶劣环境要求而设计的一款高可靠性
    发表于 03-24 11:27

    为什么要设计一款RS485串口服务器ZLAN5143I?

    RS485串口服务器ZLAN5143I的一款专门为抗雷击、抗电磁干扰、抵抗恶劣环境要求而设计的一款高可靠性、高性能串口服务器/Modbus网关产品,是串口服务器的旗舰级产品。可以应用于隧道监控、风力
    发表于 07-12 06:58

    微 CH32V307 评估板开发视频集锦

    ch32v307赤兔,将gpio和中断合二为一效果5、307接手里现有LCD,测试出图6
    发表于 03-10 16:40

    串口服务器调试方法_口服务器怎么设置

    MOXA串口服务器有多种型号,其中最常用的要数5130、5232等基本型号。其功能强大性能稳定深的用户喜爱。在此我们就5130这个型号看一看MOXA串口服务器的基本调试方法串口服务器如何调试是很多用户入手新产品时必须要考虑的问题
    发表于 02-01 17:25 2.7w次阅读
    <b class='flag-5'>串口服务器</b>调试方法_<b class='flag-5'>口服务器</b>怎么设置

    串口服务器是什么 有哪些分类及特点

    串口服务器相对单串口服务器来说,具备多个串行口,其要求主CPU的性能及功能的要求更多,这也是很多厂商只有单串口服务器,而没有多串口服务器的原因。接下来我们就来为大家详细介绍下什么是多
    的头像 发表于 02-12 15:45 2189次阅读

    基于沁恒CH32V307的8串口服务器设计方案

    RT-Thread开发者大会RISC-V分论坛设立了动手实验:基于沁恒CH32V307的8串口服务器
    的头像 发表于 01-04 16:23 4531次阅读

    串口服务器连接MQTT服务器方法说明

    串口服务器连接MQTT服务器方法参考“串口服务器用户手册”,不再重复说明。
    发表于 03-30 09:58 3973次阅读
    <b class='flag-5'>串口服务器</b>连接MQTT<b class='flag-5'>服务器</b>方法说明

    基于赤菟V307 MCU的八串口服务器设计

    串口服务器,提供串口转网络的功能,将串口转换成TCP/IP协议网络接口,实现串口和网络接口的数据双向透明传输,扩展
    的头像 发表于 01-31 14:12 1145次阅读
    基于赤菟<b class='flag-5'>V307</b> MCU的八<b class='flag-5'>串口服务器</b>设计

    【推荐】口碑好物!8路串口服务器

    本周推荐NB183——工业级8路串口服务器,亿佰特自主研发的串口服务器系列产品,内部集成了TCP/IP协议栈,可实现串口到以太网口数据的双向透明传输、Modbus协议转换、
    的头像 发表于 02-02 10:29 606次阅读
    【推荐】口碑好物!8路<b class='flag-5'>串口服务器</b>