码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 【不用开发板学习STM32】DS18B20温度采集+OLED显示(文末获取代码及工程文件)


    • 实验环境

    本次实验是通过Proteus+MDK一起模拟完成的。Proteus模拟实际电路,MDK编译代码。Proteus版本是8.13,MDK版本是5.21。需要注意的是,Proteus需要安装8.8以上版本,器件库里面要支持STM32F103R8。

    • 实验目的

        1.读取DS18B20的数值转换成温度,正负值都能读取;

        2.OLED12864屏幕显示当前温度,上限阈值,下限阈值;

        3.可通过按键调节温度上下限阈值;

        4.温度超过范围红色LED亮起报警,在范围内绿色LED亮起。

    • 硬件电路

    • 主控:

    STM32F103R8(之前用的是C6,但是觉得IO少了点改成了R8,本质上只有Flash和SRAM大小的区别,所以没有必要纠结)

    • 时钟:

    没有用外部晶振,因为Proteus只支持一种时钟树,所以这里采用内部晶振,做实验够了,倍频后是48M。

    • 复位电路:

    复位电路直接去掉了,因为不是实际电路,在仿真环境中感觉作用不大,还占地方。

    • IO说明:

    1. OLED的I2C通信SCL-PB12,SDA-PB13;

    2. DS18B20的1-wrie的IO-PA11;

    3. RED-LED-PB0,GREEN-LED-PB1;

    4. 串口用来调试PA9和PA10;

    5. 上限设置按键-PC0,下限设置按键PC1。

    DS18B20温度采集+OLED显示(文末获取代码及工程文件下载链接!)

    • 代码概述:

    • 代码目录概述:

    APP文件夹:主要包含应用函数的.C文件。

    BSP文件夹:主要包含底层硬件驱动的.C文件。

    MDK-ARM文件夹:主要包含STM32的启动的.S文件。

    StdPeriph_Driver文件夹:主要包含ST官方提供的标准外设驱动.C文件(不是HAL库哦)。

    CMSIS文件夹:系统内核配置文件,标准库自带的。

    • 代码内容概述:
    DS18B20温度采集+OLED显示(文末获取代码及工程文件下载链接!)icon-default.png?t=M85Bhttps://mp.weixin.qq.com/s?__biz=MzU2OTc4ODA4OA==&mid=2247522309&idx=1&sn=891b73614eaac959fe4f83a3a350d521&chksm=fcfb8bd2cb8c02c457ed3354a0fe90d12136fb89cf29235d31efb6dd20ec95de62bb0779bc4a&token=454270454&lang=zh_CN#rd

    • 实验结果展示:

    1. 开机经过初始化以后,显示欢迎界面以及当前的温度,默认上限温度是10℃,下限温度是-10℃;

    2. 按下上下限设置温度设置按键后,界面切换到设置按键,按一下上限+1,下限-1。

     

  • 相关阅读:
    【XSS跨站脚本】存储型XSS(持久型)
    图神经网络GNN
    浅谈Oauth2.0授权
    使用 gitbook 制作自己的 html 文档
    汽车4S集团数据分析
    ZLMediaKit - webrtc录像
    JAVA中小型医院网站计算机毕业设计Mybatis+系统+数据库+调试部署
    基于springboot财务管理系统springboot006
    python学习笔记(4)—— 模型
    SpringBoot整合redis
  • 原文地址:https://blog.csdn.net/cooldog123pp/article/details/127644866
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号