CH395常见问题汇总及解答(持续更新)

ch395串口命令怎么测试


您好,可以使用我司配套的CH395串口调试工具测试。

https://www.wch.cn/downloads/CH395EVT_ZIP.html  


你好,我们项目使用gd32f407 + ch395q, spi 模式下4分频,在tcp client模式下将ch395的内部缓存平均分配给了socket0 的收发缓存,也就是收发缓存均为12k。现通过程序发送tcp报文,50ms 一帧,平均每帧100字节,大约1000帧以后出现接收的数据均为ff 并且ch395 芯片卡死的现象,麻烦帮忙排查一下谢谢


使用CH395L芯片,芯片版本0x47,并口访问。socket0用作UDP服务器,目前发现清空socket缓冲区命令(0x2E)没有效果,其他命令都正常。所以不怀疑时序问题。
测试方法:当收到数据后,从接收缓存区把数据读取到RAM,然后使用0x2E命令清接收缓存,仅接着读取接收数据长度(0x3B 命令),这时读取到的数据长度还是之前的长度。为什么和手册上讲的不一样,手册上说会清0。在官网例程中没有发现使用过0x2E命令。 技术支持帮忙看一下,非常感谢!

void ch395_sock_clear_recv_buf(uint8_t index)
{
    ch395_write_cmd(CMD10_CLEAR_RECV_BUF_SN);//0x2E
    ch395_write_data(index);
}

ch395_get_recvdata(i,len,recv_buffer);//接收数据
ch395_sock_clear_recv_buf(i);/*清空socket的接收缓存*/
len = ch395_get_recv_len(i);//情况命令执行后 读取到的长度还是未清除之前的长度
printf("R_len = %d\n",len);



CH395 的socket中断(0x30命令)状态什么时候会清零,我发现有的时候读取1次就清零,有的时候读取3次清零。


1668767253375.jpg


您好,使用CH395L的并口功能,需要注意并口时序的操作。



请教个问题,CH395在接收多播数据包时,比如使用了socket0,设置源端口为50000,那只能收到对端发的目的端口是50000的组播包,其他端口号收不到,有什么解决办法吗?我的需求同时收10个左右不同端口号的组播包


请问,有没有基于CH395的TCP TLS的例程?


您好,暂时没有该例程


您好,ch395Q现在能正常运行  但是目前突然出现连接就自动断开 第二次连接能正常通讯。

现象如下image.png


您好,根据您的打印信息会提示PHY连接断开,首先建议您确认下网线连接,如果中间接入有交换机或者路由器设备,可以尝试将CH395Q的1脚电阻更换为15k尝试下。


你好,我使用的是CH392F芯片,先打样做的几块样品,调试后一切都正常。第二批打样5块样品,有关CH392F的硬件没有更改。同样的测试程序,第二批打样的采用UDP server模式可以正常通讯;而采用TCP server模式时,PC端总是报无法连接错误;但是第一批的样品就正常;而且ping命令也是正常的,这是什么原因?


您好,CH392F用作TCP server模式下,默认是多连接模式,需要注意手册中对socket的配置要求,同时确保打开scoket成功,开启socket监听也成功。PC端无法连接时,尝试将换一下两端端口。如若问题仍未解决,可将代码发至wtf@wch.cn或者电话咨询025-52638370


谢谢您的回复,问题已解决。是我直接参考贵公司提供的例程初始化的,所以没有仔细核对手册上的初始化步骤来初始化。因为例程上只初始化了scoket0,并打开为监听模式,并没有初始化其余的scoket,但是凑巧的是我前面打样的三款样板,按照例程的代码初始化却能正常工作,这点很奇怪。



您好我想问一下CH395Q发热 手指放上去能感觉到烫的地步。如果改为低功耗模式 和正常传输模式有什么不同嘛


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