感觉挺乱的, 串口接收回调里调用 sem release 后, 任务里就可以获取到 sem 了, 但是 sem acquire 获取成功后返回值是 0, 你这个 if (os_status) 只有在超时才会执行, 超时了又去读了, 那这个 sem 的意义是什么.
感觉挺乱的, 串口接收回调里调用 sem release 后, 任务里就可以获取到 sem 了, 但是 sem acquire 获取成功后返回值是 0, 你这个 if (os_status) 只有在超时才会执行, 超时了又去读了, 那这个 sem 的意义是什么.
demo 目录下有定时器的 demo, 可以看下.
目前 SDK 里没有这样的定义, 可以根据需要自定义一个.
重新打开就好了, 我这里也偶尔会遇到卡死的情况.
测试工具可以用官网的 NC_AUTH 工具, 技术文档里有使用说明. 固件用的就是标准固件. 

1, 如果使用 AT 指令, SDK 不需要做任何改动直接编译出来的固件就可以使用.
2, 做为 tcp server 时, 可以有最多 4 个 tcp client 连接上来, 每一个新连上来的 client 都会分到一个新的 socket id. 收发数据的指令都需要带对应的 socket id 的. 文档可以参考 AT 指令用户手册, 官网可以下载.
建议用串口工具下载固件.
是不是进入了自动工作透传模式下. 我看那个对勾是勾上的.
具体编译报错信息是什么?
这个属于历史遗留问题, 在新版 SDK 里会改正.
通信不上, 具体是什么问题, 详细描述下, 具体到问题点.
mcu 没办法获得真实时间的值, 可以使用 HAL_GetTick 来返回当前的 ms 值, 根据需要来使用.
uart demo 里有注释, HAL_UART_Receive_IT 接口的最后一个参数, 设置了多少, 就是接收够多少个字节会进回调函数, 如果设置的 0, 就是不定长. 另外不管什么接口, 都有自己的应用层数据包协议格式, 可以通过判断包是否完整再解析, 不完整就等下一次来数据再解析, 这是正常的.
只是 pin 脚封装不一样, 其他都一样, 另外就是 W802 的 flash 不在芯片内, 是需要外接的.
CKLINK 我们自己也不用, 这个工具不是我们做的, 是平头哥的 CDK 自带的, 如果有问题需要到平头哥的工单系统去提问, 这块儿我们支持不了.
问 使用 w801 与 4G 通信, 通过串口 1 给 4G 芯片发送 AT 指令, 接收到的数据是^boot rom 并且死机.