【电子DIY作品】我的小夜灯中控-小安派S1

[复制链接]
查看570 | 回复5 | 2023-12-20 17:44:13 | 显示全部楼层 |阅读模式
本帖最后由 timo 于 2024-6-24 17:43 编辑

当初我在分享开发故事中,分享了我用esp32做的一个小夜灯,如图


原本,这次DIV作品是直接把代码迁移过来,直接在小安派也做这个灯,可惜,小安派的IO口要不不好接线,要不不能用,迁移失败
之前发帖搭建环境成功送板子,没好意思嫖,现在蓝瘦香菇了

眼看日期临近,就做了个中控端,负责给这个小夜灯发命令
之前是可以用小程序控制,这个再加个小安派控制

控制界面如图:
004.jpg

分别是开,关,AI,安,还有一个笑脸和哭脸
按下以后,对应文字会成为一个点,用来显示当前按下哪一个按钮
当按下按钮后,会给小夜灯发送UDP数据指令,实现对应功能
接下来是各个功能对应的照片


颜色可调,我是对应了安信可的主题色调,都设置成蓝色了
这是小程序控制图片,也补上来


接下来给大家介绍下项目
项目整体才用天气站的项目框架,当然还有论坛各位大佬的示例
不然对于我这个LVGL菜鸟来说,写这个项目真就蜀道难了
整体代码结构如图
15.jpg

别看代码文件多,真正我使用的代码不多,
我实际修改的就两处 demos里面的文件夹,还有wifi_event里面的wifi账号密码
外部的这些都不用管
demos就是lvgl的页面以及控制部分


这里使用NXP的 gui guider生成好页面数据
把项目文件夹里面的这两文件夹复制进/240X320_ui目录下
21.jpg


最后 修改图片引用,改成我图片这样就可以了
22.jpg

这样,直接复制我这个工程,你也就可以做LVGL了

最后说下我代码实现UDP发送代码
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <string.h>
  4. #include <sys/socket.h>
  5. #include <arpa/inet.h>
  6. #include <unistd.h>
  7. #include <lwip/api.h>
  8. #include <lwip/arch.h>
  9. #include <lwip/opt.h>
  10. #include <lwip/inet.h>
  11. #include <lwip/errno.h>
  12. #include <netdb.h>
  13. #include "log.h"
  14. #include "utils_getopt.h"
  15. #include "bflb_mtimer.h"

  16. char *ip = "";
  17. int port = 7788;

  18. int UDPsocket(unsigned char data[], int size) {

  19.     unsigned char message[size];
  20.     for (int i = 0; i < size; i++) {  
  21.         message[i] = data[i];
  22.     }  

  23.     int clientSock = socket(AF_INET, SOCK_DGRAM, 0);
  24.     if (clientSock < 0)
  25.     {
  26.         LOG_I("udp create socket error\r\n");
  27.         return;
  28.     }
  29.     struct sockaddr_in serverAddr;
  30.     serverAddr.sin_family = AF_INET;
  31.     serverAddr.sin_port = htons(port);
  32.     serverAddr.sin_addr.s_addr = inet_addr(ip);

  33.     sendto(clientSock, data, sizeof(message), 0, (struct sockaddr*)&serverAddr, sizeof(serverAddr));
  34.     closesocket(clientSock);
  35.     return 0;
  36. }
复制代码
开启Socket,创建UDP服务,最后发送数据,关闭socket

这里代码也基本能看懂,我就不一一注解了,
嗯,最讨厌的就是让我写注释,
更讨厌的就是别人写的代码没有注释
我终归活成自己讨厌的人了,哈哈

这里面的代码,大家有问题百度下就了解了
当然有问题也可以给我帖子下面回复,我一一解答

我的全部代码,其中 删了wifi账号密码 还有udp ip
RGB.zip (147.65 KB, 下载次数: 2)
001.jpg
004.jpg
10.jpg
13.jpg
11.jpg
12.jpg
002.jpg
003.jpg
回复

使用道具 举报

干簧管 | 2023-12-20 18:02:50 | 显示全部楼层
厉害,点像素
回复 支持 反对

使用道具 举报

yyrwkk | 2023-12-20 19:54:06 | 显示全部楼层
回复

使用道具 举报

爱笑 | 2023-12-21 08:44:51 | 显示全部楼层
用心做好保姆工作
回复

使用道具 举报

1084504793 | 2023-12-21 08:56:57 | 显示全部楼层
学到了
回复

使用道具 举报

lazy | 2023-12-21 16:58:12 | 显示全部楼层
不错呀
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则