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

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

3天内不再提示

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

CHANBAEK 来源:CSDN-借过风景 作者:CSDN-借过风景 2023-01-31 14:12 次阅读

简介

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

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

poYBAGPYsMGAQ7WBAAFPYwKAarE566.png

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

pYYBAGPYsMGAdIcSAAdY52N8K64478.png

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

网口端设计

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

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

poYBAGPYsMKAPG8IAACUEFF2FP4189.png

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

串口端设计

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

poYBAGPYsMGAeigNAAB9ypu25yc016.png

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

多任务设计

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

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

pYYBAGPYsMGAYBfJAABNnXDS5Hg243.png

验证

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

pYYBAGPYsMGAQ3tdAAEi2aM7BOc097.png

该例程目前仅实现了TCP Client的收发,还有TCP Server、UDP Server/Client等需要完善,希望各位开发者能够积极提交pr,一起完善该项目。可添加微信15950380583为好友,注明:赤菟V307,邀请您进入沁恒RISC-V MCU开发者微信交流群,一起玩转RISC-V MCU。

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

    关注

    146

    文章

    16980

    浏览量

    350216
  • 网络接口
    +关注

    关注

    0

    文章

    83

    浏览量

    17197
  • 串口
    +关注

    关注

    14

    文章

    1543

    浏览量

    76162
  • 串口服务器
    +关注

    关注

    1

    文章

    160

    浏览量

    17323
  • RISC-V
    +关注

    关注

    44

    文章

    2227

    浏览量

    46004
收藏 人收藏

    评论

    相关推荐

    V307 MCU与Matlab的串口通信设计

    V307(CH32V307)是一款RISC-V内核的MCU,搭载的是沁恒自研RISC-
    的头像 发表于 01-31 14:06 2007次阅读
    <b class='flag-5'>赤</b><b class='flag-5'>菟</b><b class='flag-5'>V307</b> <b class='flag-5'>MCU</b>与Matlab的<b class='flag-5'>串口</b>通信设计

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

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

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

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

    虚拟串口服务器V1.125

    虚拟串口服务器V1.125 安装程序
    发表于 11-17 17:45 72次下载

    moxa串口服务器通讯设置参数

    本文详细介绍了串口服务器的定义,其次介绍了MOXA串口服务器的工作方式,最后详细介绍了moxa串口服务器通讯设置参数。
    发表于 02-01 15:00 1.3w次阅读

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

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

    什么是串口服务器,串口服务器的作用是什么

    什么是串口服务器串口服务器提供串口转互联网作用,可以将RS-232/485/422串口转化成TCP/IP网络接口,保持RS-232/485/422
    的头像 发表于 10-18 07:57 2.3w次阅读

    工业级485串口服务器

    工业级485串口服务器ZLAN5143BI ZLAN5143BI是一款RS485/422串口带隔离的串口服务器,可以有效的隔离RS485总线上的干扰对设备工作的影响,保证设备的稳定性。适合于
    发表于 03-20 13:30 1518次阅读

    RS485串口服务器

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

    4串口服务器

    4串口服务器ZLAN5443A是上海卓岚信息科技有限公司开发的新一代4串口服务器。可以实现4路串口数据转TCP/IP,支持两个10M/100M以太网口。ZLAN5443A支持Modbus TCP转
    发表于 05-15 15:41 1270次阅读

    串口服务器的类型及作用

    串口服务器是通过本地局域网网络,甚至在互联网上访问串口设备非常有用的工具。一个串口转以太网服务器,也可以称为串口服务器
    发表于 06-16 16:03 1519次阅读

    串口服务器的作用?

    科杰迅-RS485转以太网口 RJ45转232串口通讯服务器 串口服务器是一种用于通过网络连接两个或多个串口设备的联网设备。它使您能够摆脱物理电缆长度的限制,无论它们位于世界的任何地方
    发表于 12-02 18:05 2736次阅读

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

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

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

    串口服务器,提供串口转网络的功能,将串口转换成TCP/IP协议网络接口,实现串口和网络接口的数据双向透明传输,扩展串口设备的通讯距离。
    的头像 发表于 01-27 18:43 3445次阅读
    利用沁恒<b class='flag-5'>赤</b><b class='flag-5'>菟</b><b class='flag-5'>V307</b>实现<b class='flag-5'>八</b><b class='flag-5'>串口服务器</b>

    工业串口设备通讯神器:串口服务器CS64J

    在当今工业物联网应用中,串口服务器的应用非常普遍。无论是RS485还是RS232串口通讯,串口服务器都能够轻松实现虚拟串口串口以太网双向数
    的头像 发表于 03-21 17:09 446次阅读
    工业<b class='flag-5'>串口</b>设备通讯神器:<b class='flag-5'>串口服务器</b>CS64J