基于STM32的小电视桌面时钟/天气显示/桌面宠物
项目说明:
本项目使用CC-BY-NC-SA 3.0协议,任何人不得使用本项目进行商用,如有修改必须开源并标明原项目出处!!
本项目使用CC-BY-NC-SA 3.0协议,任何人不得使用本项目进行商用,如有修改必须开源并标明原项目出处!!
本项目使用CC-BY-NC-SA 3.0协议,任何人不得使用本项目进行商用,如有修改必须开源并标明原项目出处!!
此为楼主的技术验证项目,其中所有优化方法和模块驱动均为楼主一人编写。由于第一次设计如此庞大的项目,就没有过于考虑实用性和成本,只是跟随大佬们的足迹,DIY一个小电视而已。复刻有风险,建议谨慎考虑。本项目代码、图纸和模型会全部开源,如果各位大佬有修改和优化意见请指出,楼主会择优选择并进行修改。
本项目是基于STM32F412芯片搭配多个外围模块实现的小电视桌面时钟/天气显示/桌面宠物项目。
小电视在开启后会自动联网更新日期时间和天气信息显示在屏幕上。通过顶部的3个触控按键完成开关和左右翻页功能。无线方面支持专用APP蓝牙配网和设置备忘录(APP和对应版固件正在完善中)。
中间键按下后会自动进入低功耗模式,再次按下唤醒。低功耗模式下会关闭全板的3.3V电源,只有STM32和触控芯片仍在上电(STM32为低功耗状态)。每日零点会自动唤醒,联网重新获取时间和天气信息,保存后自动休眠。
小电视整个开发周期接近一年半,开发过程中充满繁杂的期望/妥协和功能实现问题。软硬件设计思路和架构介绍如下,不过纯技术的东西略显干燥,有空开一贴以个人视角讲下开发过程,有兴趣的就当是看个故事了。
小电视桌面时钟-硬件设计思路与介绍 - 嘉立创EDA开源硬件平台 (oshwhub.com)
小电视桌面时钟-软件设计架构 - 嘉立创EDA开源硬件平台 (oshwhub.com)
如有问题可加群 1003187629
目前小电视使用STM32搭配两个无线模块,单体成本估测在200元以上,并且最终实现的功能并不强大,不建议追求低成本的玩家复刻。
物品
成本(单价不算邮费)
购买位置
屏幕
37
3.5寸液晶屏显示屏IPS屏SPI串口ILI9488电容触摸屏全新彩屏ST7796-淘宝网 (taobao.com)
STM32F412VGT6
15
某鱼二手
外壳(9000R树脂材料)(推荐,但会变黄)
35
立创三维猴
外壳(ASA)(与树脂材料二选一)
86.09
立创三维猴
PCB
20(有机会免费)
立创
AI-WB2 WIFI/蓝牙模块
6
安信可主推WiFi蓝牙二合一模块Ai-WB2-12F封装兼容ESP12F串口透传-淘宝网 (taobao.com)
EC-01G NB-IOT/定位模块
37.9
安信可NB-IoT+GPS/BDS定位模组/EC-01G无线串口通信模块/数据透传-淘宝网 (taobao.com)
NB-IOT天线
2
全频段LTE 4G 5g NB-iot 8DB内置900m915 3G GSM PCB FPC贴片天线-淘宝网 (taobao.com)
GPS天线(可不选)
7
有源GPS北斗双模内置天线高增益导航定位BD陶瓷放大双频天线-淘宝网 (taobao.com)
电池(7000mah)
61.5
中顺芯7000mAh移动户外备用电源充电宝聚合物锂电池3.7V 105080-淘宝网 (taobao.com)
物联网卡
15
NB SIM卡 工业NBIOT 卡 贴片卡 插拔卡 NBIOT ,移动NB NB模块-淘宝网 (taobao.com)
其他杂项(元器件等)
约20
大部分立创
项目从第四(其实是第N)版开始开源,日后(可能)会更新使用ESP32的低成本版和使用ARM-Linux的高性能触屏版。
复刻教程:
1. 项目中所有文件均为Alitium Designer绘制,可能无法使用JLC免费打样,导入专业版仅为方便查看。
2. 打样PCB和外壳,PCB厚度为1.2mm,购买原件。W25Q128必须为FV后缀,电池必须带保护板
3. 注册心知天气账号,将自己的KEY保存下来。
4. 焊接所有原件。由于FPC排线座非常难焊,建议首先焊接,避免掉焊盘导致整个板子报废。焊接建议使用焊锡膏+加热台/热风枪,个别地方需要烙铁修型。带有塑料的原件如SIM卡座、TYPEC接口、RTC电池座等建议放到后面焊接。其中SIM卡座和3.3V升降压电感、32.768K晶振存在一定的冲突,建议复刻者根据水平自行决定焊接方法。SD卡相关电路因为固件原因暂未使用,可以先不焊接。
5. 在外壳顶部贴上3片铜箔胶带,引线焊接到PCB电池座背面的3个测试点上,中间线从后壳屏幕支撑架中穿过后焊在最左边的点上,剩下两个点与按键相对位置相同。建议引线尽量短以避免线间电容对触摸造成的干扰。电池接口左正右负,中间为NTC检测线的焊接点,如果使用NTC功能需要将R24空焊。
6. 编译下载算法:打开下载算法中的.uvprojx文件。如你的keil安装在默认目录中,直接编译即可。如果不在默认目录,建议首先去掉target->user中用户命令前面的勾,然后在编译后手动复制下载算法文件到keil对应的目录。图方便也可直接将项目根目录中现成的F412V4_Dflash.FLM文件复制到电脑中对应的下载算法存放目录。
7. 打开主线项目程序,在项目栏中打开USER/APP.c,替换宏定义USER_KEY的值为之前保存的你自己的密钥。
8. 将主线项目编译后使用下载器接入小电视下载接口直接下载,下载程序时屏幕背光被点亮为正常现象。如果报错没有找到对应区域的下载算法,建议回到前面查看下载算法的复制路径是否存在错误、与keil自动检索下载算法的位置是否一致。
9. 将买到的NB-IOT天线粘贴到后壳上,注意对好位置让天线接头能够到插座。(如果愿意尝试开发GPS功能可以安装GPS天线并粘贴到PCB的GPS区域,不过如果你能到这一步估计也不需要本复刻教程了)
10. 插上屏幕后将PCB使用M1自攻螺丝拧到后壳上,注意对好插口和开关的位置。
11. 将屏幕折过来放到后壳的屏幕支撑架上,注意不要碰断触控按键的飞线,同时屏幕外观的中心并不在小电视前壳的中心(为了屏幕显示区域能对正外壳开口),将屏幕卡入槽位后盖上后壳。
项目缺陷(已知bug):
1. EC-01G模块有GPS定位能力但(可能是)因为信号原因无法快速使用。
2. 外壳结构强度一般且长时间使用后会存在发黄的问题。需要找到一种白色半透明且耐候性较好的3D打印材料。
3. 唤醒后通过对比闹钟设置和RTC时间的方式来判定是否为零点自动唤醒,如果按键开关时间碰巧与闹钟唤醒时间相同,程序就会出现问题。
4. 联网对时获取的时间包含网络延迟,导致小电视内部时间与实际时间存在几秒的差距。
5. 桌面宠物不同动画之间连续度不够且没有交互能力。
6. WIFI/蓝牙模块和NB-IOT模块的驱动程序依旧有较大的不完善,暂不能够支持真正意义上的多线程共用。
7. 程序架构不允许wifi断开重连后自动重新获取信息。
8. …(问题还是有亿点点的)
主线项目代码正在整理中,几天内会上传
附图:
1.拆解图
2.触控部分铜箔胶带和焊接走线(忽略旁边飞线的芯片,这是老版本的PCB,还没有集成AT24C08)
3.主板背面以及粘贴上的天线
4.天线的连接方式,粘贴天线时注意对正插头位置
其他几张整体外观、渲染图
相关知识
[DIY]用STM32实现桌面宠物功能#开源
天气桌面小工具(桌面天气插件)V9.9.2019 绿色版软件下载
基于STM32的宠物箱温度湿度监控系统的设计与实现
基于STM32的宠物箱温度湿度监控系统
咪萌桌面宠物中桌面怎么显示宠物?咪萌桌面宠物中桌面显示宠物的方法
基于STM32的智能宠物养护系统(边做边更新)
基于STM32的智能宠物喂食系统设计
基于STM32的智能宠物监测自动喂养
基于stm32的宠物智能投喂项目目的
基于STM32开发的智能宠物喂食系统
网址: 基于STM32的小电视桌面时钟/天气显示/桌面宠物 https://www.mcbbbk.com/newsview1037487.html
上一篇: 网上买狗、上海买狗,哪里靠谱?论 |
下一篇: 狗狗站不稳怎么办(教你让宠物立得 |
推荐分享

- 1我的狗老公李淑敏33——如何 5096
- 2南京宠物粮食薄荷饼宠物食品包 4363
- 3家养水獭多少钱一只正常 3825
- 4豆柴犬为什么不建议养?可爱的 3668
- 5自制狗狗辅食:棉花面纱犬的美 3615
- 6狗交配为什么会锁住?从狗狗生 3601
- 7广州哪里卖宠物猫狗的选择性多 3535
- 8湖南隆飞尔动物药业有限公司宠 3477
- 9黄金蟒的价格 3396
- 10益和 MATCHWELL 狗 3352