STM32 学习(三)OLED 调试工具

目录

一、简介 

二、使用方法

2.1 接线图 

2.2 配置引脚 

2.3 编写代码

三、Keil 工具调试


一、简介 

在进行单片机开发时,有很多调试方法,如下图: 

其中 OLED 就是一种比较好用的调试工具: 

OLED 硬件电路如下,左边为四引脚型的电路,SCL 和 SDA 为 I2C 的通信引脚,可以接到单片机上的 I2C 引脚或者 GPIO 口模拟的 I2C 通信。右边为七引脚型的电路,D0、D1、RES、DC、CS 为 SPI 通信协议的引脚。

下面是视频所给的 OLED 驱动代码里所包含的函数: 

二、使用方法

2.1 接线图 

2.2 配置引脚 

2.3 编写代码

编写如下代码使 OLED 打印 Hello World!:

#include "stm32f10x.h"
#include "Delay.h"
#include "OLED.h"int main(void)
{// 初始化OLEDOLED_Init();//在1行3列处显示 Hello World!OLED_ShowString(1, 3, "Hello World!");while(1){}
}

三、Keil 工具调试

可以通过 Keil 来配置仿真,如下图为硬件调试,也可以使用左边 Use Simulator 来使用电脑模拟 stm32 仿真:

然后给想要调试的地方打上断点,点击右上角的红色放大镜开始 Debug:

进入如下页面后,点击 run 即可让程序运行到断点位置(图中上面为汇编,左边为寄存器内容,下面为 C 程序):

 

第一个按钮可以单步运行,

第二个按钮可以跳过当前行单步运行: 

第三个可以跳出当前函数单步运行: 

第四个为跳到光标指定位置处运行: 

 

Symbols Window 可以看到所有参数: 

如果想看其值的变化,可以添加到 watch 里面观察:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/593800.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

supervisor + uwsgi 部署python服务流程

supervisor uwsgi 部署python服务流程 最近由于某个python服务不稳定,有时候是造成服务器down机,有时候是服务本身突然就挂了。查了一下原因,发现是内存资源占用过高导致的, 为了让服务稳定运行,便打算引入superviso…

linux centos 部署 jenkins

一、试了用容器部署,不行。(建议别用容器部署) 二、直接部署在主机上 1、安装java环境 yum install java-11-openjdk-devel # 检查 java -version # 打印 [rootiZwz9a99mctbkabkh2imhdZ init.d] java -version openjdk version "11.0.21" 2023-10-17 L…

轻松上手:Postman Interceptor 插件使用指南

什么是 Postman? Postman 是一种用于测试和开发 API 的工具,让开发者可以轻松地构建、发送、调试 HTTP 请求,并检查响应结果。通过Postman,开发者可以在不编写代码的情况下快速测试 API 的正确性和可靠性。Postman 还支持协作和自…

Cesium加载大规模三维数据渲染性能优化方案

根据实际项目经验和近期的论文,总结一下Cesium加载大规模三维数据性能优化方法。个人认为在实际的GIS数字孪生项目中,其可行的优化手段主要有三种: (1)通过专业的转换工具CesiumLab等对原始的三维模型进行轻量化处理,包…

第4课 FFmpeg读取本地mp4文件并显示

在上节课,我们使用FFmpeg实现了一个最简单的rtmp播放器,它看起来工作正常。这节课,我们尝试让它来播放本地的mp4文件试试。 1.压缩备份上节课工程文件夹为demo3.rar,并修改工程文件夹demo3为demo4,重要的事情再说一遍…

sql执行顺序

sql执行顺序 1.from 2.on 3.join 4.where 5.group by(开始使用select中的别名,后面的语句中都可以使用) 6.avg,sum.... 7.having 8.select 9.distinct 10.order by 11.limit 从这个顺序中我们不难发现,所有的 查询语句都是从from开始执行的,…

rime中州韵小狼毫 Upper lua Filter 首字母大写滤镜

在 rime中州韵小狼毫 easyEnglish输入法 一文中, 我们定义了 easy-English 输入方案。输入效果如下👇: 我们知道,在英文世界中,单词有首字母大写的习惯,如果我们输入 english 单词后,再回来改…

力扣hot00 二叉树的中序遍历

