CH395X_学习介绍
芯片手册:https://www.wch.cn/downloads/CH395DS1_PDF.html
EVT资料包:https://www.wch.cn/downloads/CH395EVT_ZIP.html(内含原理图、参考例程等)
1.CH395F和CH395X对比
如果不需要使用IPv6,两颗芯片完全可以共用,封装引脚完全相同,功能相同
2.CH395X新功能
对比于CH395F,CH395X额外可以支持IPV6协议(ICMPv6、IPRAW6、DHCPv6等),满足对于IPv6应用环境的需求
针对IPv6,配套新增了一些命令,下图

(1)全局中断状态(0x29指令)
对比395F,新增了bit12作为DHCPv6的中断,当使能芯片的DHCPv6功能后,DHCPv6成功或者超时芯片均会上报这个中断(原手册bit12 为保留位)

(2)设置socket的工作模式(0x34指令),新增了UDP6,TCP6,IPRAW6模式,仅CH395X支持

(3)自动获取LLA本地链路地址(0x5A指令)

(4)设置LLA本地链路地址(0x5B指令)

(5)设置GUA全局单播地址(0x5C指令)

(6)设置socket目的IPv6地址(0x5D指令)

(7)获取IPv6不可达信息(0x5E指令),获取IPv6不可达IP、端口、协议

(8)获取远端/目的IPv6地址和端口

(9)启动/关闭DHCPv6(0x60指令)

(10)获取DHCPv6的状态,0为成功,1为失败(0x61指令)

(11)获取DHCPv6成功后,获取LLA、GUA地址(0x62指令)

3.应用注意,udp6服务器模式下,收到数据的包头变成了20个自己,因为IP段的长度由IPv4下的4字节变成了IPv6下的16字节

4.代码注解,以EVT中TCP6_Client为例
主要执行了0x5A(自动获取LLA本地链路地址)、0x62(读取获取到的LLA/GUA地址)、0x34(设置工作模式)、0x5D(设置IPv6目的IP),其他的和之前的流程基本一致


浙公网安备 33010602011771号