Giter VIP home page Giter VIP logo

smartclock's Introduction

单片机课程设计——智能家庭时钟

题目要求

  1. 在液晶显示屏上显示“月*日 实时时间”(DS1302);
  2. 通过矩阵键盘设置时间;
  3. 整点语音报时;
  4. 可设多个闹钟;
  5. 可以做定时器;
  6. 通过温湿度传感器采集温、湿度,通过液晶屏显示温、湿度;

技术要点

  • C/C++
  • ESP32
  • FreeRTOS
  • Arduino
  • LVGL

项目概括

时间

本项目硬件部分主要使用:

  • ESP32主控芯片
  • TFT LCD显示屏幕
  • DHT11温湿度传感器
  • DS1302
  • DFPlayer Mini
  • 旋转编码器

本项目固件部分主要使用:

  • Arduino为主要框架
  • PlatformIO为开发平台
  • TFT-eSPI为底层显示驱动
  • LVGL为UI库等

本项目实现了题目要求的诸如:

  • 实时显示时间、日期、温湿度数据信息
  • 实现整点语音播报
  • 实现计时与闹钟功能等

此外,我还增加了如下额外功能:

  • 本项目使用LVGL绘制UI,使界面更加现代化,更具有美感,增强了用户交互体验
  • 将键盘输入改为旋转编码器输入,提升了用户体验,易于上手
  • 还实现了WiFi联网功能,能实时同步网络时间,以此解决单片机本地晶振计时不准的问题,省去了用户校时的麻烦
  • 实现了WiFi一键配网功能,只要连接本设备WiFi,便会自动打开登陆页面,输入WiFi名称和密码,进行网络配置,方便快捷
  • 增加网络指示灯,当指示灯闪烁表示正在尝试连接已有WiFi,指示灯暗表示需要配置网络,指示灯常亮表示已成功连接网络
  • 增加重置按键,当用户长按后,指示灯闪烁提示,清除记忆的网络连接重新配置
  • 用户可以自定义音量和屏幕亮度
  • 实现温湿度数据上传手机,用户可以通过APP随时查看实时温湿度数据

文件结构

  • /firmware 固件程序源代码
  • /hardware 硬件电路相关资料
  • /simulation 仿真电路图与代码
  • /docs 技术文档

注意:仿真电路图仅功能示意,与实物效果并不一致

参考资料

smartclock's People

Contributors

aqvq avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.