当前位置:   article > 正文

STM32基于CubeIDE和HAL库 基础入门学习笔记:物联网项目开发流程和思路

STM32基于CubeIDE和HAL库 基础入门学习笔记:物联网项目开发流程和思路

文章目录:

第一部分:项目开始前的计划与准备

1.项目策划和开发规范 

1.1 项目要求文档

1.2 技术实现文档

1.3 开发规范

2.创建项目工程与日志

第二部分:调通硬件电路与驱动程序

第三部分:编写最基础的应用程序

第四部分:完成最终要求、反复调试

第五部分:程序优化、异常状态测试

第六部分:排版与注释、整理与存档


第一部分:项目开始前的计划与准备

1.项目策划和开发规范 

1.1 项目要求文档

  1. 产品名:带物联网功能的远程控制温湿度控制加热灯的产品主要功能:
  2. 1.可读出环境的温湿度值,在设置的温度时控制加热灯开关
  3. 2.在现场可用手机连接产品,在手机上显示温湿度值,并设置开关灯的阈值
  4. 3.可在物联网平台上显示温湿度值,设置开关灯阈值,可手动开关灯、可开关机
  5. 4.在系统出现故障时蜂鸣器报警,并将报警事件上传云平台
  6. 5.可通过光敏电阻判断开关灯是否成功,可用电位器设置光敏电阻的灵敏度
  7. 6.可在产品上通过按键设置开机或待机
  8. 7.使用手机充电器转5V的电源供电
  9. 所有功能在功能强大、性能优异的洋桃loT开发板上实现
  10. 生产成本:每套小于300
  11. 开发周期:15
  12. 提供:提供条理清晰、注释详细的源工程、提供用于批量产品用的HEX文件、提供电路原理图、提供一套用于测试和验收的样品
  13. 开发报价:请按以上要求给出报价

提取硬件要求

  1. DHT11传感器:温湿度值
  2. 继电器自动开关:开关加热灯
  3. 蓝牙模块:手机CC2541
  4. WIFI模块:ESP8266
  5. 蜂鸣器
  6. 光敏电阻
  7. 电位器
  8. 按键
  9. USB电源
  10. 洋桃loT开发板

提取要求的缺失 

  1. 1.温湿度范围?最小分辨率要求?
  2. 0~50℃ ±2
  3. 2.有无控制灯亮度控制要求?
  4. 只控制加热灯的开和关
  5. 3.是否需要开发蓝牙专用APP?
  6. 不需要,用蓝牙调试器软件临时使用
  7. 4.是否有指定的云平台?
  8. 阿里云
  9. 5.WIFI模块连接路由器?
  10. WIFI模块连接到定时的家用路由器
  11. 6.上传云平台的间隔时间要求?
  12. 5分钟左右上传一次,时间不要求准确
  13. 7.设置开关灯阈值的范围?
  14. 这个在现场测试能用就行,由于不同型号的灯的亮度不同,需要用电位器设置
  15. 8.蜂鸣器的音量要求?报警时长?
  16. 没有要求,3分钟后自动停止,也可按KEY2按键手动停止
  17. 9.光照强度范围?
  18. 到现场调试即可,没有要求
  19. 10.有无用功耗要求?
  20. 没有功耗要求
  21. 11.产品是长期供电还是经常开关?
  22. 长时间工作,需要考虑长时间工作时死机时能自动恢复
  23. 12.稳定性的要求?
  24. 温度控制开关灯要稳定工作,WIFI蓝牙等辅助功能不需要稳定
  25. 13.产品尺寸与外壳的要求?
  26. 没有要求

1.2 技术实现文档

 

 

1.3 开发规范

  1. 1.每一阶段开发要做工程备份
  2. 每天开发结束,把程序打包RAR备份,标题注明当前的程序状态
  3. 2.先调通硬件再做应用层程序开发
  4. 先写出全部硬件的测试程序,后续开发中怀疑硬件问题可用此程序测试
  5. 3.切换到产品使用者的角度来做测试
  6. 开发者的角度不会有好用的设计,必须有开发者和使用者的双重角色
  7. 4.重视产品异常情况的纠错处理,重视产品长时间运行的稳定性
  8. “能用”不是结束,考虑异常情况的错误可能,还要长时间烤机测试
  9. 5.注重程序的结构关系和可读性
  10. 防止未来看不懂自己写的程序,程序要结构清晰、注释丰富、易理解

2.创建项目工程与日志

  1. 1.创建自己的项目文件夹:并取名(含版本)
  2. 2.新建word文档保存项目要求:记录项目日志
  3. 3.从素材库中导入素材:节约时间
  4. 4.打开CubeMX
  5. 4.1 用不到的功能端口全部取消定义,关闭不需要的功能
  6. 4.2 进行相关设置

第二部分:调通硬件电路与驱动程序

  1. 1.调通硬件
  2. 2.移植各功能驱动程序
  3. 3.编写功能测试应用程序

第三部分:编写最基础的应用程序

  1. 1.完成温度控制加热灯的程序
  2. 2.完成按键和电位器设置的程序
  3. 3.完成手机蓝牙设置的程序

开发过程中的关注重点

  1. a.多功能有机组合和相互关联
  2. b.程序代码执行的先后顺序
  3. c.算法的处理
  4. d.裸机程序抢占CPU的问题

第四部分:完成最终要求、反复调试

  1. 4.完成阿里云平台设置的程序
  2. 5.测试效果与调试

第五部分:程序优化、异常状态测试

  1. 1.完成错误报警的程序
  2. 2.完成操作异常的程序
  3. 3.完成稳定性处理的程序

第六部分:排版与注释、整理与存档

  1. 4.程序排版整理
  2. 5.导出正式版hex并存档
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Monodyee/article/detail/637417
推荐阅读
相关标签
  

闽ICP备14008679号