ch395q 初始化Socket为MACRAW 模式

你好我现在在使用ch395q的芯片

由于是第一次使用有很多不太理解的,和模糊的地方麻烦工程师帮我解答一下:

1、发送命令我见手册里面的发送命令都是“CMD_SET_PROTO_TYPE_SN”设置xxx模式但是我在具体代码操作发送指令过程中也是发送“CMD_SET_PROTO_TYPE_SN”字符后再次发送对应的代码“0x03h02h\01h\00h"等?还是说在发送cmd命令的时候是发送对应的代码后再次发送相应模式的代码?

2、我现在的设计场景是这样的:

    a、我通过SPI总线配置ch395q为MACRAW 模式后需要通过芯片将以太网收到的数据透传给串口

    b、串口收到的数据透传给以太网

如上面的描述我的问题是:

    a、应该怎么去配置ch395芯片,因为我见手册里面是支持这个功能的但是我理解的不是很到位。

    b、我串口给ch395q发送的数据是需要我自己进行以太网组包还是说我只需要将引用数据上传到芯片就可以了

            发送1:前导码+源mac+目的mac+类型+数据+校验码

            发送2:数据

    c、我接收到的数据是以太网帧格式还是是上层的引用数据。如:

            接收1:前导码+源mac+目的mac+类型+数据+校验码

            接收2:数据

您好,对于您的问题:

1.设置socket0为macraw模式时,是要先写命令码,再输入socket号和协议类型,具体步骤可以参考CH395手册的5.27和8.3.2章节。

2.macraw模式下,发出的数据是需要按照帧格式进行组包,接收到的数据也是以太网帧格式的数据。

附上测试程序供您参考,后续有其他问题可以邮箱交流。(lq@wch.cn)

icon_rar.gifSocket0-MAC RAW.zip



好的感谢!!

1、也就是说我进行数据透传只能是mac层的数据透传对吧

2、数据转发芯片通过以太网收到的数据是直接通过串口转发出来了吗?我配置是用的是SPI配置的芯片,我的数据包上传也是通过串口上传数据然后spi配置对应指令吗?(mcu接触比较少)


您好,

1.macraw模式下,数据透传是mac层的透传。

2.CH395Q支持两种模式和单片机通信---spi和串口。

您使用spi配置芯片,那么395和MCU之间是通过spi进行通信的。所以395收到的以太网数据是先通过spi传给MCU,MCU这边再通过代码实现串口打印数据等操作;数据包上传也是需要您先通过串口传给MCU,MCU再通过spi传给395。



我们芯片支持的透传只有macraw一种透传模式吗,到后面的IP层 UDP层 TCP层的透传有吗如果有,能给我相关的案例吗,还有就是咱们有UART和ch395q通信的案例吗 我这里只有SPI的案例。


您好,有提供TCP、UDP、IP RAW、MAC RAW等操作例程,也提供WEB、DNS等上层应用例程。其中包含了spi、串口、并口(仅395L支持并口)三种通信方式。可以留个邮箱发您。后续有其他问题可以通过邮箱交流(lq@wch.cn)


好的谢谢!麻烦您将上面的案例给我发一份。

我的邮箱是:个人信息保护,已隐藏

然后我现在还有问题就是,我在我们的案例里面看见了一个API:

原型是:xEndCH395Cmd();

这个API 是我就数据发送结束后给ch395q发送一个中断还是说,是ch395q数据处理完成后给我发送的一个中断,我的mcu和ch395q之间的中断是外挂了一个外设中断,我应该怎么来实现这个API呢?


您好,相关例程已发送至您邮箱,请注意查收。

xEndCH395Cmd() 是在选用spi通信时,将cs脚拉高。作用有:1.在命令传输前,防止cs原来为低,先将cs置高,再通过xCH395CmdStart()将cs拉低,开始传输数据;2.命令传输后,调用xEndCH395Cmd()将cs拉高。实现这个功能只需要给cs脚拉高拉低即可。

后续有其他问题可以邮箱交流(lq@wch.cn)


只有登录才能回复,可以选择微信账号登录