有可能卡在初始化了哦, W800 上有些功能 W806 是没有呢
有可能卡在初始化了哦, W800 上有些功能 W806 是没有呢
Server 警告
WARNING: Address 0x08011c28 can't be written when insert soft-bkpt.
这个只是告诉你不能下软断点, 因为断点分为两种一种是硬断点, 一种是软断点, 软断点一般针对程序所有部分均在 RAM 中, 但是 W800 系列的固件太大 RAM 不能够存储的下, 因此会将程序的部分放在 FLASH 中, 故此时不能下载软断点, 你应该改成硬断点就不会出现这个警告情况了.
另外关于去除 TRST 使能可以仿真的话, 我猜测有可能 W806 复位重启之后所需电流比较大, 导致 Cklink 不能正常工作
改一下 task_start 函数地方
设置固定 IP 的话, 把 DHCP 关闭, 之后手动写上将要设置的 IP 地址即可, 以官方 demo 为例 在函数 demo_connect_net 中 , 修改如下
ip_param = tls_mem_alloc (sizeof (struct tls_param_ip) ) ;
if (ip_param)
{
ip4_addr_t loop_ipaddr, loop_netmask, loop_gw;
tls_param_get (TLS_PARAM_ID_IP, ip_param, FALSE) ;
ip_param-" dhcp_enable = FALSE;
IP4_ADDR (&loop_gw, 192, 168, 0, 1) ;
IP4_ADDR (&loop_ipaddr, 192, 168, 0, 116) ;
IP4_ADDR (&loop_netmask, 255, 255, 255, 0) ;
memcpy (ip_param-" ip , &loop_ipaddr , sizeof (loop_ipaddr) ) ;
memcpy (ip_param-" netmask , &loop_netmask , sizeof (loop_netmask) ) ;
memcpy (ip_param-" gateway , &loop_gw , sizeof (loop_gw) ) ;
tls_param_set (TLS_PARAM_ID_IP, ip_param, FALSE) ;
tls_mem_free (ip_param) ;
}
这样的话 再次连接路由的话 就是你设定的 IP 地址了
这个 recv 里面封装的就是 lwip_recv 不会自动关闭 socket 的
请看 E804 的用户手册
不加 user_gpio. h 能编译过么
你把错误信息截图发出来, 我帮你看下另外确认你的工程没有问题
我从你这看出 你的第二个参数传错了, 第二个参数是传入的应该是个指针
你可以研究下 tools/w800 目录下的 wm_tool. c 文件, 这个就是 fls 文件生成的流程
工程文件在 WM_SDK_W806toolsW806projectsSDK_ProjectprojectCDK_WS
能描述的详细些么
你这个问题感觉问的不明白啊, 你自己写代码的时候, printf 前后用 自己定义的宏控制一下不就好了, 例如这样
#ifdef DEBUG_PRINT
printf ("demo test \r\n") ;
#endif
或者找到 libc_port. c 找到里面的 fputc 函数, 把里面的发送字符函数屏蔽了这都是可以的
int fputc (int ch, FILE *stream)
{
(void) stream;
#if USE_UART0_PRINT
sendchar (ch) ;
#else
sendchar1 (ch) ;
#endif
return 0;
}
自己可以创建 CDS 工程啊
问 wm_sdk_800 模板程序编译下载到 W806 开发板报错