完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
在之前的功耗测试当中。测得模块功耗还是70mA左右。这么大的功耗是不适合小电池供电的。那怎么应用于锁具呢? 在看到lwip_socket之后我觉得应该改变我的想法。不用将模块作为钥匙。而是将锁连入家庭网络中。然后通过TCP/IP协议发送接收数据。来达到控制锁的目的。 不多说了。看程序main里面的初始化。添加一个TCP_Server的任务。 任务函数如下。基本是按照例程修改。去除无限循环接收数据。 void TCP_Server_Task(void *args) { int s; int c; int ret; int rlen; struct sockaddr_in addr; char srv_buf[128] = {0}; lwip_net_ready(); LOG_I(lwip_socket_example, "tcp_server_test starts"); os_memset(&addr, 0, sizeof(addr)); addr.sin_len = sizeof(addr); addr.sin_family = AF_INET; addr.sin_port = lwip_htons(SOCK_TCP_SRV_PORT); addr.sin_addr.s_addr = lwip_htonl(IPADDR_ANY); /* Create the socket */ s = lwip_socket(AF_INET, SOCK_STREAM, 0); if (s < 0) { LOG_I(lwip_socket_example, "TCP server create failed"); goto done; } ret = lwip_bind(s, (struct sockaddr *)&addr, sizeof(addr)); if (ret < 0) { LOG_I(lwip_socket_example, "TCP server bind failed"); goto clean; } ret = lwip_listen(s, 0); if (ret < 0) { LOG_I(lwip_socket_example, "TCP server listen failed"); goto clean; } while(1) { socklen_t sockaddr_len = sizeof(addr); c = lwip_accept(s, (struct sockaddr *)&addr, &sockaddr_len); if (c < 0) { LOG_I(lwip_socket_example,"TCP server accept error"); break; //connection request. } LOG_I(lwip_socket_example, "TCP server waiting for data..."); while ((rlen = lwip_read(c, srv_buf, sizeof(srv_buf) - 1)) != 0) { if(rlen < 0) { LOG_I(lwip_socket_example,"read error"); break; }else { srv_buf[rlen]= 0; //for the next statement - printf string. LOG_I(lwip_socket_example,"TCP server received data:%s", srv_buf); lwip_write(c,srv_buf, rlen); // sonar server } } } clean: lwip_close(s); LOG_I(lwip_socket_example, "TCP server s close:ret = %d",ret); while(1) { vTaskDelay(1000 / portTICK_RATE_MS); // release CPU } done: LOG_I(lwip_socket_example, "TCP servertest completed"); while(1) { vTaskDelay(1000 / portTICK_RATE_MS); // release CPU } } 打开串口,复位。串口显示WIFI连接成功及IP打印(记得端口改为8888) |
|
相关推荐
5 个讨论
|
|
只有小组成员才能发言,加入小组>>
954 浏览 0 评论
【KV260视觉入门套件试用体验】四、KV260 视觉入门套件和固件更新
1553 浏览 0 评论
【KV260视觉入门套件试用体验】Vitis AI Library体验之OCR识别
1163 浏览 0 评论
【KV260视觉入门套件试用体验】Vitis AI 通过迁移学习训练自定义模型
1568 浏览 0 评论
【KV260视觉入门套件试用体验】KV260系列之Petalinux镜像+Resnet 50探索
1195 浏览 0 评论
【AMD KV260视觉入门开发套件试用】4、简单几步体验ubuntu 20.04.3 LTS运行人员检测应用
1642浏览 1评论
1094浏览 1评论
【KV260视觉入门套件试用体验】老刘记事儿KV260初体验之Micro-SD选型提速研究(三)
869浏览 1评论
【KV260视觉入门套件试用体验】KV260部署yolov3实现车辆和行人检测
2530浏览 1评论
【KV260视觉入门套件试用体验】基于KV260的人脸识别的实现与展示
874浏览 1评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-13 00:59 , Processed in 0.894545 second(s), Total 80, Slave 63 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号