单片机课程设计--网络时钟
单片机课程设计–网络时钟
测控1902 孙楷亮
文章目录
- 单片机课程设计--网络时钟
- 作品功能
- 目标功能
- 典型应用场景
- 总体计划
- 代码计划
- 时间规划
- 开发资源
- 开发环境
- 硬件资源
- 软件资源
- 文档资料
- 学习记录
- 四月小记
- 五月小记
- 六月小记
- 采购清单
- 完成进度
- 网络参考资料
作品功能
目标功能
- 网络对时
- 智能配网,快速连接WiFi
- 最近三天天气
- 学校课程显示
- mooc学习任务
- 指纹识别
- 健康打卡与出校申请
典型应用场景
- 出门前确认今天会不会下雨
- 早上上课,看一眼上课的教室
- 晚上睡觉前确认今天mooc作业已经完成
- 每天的健康打卡自动完成,节省时间
- 想要出校,每次报备都要操作,指纹识别一键报备
总体计划
代码计划
- stm32程序使用hal库编写,易与移植代码 爬虫使用
- pythonSelenium库,爬取功能强大
- 服务器使用python的Flask框架,简单好学
时间规划
- 4月完成硬件选型,重新熟悉相关知识,写完网络爬虫
- 5月使用成品开发板测试模块,并写相关驱动,调试
- 6月绘制原理图PCB,打样板做实验
- 7月完善提交
开发资源
开发环境
名称 | 功能 |
---|---|
Keil | 开发stm32的集成开发环境 |
STM32cubeMX | 硬件初始化代码的生成 |
Pycharm | 爬虫脚本编辑,flask的调试 |
立创EDA | 国产EDA工具 |
Typora | markdown工具 |
openSSH | 用于与服务器通信 |
硬件资源
芯片和模块的选取
模块 | 通信方式 | 引脚 |
---|---|---|
esp01S | usart | usart2 |
AS608 | usart | usart3 |
LCD屏幕 | 16并口 | ---- |
云服务器 | tcp/ip | ---- |
stm32系列
stm32f401rct6,主要是芯片涨价了,买不起其他的,手里有的就用了
esp8266系列
esp01s,串口转wifi,国产,下载官方固件后轻松利用串口AT实现网络通信
电源管理
暂时先用淘宝上买的typeC锂电池充电模块,1块5,便宜.锂电池选了个600毫安的,做东西剩下的
指纹识别模块
AS608指纹模块,串口通信实现指纹识别,支持查询和对比,很方便的集成到设计里
LCD显示屏
未定,考虑到功耗,应该小一点,但是显示效果就会差
云服务器
阿里云学生服务器,一年100
软件资源
名称 | 功能 |
---|---|
嵌入式实时系统 | 方便的实现多任务,让程序逻辑更简单 |
selenium自动化测试工具 | 爬取JavaScript渲染的页面 |
flask服务框架 | python Flask框架 将爬取到的信息,以json的格式发布 |
文档资料
书籍资料
名称 | 用途 |
---|---|
freeRTOS内核实现与应用开发实战指南 | 学习RTOS的内核 |
图解HTTP | 了解HTTP请求的构成 |
Python3网络爬虫开发实战 | 爬虫学习 |
flask开发实战 | flask开发实战 |
stm32开发指南 | 查阅一些库函数 |
部分数据手册
名称 |
---|
ESP-01S _PDF_C503582_2020-04-07.pdf |
STM32F103C8T6 _PDF_C8734_2014-07-24.pdf |
1A鋰電池充電IC _PDF_C382139_2019-03-27.pdf |
DW01A-G _PDF_C61503_2016-06-16.pdf |
学习记录
四月小记
RTOS
学习了RTOS的内核实现,巧妙的多任务
esp8266
智能配网指令
1,AT+CWMODE_DEF=1 配置WiFi模组工作模式为单STA模式,并把配置保存在flash
2,AT+CWAUTOCONN=1 使能上电自动连接AP
3,AT+CWSTARTSMART=3 支持ESP-Touch和Airkiss智能配网
4,打开微信,关注微信公众号“安信可科技”,点击wifi配置,点击开始配置,输入密码,点击连接
5,AT+CWSTOPSMART 无论配网是否成功,都需要释放快连所占的内存
6,AT+CIPSTATUS 查询网络连接状态
OLED屏幕
不管是spi屏幕还是i2c屏幕,rtt都提供了方便使用的软件包
在一段时间的阅读代码后,也可以照猫画虎的写简单的驱动
服务器
flask部署很方便,学习起来不需要深究原理,很快就足以实现我的想法
五月小记
Web API规划
ip/weather get 提供天气信息
ip/daka post 健康打卡
ip/timetable get 提供课程信息
ip/mooc get 提供mooc信息
或者提供一个有全部信息的
爬虫进展
校园网爬取课程表
https://portal.neu.edu.cn/
中国大学mooc爬取慕课通知
https://www.icourse163.org/
心知天气爬取天气
https://www.seniverse.com/
爬取校园网每日健康打卡网页并打卡
https://e-report.neu.edu.cn/inspection/items
硬件进展
重新购买esp8266,官方提供配套例程,方便了使用
调试指纹模块,指令基本使用
现在需要去把几个模块整合,做一个初步的模型出来
实时时钟RTC函数的扩展
利用已经实现的tcp连接 创建简单的http请求函数,封装
json信息的读取,使用了cjson库,常用的解析库,参考网络博客移植就好
完善参考代码
六月小记
所有功能所需的模块已经学习调试完毕.,所需的通信协议也基本实现
其中,作品的时间部分,天气部分已经制作了demo,实现了功能
后续添加特色功能即可
现在基本跑通,开始绘制PCB,首先是电源部分
选择使用锂电池供电,就需要配套的充电芯片和保护芯片,这里我采用了常用的tp4056+dw01A
绘制了测试板,预计6.26实验一下
采购清单
名称 | 数目 | 总价 |
---|---|---|
正点原子开发板 | 1 | 230 |
AS608 | 1 | 60 |
esp01S | 4 | 40 |
云服务器 | 三个月 | 27 |
TFT-LCD | 1 | 60 |
嘉立创打板 | 2 | 10 |
杂项 | — |
完成进度
stm32 开发
- hal库
- usart,spi
- RTOS学习
外设学习
- esp01S学习
- AS608的操作
爬虫 开发
- 校园网爬取课程表
- 中国大学mooc爬取慕课通知
- 心知天气爬取
- 爬取校园网每日健康打卡网页并打卡
Web API开发
- Json的预处理
- Flask学习
网络参考资料
还有很多博客也被参考,但没有全部记录,只能列出比较重要的
Selenium常见异常分析及解决方案 - 安琪儿一直在 - 博客园
www.cnblogs.com/123anqier-blog/archive/2004/01/13/12639194.htmllinux—centos7 安装chromedriver - myvic - 博客园
www.cnblogs.com/myvic/p/9450134.htmlPython网络编程基础及socket之TCP收发消息及文件_m0_47670683的博客
blog.csdn.net/m0_47670683/article/details/111158032和风天气
www.qweather.com
- flask中文站
dormousehole.readthedocs.io/en/latest/
单片机课程设计--网络时钟相关推荐
- 单片机课程设计——《基于AT89S52单片机和DS1302时钟芯片的电子时钟(可蓝牙校准)》...
引言 本设计以AT89S52单片机为控制核心,时钟芯片DS1302提供时钟源,配合LCD1602液晶显示模块,组成基本硬件系统,同时利用HC-05嵌入式蓝牙串口通讯模块,可在手机端进行日期.时间的校准 ...
- 单片机课程设计——《基于AT89S52单片机和DS1302时钟芯片的电子时钟(可蓝牙校准)》... 1
引言 本设计以AT89S52单片机为控制核心,时钟芯片DS1302提供时钟源,配合LCD1602液晶显示模块,组成基本硬件系统,同时利用HC-05嵌入式蓝牙串口通讯模块,可在手机端进行日期.时间的校准 ...
- 单片机彩灯移动实验_单片机课程设计彩灯实验.doc
单片机课程设计彩灯实验 彩灯控制器设计 1.项目要求及参数 1.1用指令语句实现对C51的控制,从而实现对彩灯变化的控制. 1.2用定时器控制彩灯变化,用语句查询方式实现程序设计. 1.3用定时器控制 ...
- 单片机模拟计算机课设,单片机课程设计题目汇总(全)
单片机原理与接口技术课程设计题目汇总,说明:为便于同学提前探讨开发思路,要求:课程设计考核内容包括:源程序,一.基于单片机的电子时钟设计,设计内容:1.用LCD液晶作为显示设备(30分),2.可以分别 ...
- 51单片机课程设计《三路步进电机控制》
说明:最近抽出了几天时间完成了单片机的课程设计,用了51单片机做了三路步进电机控制器,美名其曰3d打印机控制器(其实是瞎搞的,与3D打印机毫无关系),因为单片机课程设计是在大四上学期,与考研复习时间冲 ...
- c语言c51单片机点亮8个灯,单片机课程设计-8个LED灯来回点亮
<单片机课程设计-8个LED灯来回点亮>由会员分享,可在线阅读,更多相关<单片机课程设计-8个LED灯来回点亮(20页珍藏版)>请在人人文库网上搜索. 1.目录第一章 绪论-3 ...
- 单片机模拟计算机课设,《单片机课程设计实例》.doc
<单片机课程设计实例>.doc 单片机课程设计任务书 单片机课程工程实践的目的就是让同学们在理论学习的基础上,通过完成一个涉及MCS-51单片机多种资源应用并具有综合功能的小系统目标板的设 ...
- 单片机音乐播放器课程设计C语言,单片机课程设计简易音乐播放器
单片机课程设计简易音乐播放器 论文题目:简易音乐播放器所属系部:电子工程系 指导教师: 学生姓名: 学 号: 专 业: 电子信息工程技术 题目: 简易音乐播放器任务与要求:本设计以 MCS-51 系列 ...
- 单片机节日彩灯c语言程序,单片机课程设计简易节日彩灯
<单片机课程设计简易节日彩灯>由会员分享,可在线阅读,更多相关<单片机课程设计简易节日彩灯(7页珍藏版)>请在人人文库网上搜索. 1.单片机课程设计节日彩灯一. 需求分析:1. ...
最新文章
- 路由器和交换机的综合实验
- Handler Bundle Runnable
- Linq 入门系列 [OfType,ToArray,ToList,ToDictionary]
- 牛客网 桂林电子科技大学第三届ACM程序设计竞赛 D.寻找-树上LCA(树上a到b的路径上离c最近的点)...
- three.js(七) 绘制到WebGLRenderTarget
- python画k线图_Python绘制K线图
- Android打开系统文件管理器
- 美洽客服JavaScript 网页插件
- [imblearn]-欠采样模型合集
- 螺旋分级机与水力分级机间的优缺点
- uniapp 安卓模拟器mumu 端口配置
- Codeforces 887D - Ratings and Reality Shows
- Android开机画面的修改
- 年关将至,房东不肯退押金,应当如何维权?| 法豸
- 第一代GCN: Spectral Networks and Locally Connected Networks on Graphs
- 优秀logo,最基础的设计技巧(二)
- 一、达梦数据库的安装
- 点击事件@click 失效问题
- SparkSql 控制输出文件数量且大小均匀(distribute by rand())
- Canvas 文字对齐方式