你好, 2个问题请教下,
1.我目前把 CH563Q exam 的 usb device 和 udp client整合一个程序, 由芯片usb接口插入host之后程序启动,
先把usb初始化,然后进入无穷回圈, usb 中断处理 host命令, 当接收命令去启动 udp client之后, usb 就在也不会发生没有中断了;
如果不启动 udp client,则usb数据包收发都正常. 这需要什么特殊处理吗?
例程大致如下(和 exam例子差不多):
IRQ_Handler -> USBDev_IRQHandler
-> CH563NET_ETHIsr
-> CH563NET_TimeIsr
main -> USBDev_ModeSet/Init/UsbInt_Enable ->
while(1) {
if(net_enable) {
if(!init) {
CH563NET_LibInit
CH563NET_CreatSocket
} else {
CH563NET_MainTask
CH563NET_HandleGlobalInt
}
}
2.CH563NET_GetPHYStatus 是否只在调用 CH563NET_SocketCreat 之后获取的状态才是有效的, 还是只能在发生改变时,
中断获取?
3.udp client网络初始化时默认是有 enable ping功能的,这是不是当 CH563NET_SocketCreat 都完成之后
(这里都有指定ip等,返回都正确),
连上网线, 在别的 pc 或平台直接 pin ch563 ip就可以, 不需要在代码加上 PROTO_TYPE_IP_RAW 的处理?