这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 嵌入式开发 » 软件与操作系统 » 野火启明6M5适配 v2版串口框架

共3条 1/1 1 跳转至

野火启明6M5适配 v2版串口框架

助工
2024-12-08 22:25:29     打赏

硬件资源分布

瑞萨定义引脚功能野火定义端子可以验证串口功能的口
P401TXD7CAN总线J5Can总线本质上是串口
P402RXD7
P706RXD3_B引出IO口J29-44
P707TXD3_BSY6288AAAC 输出开漏监测U3-3
P213TXD1外接晶振

P212RXD1

P709TXD1野火选用176封装不带此脚

P708RXD1电容式触摸按键TPAD1
P411TXD0SD卡数据线J30-7TF卡座式转接卡或飞线
P410RXD0J30-8
P409RXD3PMOD接口J26-2可以跳线验证
P408RXD3J26-3
P207TXD4外接10nF对地电容TSCAP

P205TXD4SD卡数据线J30-2TF卡座式转接卡或飞线
P206RXD4J30-1
P203TXD9PMOD接口J25-2可以跳线验证
P202RXD9J25-3
P900TXD4_C引出IO口J29-53可以跳线验证
P315RXD4_C引出IO口J29-56
P310TXD3QSPIU6-7
P309RXD3U6-3
P305TXD6U6-6
P304RXD6引出IO口J29-46
P302TXD2PMOD接口J25-10可以跳线验证
P301RXD2J25-1
P110TXD9JTAGJ3-5
P109RXD9J3-13
P112TXD2JTAG_UARTJ3-17通过调试线验证
P113RXD2J3-19
P613TXD7485接口U10-4485本质上是带流控的串口
P614RXD7U10-1
PA00TXD8_C232接口U11-10232与485一样,电平区别
P607RXD8_CU11-9
P602TXD9WIFI模组串口J34-1可以跳线验证
P601RXD9J34-2
P105TXD8PMOD接口J26-9可以跳线验证
P104RXD8J26-7
P101TXD0WIFI模组SPIU18-22
P100RXD0U18-18
P501TXD5485接口U9-4485本质上是带流控的串口
P502RXD5U9-1
P506TXD6野火模组扩展口J12-4可以跳线验证
P505RXD6J12-3
P805TXD5_B引出IO口J29-42可以跳线验证
P513RXD5_BJ29-41
P512TXD4Debug串口J35-3可以通过把调试串口放置在此口验证
P511RXD4J35-1

      通过对资源的梳理,可以发现,不改硬件的情况下,启明6M5上有不少串口可以通过不同方式进行串口验证,其中,可以通过can总线接口验证的有UART7(P401、P402),可以通过TF卡扩展板引出来的有UART0(P411、P410)和UART4(P205、P206),可以用485接口测试的有UART5(P501、P502)和UART7(P613,P614),可以通过232接口验证的有UART8(PA00、P607),可以直接验证的口有UART4(P512、P511)和JTAG调试串口UART2(P112和P113),而最多的是仅仅需要简单跳线就可以验证的口,这些口是UART2(P301、P302),UART3(P408、P409),UART4(P900,P315),UART5(P805、P513),UART6(P505、P506),UART8(P105、P104),UART9(P203、P202),UART9(P601、P602)。

      由于手头上并无485和232接口板,而且工作这么多年,也没用过can总线,完全不知道can总线数据结构,而直接引出的串口已默认配好,JTAG串口在我之前适配RRH62000驱动时也适配过,因此剩下的就只有需要跳线验证的那几组串口了。因此本次适配串口就以需要跳线的串口来适配。

      另外,如果只看串口,其实有更好的方法,由于J35是两个跳冒接出的排针,因此可以将此跳冒拿开,把待测试串口接到此排针上,之后再把软件的MSH配置到待测试的串口上,若能够收到rtt系统消息,且能发送msh命令查看内容,便代表串口配置成功。

软件修改

开启需要测试的串口

添加uart的Stack

      除了UART4(默认的调试串口就是UART4,更换其他UART4功能的口,本质上就是把现有口的UART功能挪到新口上使用),其他UART都需要添加Stack,添加方法都一样。

2.jpg

将新生成的Stack改为所需功能

      下面例子是改成uart2的,改成其他的也是一样的操作。

2.jpg

注册串口回调

      由于drv_usart_v2.c里面写的中断回调函数是 user_uartX_callback,因此生成配置里面对应中断的回调也得按照此规则编写,否则会出现编译报错或者编译能通过,但无法响应中断的问题。

2.jpg

选择对应串口

2.jpg

    这些操作做完之后,点击Generate Project Content便可生成带UART2的新工程

将MSH对应串口改为新开的串口

开启uart2

2.jpg

      在此界面,会发现目前仅仅配置了UART2和UART4,其他UART则需要更改KConfig文件,以添加UART0配置为例,修改方法如下:

2.jpg

将MSH所对应的串口改为uart2

2.jpg

生成新工程

      在emu界面中输入 scons --target=mdk5并回车,此时会生成新配置的工程。

硬件跳线

    硬件按照下表接线


Debug Uart金针座PMOD1
RXDJ35-4J25-10
TXDJ35-2J25-1

验证结果

    编译代码后将代码下载至开发板中,运行结果如下:

\ | /
- RT -     Thread Operating System
 / | \     5.2.0 build Dec  8 2024 22:00:19
 2006 - 2024 Copyright by RT-Thread team

Hello RT-Thread!
msh >
msh >
msh >lis
list
msh >list de
device

msh >list device
device           type         ref count
-------- -------------------- ----------
uart4    Character Device     0
uart2    Character Device     2
pin      Pin Device           0
msh >

总结

    至此,我们以UART2(P301、P302)为例,适配了UART V2版驱动,如果需要适配其他串口,也可以参考此方法进行适配。






关键词: 瑞萨     适配     串口     驱动     v2    

专家
2024-12-09 00:01:32     打赏
2楼

感谢分享


专家
2024-12-09 00:01:48     打赏
3楼

感谢楼主分享


共3条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]