👨‍🏫 题目地址 /*** Definition for a binary tree node.* public class TreeNode {* int val;* TreeNode left;* TreeNode right;* TreeNode() {}* TreeNode(int val) { this.val val; }* TreeNode(int val, TreeNode left…

Qt6.5类库详解:QComboBox

哈喽大家好,欢迎关注公众号(20YC编程),有免费C视频课程哦! -今日内容- 1. QComboBox介绍 QComboBox是一个下拉列表框组件类,它提供了一个下拉列表供用户选择,也可以直接当作一个QLineEdit用作输入。 QComboBox除了显…

模糊查询导致索引失效怎么解决

模糊查询导致索引失效可能是由于模糊查询的特性,使得数据库引擎难以有效利用索引。以下是一些解决方法: 1、前缀索引: 如果你的模糊查询是以字符串的开头进行的,考虑使用前缀索引。前缀索引只包含列值的开头部分,可以…

探索 Vue 实例方法的魅力:提升 Vue 开发技能(上)

🤍 前端开发工程师(主业)、技术博主(副业)、已过CET6 🍨 阿珊和她的猫_CSDN个人主页 🕠 牛客高级专题作者、在牛客打造高质量专栏《前端面试必备》 🍚 蓝桥云课签约作者、已在蓝桥云…

关于Spring @Transactional事务传播机制详解

Spring事务传播机制 1.什么是事务传播机制?2.Spring事务传播类型Propagation介绍3.具体案例总结 Spring事务传播机制 1.什么是事务传播机制? 举个栗子,方法A是一个事务的方法,方法A执行过程中调用了方法B,那么方法B有…

微服务-OpenFeign-工程案例

Ribbon 前置知识 是NetFlix的开源项目,主要来提供关于客户端的负载均衡能力。从多个服务提供方,选取一个节点发起调用。 Feign:NetFlix,SpringCloud 的第一代LB(负载均衡)客户端工具包。 OpenFeign:SpringCloud自研&#xff0c…

什么是 NAS?

一、什么是 NAS? 在数字化时代,小型企业面临着日益增长的数据存储需求。为了应对这一挑战,网络附加存储(NAS)系统成为了许多企业的首选解决方案。NAS系统是一种连接到网络的存储设备,允许授权网络用户和异…

软件测试作业‖pytest+po+csv+html报告+cookie+selenium

软件测试作业‖pytestpocsvhtml报告cookieselenium 先用本地部署的系统试了下 或者UFT自动化测试里诺图书管理系统软件测试 # ,#测试报告# #性能测试#,#测试用例#, #自动化测试# Selenium 的 Web自动化测试基本要求和注意事项 1.请使用ch…

JRT控制打印机

本次测试打印机控制和纸张方向控制。 打印机状态 选择打印机 控制纸张 定义纸张 旋转纸张 不旋转纸张 A4

Oracle清理审计和监听垃圾文件脚本

Oracle用户删除审计文件自动化脚本 $(ORACLE) vi oracle_auto_trace_del.sh#!/bin/bash #ORACLE cd /opt/oracle/app/oracle/admin/SID(数据库实例名)/adump find . -type f -name "*.aud" -mtime 10 |xargs rm -rf$(ORACLE&#…

三、C语言中的分支与循环—goto语句 (10) (完)

在C语言中,goto语句允许程序无条件地跳转到同一函数内的标记位置。这个标记位置通过一个标签和冒号(:)来标示。goto语句可以用于从深层嵌套的循环或条件语句中直接跳出,或者跳过某些代码执行。尽管goto语句在某些情况下可以使程序逻辑变得清晰&#xff0…

C++中互斥量、锁有什么用?

文章目录 互斥量如何理解互斥量C 中互斥量的用法基本锁定和解锁使用 std::lock_guard 自动管理锁使用 std::unique_lock 获得更多控制 注意事项 几种不同类型的锁 创建一个C线程需要传入几个参数? 如何理解和使用C线程循环 C 类 函数 变量 进程 线程 C关于锁和互斥量…

Modbus 通信协议 二

Modbus 常用缩写 通用Modbus帧结构 -应用数据单元(ADU) Modbus数据模型 Modbus ADU 和 PDU 的长度 Modbus PDU结构 串行链路上的 Modbus 帧结构 Modbus 地址规则 ASCLL 模式 和 RTU 模式的比较 RTU 模式 RTU 模式位序列 帧格式 帧的标识与鉴别 CRC 循环冗…