# xbclock **Repository Path**: pull-interesting-items/xbclock ## Basic Information - **Project Name**: xbclock - **Description**: No description available - **Primary Language**: Python - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 4 - **Created**: 2022-05-19 - **Last Updated**: 2022-05-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # xbBlock #### 主要材料: - esp32开发板(烧录microPython固件)、ws2812b(8*32)、DS1302(时钟模块)、DHT11(温湿度模块)、TTP223(触控模块) - 3d打印:格栅、背板、侧面槽口、四个固定脚托 - 一张匀光膜、线材若干 - 淘宝定制的木盒,一侧开口 #### 引脚对照 | 模块 | 引脚 | | ------ | ------- | | WS2812 | 25 | | DHT11 | 12 | | DS1302 | 5,18,19 | | TTP223 | 2 | #### 模块对照及接线示意图 ![输入图片说明](image/ESP32_dimension.png) ![输入图片说明](image/%E6%8E%A5%E7%BA%BF%E7%A4%BA%E6%84%8F%E5%9B%BE.png) #### 内部结构图 ![输入图片说明](image/%E5%BE%AE%E4%BF%A1%E5%9B%BE%E7%89%87_20211129142327.jpg) ![输入图片说明](image/%E5%BE%AE%E4%BF%A1%E5%9B%BE%E7%89%87_20211129142332.jpg) ![输入图片说明](image/%E5%BE%AE%E4%BF%A1%E5%9B%BE%E7%89%87_20211129142337.jpg) ### 注意事项 1. **重要!!!**建议有嵌入式开发基础、动手能力强的小伙伴尝试,因为是刚开发好且不算成熟的系统,现在还存在许多没有发现的bug。需要能看懂代码逻辑且出现问题后能够自行修复。再强调一下需要有基础的小伙伴尝试,否则买一堆东西回来浪费金钱又浪费精力。 2. 在有云服务器的情况下可以接入在线控制功能,在服务器可以部署一个emqx然后开发相对应的控制系统。没有自己服务器的小伙伴可以接入我的管理系统,到[西贝博客](www.jhxblog.cn)留言,我会生成相对应clientId(这个功能还没写,我应该能拖到12月中旬上线)。时钟管理页面在西贝博客->实验室->xbclock管理工具 3. 温湿度模块焊板子的时候被我搞坏了,所以现在用的是小米提供的天气数据接口。修改程序时将**weatherApiUrl**变量最后的cityId改成你对应的城市id,如果使用温湿度模块获取数据的话还要将displayTemp()和displayHumi()方法**if 0 != 0:**更改为**if wlanConnectFlag == False:** 4. 如果不使用在线控制功能请将**main()**方法中的`_thread.start_new_thread(mqttThread, ())`、 `mqttPubTimer.init(period=1000 * 15, mode=Timer.PERIODIC, callback=mqttPubTimerHandler)`这两行注释掉 5. 连接wifi热点的账号密码需要到jhx_net.py中修改 6. 侧面的3d打印件原本设计了两个触控开关分别控制功能和亮度,实际开发的时候发现两个触控模块相距将近会产生干扰,所以只保留了一个触控开关,会3d建模的小伙伴可以修改模型中两个开关的位置