当前位置: 首页 > news >正文

STM32作业设计

目录

STM32作业设计
STM32作业实现(一)串口通信
STM32作业实现(二)串口控制led
STM32作业实现(三)串口控制有源蜂鸣器
STM32作业实现(四)光敏传感器
STM32作业实现(五)温湿度传感器dht11
STM32作业实现(六)闪存保存数据
STM32作业实现(七)OLED显示数据
STM32作业实现(八)触摸按键TPAD
STM32作业实现(九)驱动舵机
源码位置

设计阶段

功能

所需实现功能
1 使用单总线采集DHT11温湿度数据
2 使用ADC采集光照数据
3 将上述采集数据组包并通过串口发送给wifi(使用串口调试工具代替)
4 将上述采集数据通过IIC显示在oled
5 将上述采集的数据通过SPI储存在W25Q128芯片内部
6 可以通过触摸按键启动舵机
7 可以接收wifi发来的串口数据,并处理
7.1 启动/停止舵机
7.2 启动/停止led
7.3 舵机调速
7.4 开启/关闭继电器(加热棒/风扇)

项目所用硬件

  1. STM32F103ZET6 开发板
  2. ST-LINK V2 V2.1仿真器
  3. 0.96寸 I2C IIC通信 显示器 OLED液晶屏模块
  4. 伺服舵机SG90 360度
  5. DHT11单总线数字温湿度传感器

可以使用示波器进行测量舵机的PWM

项目所用软件

  1. keil 版本5.11
  2. STM32CubeMX 版本 6.10.0
    2.1 软件安装后需要注册
    2.2 需要下载STM32F1 中的 1.8.5 或者 1.8.0 库
  3. CH340 驱动
  4. st-link_v2 驱动
  5. STM32 ST-LINK Utility 版本 3.9.0
  6. Keil.STM32F1xx_DFP 版本.2.0.0
  7. 使用 UartAssist 工具发送与接收串口调试信息
  8. 字模工具 PCtoLCD2002

安装方法请自行查阅

关于定时器分频说明

本项目采用的是外部时钟源,9倍频,总频率72MHz

在这里插入图片描述
当分频为72时,计数一次的时间为 1 / (72000000 / 72) = 1us,项目中的微妙计时器都以此为基础
在这里插入图片描述

相关文章:

  • 【网络安全】【深度学习】【入侵检测】SDN模拟网络入侵攻击并检测,实时检测,深度学习【二】
  • 异常封装类统一后端响应的数据格式
  • iOS 查看runtime源码的几种方法
  • C++程序打开EXCEL2010失败,提示:远程过程调用失败
  • C++ 53 之 继承中同名成员处理
  • 设计通用灵活的LabVIEW自动测试系统
  • Three.js加载压缩的glb/gltf文件
  • 鸿蒙HarmonyOS开发 preferences首选项
  • ARM 汇编 C语言 for循环
  • 【设计模式深度剖析】【8】【行为型】【备忘录模式】| 以后悔药为例加深理解
  • 为什么说Python 是胶水语言?
  • C# OpenCvSharp 代数运算-add、scaleAdd、addWeighted、subtract、absdiff、multiply、divide
  • 大型企业IT基础架构和应用运维体系
  • 基于Java的诊所医院管理系统,springboot+html,MySQL数据库,用户+医生+管理员三种身份,完美运行,有一万一千字论文
  • 【DevOps】Logstash详解:高效日志管理与分析工具
  • 77. Combinations
  • HTTP请求重发
  • iOS动画编程-View动画[ 1 ] 基础View动画
  • js
  • Laravel深入学习6 - 应用体系结构:解耦事件处理器
  • Linux各目录及每个目录的详细介绍
  • 测试开发系类之接口自动化测试
  • 快速构建spring-cloud+sleuth+rabbit+ zipkin+es+kibana+grafana日志跟踪平台
  • 山寨一个 Promise
  • 使用 @font-face
  • 使用 5W1H 写出高可读的 Git Commit Message
  • 由插件封装引出的一丢丢思考
  • # 透过事物看本质的能力怎么培养?
  • #LLM入门|Prompt#2.3_对查询任务进行分类|意图分析_Classification
  • #NOIP 2014# day.1 生活大爆炸版 石头剪刀布
  • #window11设置系统变量#
  • $var=htmlencode(“‘);alert(‘2“); 的个人理解
  • (zhuan) 一些RL的文献(及笔记)
  • (二刷)代码随想录第16天|104.二叉树的最大深度 559.n叉树的最大深度● 111.二叉树的最小深度● 222.完全二叉树的节点个数
  • (附源码)spring boot公选课在线选课系统 毕业设计 142011
  • (附源码)springboot 智能停车场系统 毕业设计065415
  • (附源码)ssm高校升本考试管理系统 毕业设计 201631
  • (转)IIS6 ASP 0251超过响应缓冲区限制错误的解决方法
  • (转)自己动手搭建Nginx+memcache+xdebug+php运行环境绿色版 For windows版
  • .NET 4.0网络开发入门之旅-- 我在“网” 中央(下)
  • .NET Core 将实体类转换为 SQL(ORM 映射)
  • .NET Framework 4.6.2改进了WPF和安全性
  • .NET 应用启用与禁用自动生成绑定重定向 (bindingRedirect),解决不同版本 dll 的依赖问题
  • .NET/C# 中你可以在代码中写多个 Main 函数,然后按需要随时切换
  • .net开发时的诡异问题,button的onclick事件无效
  • .net下的富文本编辑器FCKeditor的配置方法
  • @Bean, @Component, @Configuration简析
  • @Builder用法
  • [【JSON2WEB】 13 基于REST2SQL 和 Amis 的 SQL 查询分析器
  • [2019/05/17]解决springboot测试List接口时JSON传参异常
  • [Angularjs]ng-select和ng-options
  • [C#]猫叫人醒老鼠跑 C#的委托及事件
  • [C++]模板与STL简介
  • [C++初阶]string类的详解
  • [Flutter] extends、implements、mixin和 abstract、extension的使用介绍说明