【STM32】OLED

OLED显示原理

在这里插入图片描述
OLED使用的是I2C协议,使用ssd1306芯片对所有灯进行控制,如果一个灯需要一个引脚的话,屏幕分为8页,每页有128列,8行 .
共有128* 88个灯
在这里插入图片描述
这样引脚是算不过来的,所以我们使用了ssd1306芯片,在上个博客我们用到的每个从机都有自己的地址
在这里插入图片描述
同时要控制这么多的灯,也不能只给数据,比方说我们要对其显示进行重置,亮度改变,光标位置 ,如果是指令的话,就把对应指令数据写入寄存器0x00, ,如果是数据的话,就写入0x40寄存器。
现在我们要确定的是要选哪一页,如果选择第0页,地址就是0xb0。
选择第1页 ,0xb1, 0xb2,0xb3,0xb4,0xb5,0xb6,0xb7
选择好哪一页的话,8
128,继续选择哪一列,但是对应列的选择的话
比方说选择第67列,则分为列的高位和低位,算出67的16进制
在这里插入图片描述

设置低位:0x03 高位给0+3
设置高位: 0x14 高位给1+4

接着设置数据:让第一列全亮给0xff

上面操作都使用了一个函数

HAL_I2C_Mem_Write();

在这里插入图片描述

根据上面解释 点亮第0页的第一列
1.选择页

      uint8_t pData;pData=0xb0;  //选择第0页HAL_I2C_Mem_Write(&hi2c1,0x78,0x00,I2C_MEMADD_SIZE_8BIT,&pData,1,HAL_MAX_DELAY);

2.配置列 第0列 列低位:0x00

	 pData=0x00;  //配置哪一列(低位)HAL_I2C_Mem_Write(&hi2c1,0x78,0x00,I2C_MEMADD_SIZE_8BIT,&pData,1,HAL_MAX_DELAY);pData=0x10;  //配置哪一列(高位)HAL_I2C_Mem_Write(&hi2c1,0x78,0x00,I2C_MEMADD_SIZE_8BIT,&pData,1,HAL_MAX_DELAY);

3.配置数据,使第一列全亮

   pData=0xff;  //八个灯全亮HAL_I2C_Mem_Write(&hi2c1,0x78,0x00,I2C_MEMADD_SIZE_8BIT,&pData,1,HAL_MAX_DELAY);

注意在所有操作之前需要对屏幕初始化,以及清屏

     OLED_Init();//初始化OLED_Clear();//清屏操作

在这里插入图片描述
在这里插入图片描述
对应指令操作在手册中都可以查到
展示
在这里插入图片描述

OLED显示字符数字

OLED_ShowChar();

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
如何根据字模软件来设置字符,以及字符的大小
选择字符模式
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
生成字模
复制到oled.h中
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述


OLED显示汉字

在这里插入图片描述
在这里插入图片描述

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

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

相关文章

【深度学习】【图像分类】【OnnxRuntime】【C++】ResNet模型部署

【深度学习】【图像分类】【OnnxRuntime】【C】ResNet模型部署 提示:博主取舍了很多大佬的博文并亲测有效,分享笔记邀大家共同学习讨论 文章目录 【深度学习】【图像分类】【OnnxRuntime】【C】ResNet模型部署前言模型转换--pytorch转onnxWindows平台搭建依赖环境ONNXRuntime推…

搜索功能技术方案

1. 背景与需求分析 门户平台需要实现对服务信息的高效查询,包括通过关键字搜索服务以及基于地理位置进行服务搜索。面对未来可能的数据增长和性能需求,选择使用 Elasticsearch 来替代 MySQL 的全文检索功能。这一选择的背景与需求可以总结为以下几点&am…

maven简介

1, 结构化管理项目 如果不用maven,研发拿到一个项目要去查看代码,了解其代码结构,了解其依赖文件,jar包位置,图片等文件存储路径等;而maven是规范地将对应的源代码、依赖文件等定义其固定位置&…

[数据集][目标检测]电动车入梯进电梯电单车入梯检测数据集VOC+YOLO格式7106张3类别

数据集格式:Pascal VOC格式YOLO格式(不包含分割路径的txt文件,仅仅包含jpg图片以及对应的VOC格式xml文件和yolo格式txt文件) 图片数量(jpg文件个数):7106 标注数量(xml文件个数):7106 标注数量(txt文件个数):7106 标注…

[环境配置]ubuntu20.04安装后wifi有图标但是搜不到热点解决方法

最近刚入手一台主机,暗影精灵8plus电竞主机,安装ubuntu后wifi怎么都搜不到热点,前后重装系统6次才算解决问题。这个心酸历程只有搞技术人才明白。下面介绍我解决过程。 首先主机到手后是个windows10系统,我用无线网连接了一下&am…

Java发邮件:如何配置SMTP服务器实现发信?

Java发邮件功能实现的教程?Java发邮件的方式有哪些? 无论是用于用户注册确认、密码重置,还是系统通知,Java发邮件都是不可或缺的一部分。AokSend将详细介绍如何配置SMTP服务器,以便在Java发邮件时能够顺利发送邮件。 …

Ozon数据插件,Ozon数据插件好用吗

在跨境电商的浩瀚星海中,每一位卖家都像是航行者,不断探索着市场的奥秘与机遇。而在这个过程中,一款高效、精准的数据分析工具,无疑是每位船长手中的罗盘与望远镜。今天,我们就来深入探讨一款备受瞩目的跨境电商辅助神…

可提示 3D 分割研究里程碑!SAM2Point:SAM2加持泛化任意3D场景、任意提示!

郑重声明:本解读已获得论文作者的原创解读授权 文章链接:https://arxiv.org/pdf/2408.16768 在线demo: https://huggingface.co/spaces/ZiyuG/SAM2Point code链接:https://github.com/ZiyuGuo99/SAM2Point 亮点直击 无投影 3D 分割&#xff1…

安装Anaconda(过程)

Anaconda是一个开源的Python发行版本,用来管理Python相关的包,安装Anaconda可以很方便的切换不同的环境,使用不同的深度学习框架开发项目,本文将详细介绍Anaconda的安装。 一、安装 1、安装方式 官网:“https://www.…

maya-vray渲染蒙版

要用一个叫vrayMulWrapper的材质球,把alpha Conterbution调到-1,勾选matte surface启用蒙版物体。

Xshell在password登录时弹出public key登录验证,设置修改方法

1、cloudpods创建虚拟机 2、XShell连接虚拟机 这里点击连接之后出现了下面页面: 3、原因 /etc/ssh/sshd_config.d 这个目录有配置文件默认配置中 “PasswordAuthentication no”导致连不上了 4、解决办法 点击下面截图中的序号1,进入虚拟机内部&…

(java+Seleniums3)自动化测试实战2

1.环境问题点 此时,可以成功打开浏览器 此时,selenium可以控制浏览器 get--就是访问的意思 将驱动复制在当前项目之下 复制驱动的路径 2.基本元素定位 使用id来定位: 使用Name来定位: 成功: 使用id是唯一的&#xff0c…

AI产品经理:2024年职场发展的新机遇

前言 这两年,AI 骤然“火”了起来,可谓出现了重大“转折”。就在这短短两年间,全球各大“大厂”几乎在同一时间争先恐后地跟进 AI 技术。从 ChatGPT 发布起,谷歌、Facebook、亚马逊等纷纷紧跟其后,国内的百度、腾讯、…

STM32的IAP原理及其操作流程分析

首先明确几个基础概念: 下图的start是程序存放在单片机内部flash的起始地址,size是你给你程序留的flash大小。 一般我们会去找对应map文件,可以查看程序占用多少kb,由下图可见我们的程序占用flash的空间为8.14kb。因此起码要在flash中给8.14…

医院后勤数字孪生解决方案

​医院后勤管理​是医疗机构不可或缺的一环,而数字孪生技术正日益成为改善后勤效率和质量的强大工具。通过将物理实体与其数字化模型相连接,医院可以实现对后勤流程、设备运行和资源利用的精细监控和优化。数字孪生解决方案为医院带来了资源优化、预测性…

FastGPT自定义插件的icon

最近研究FastGPT的自定义插件,经过好几天的折磨,终于实现了一个简单的发送邮件功能,但是呢在使用的时候发现插件的icon是默认的fastgpt的logo,那肯定得自定义一个啊。直接说方法: 1、自定义插件下面的template.json文件…

恐怖类游戏智能体————恐怖探险家

智能体名称:恐怖探险家 链接:文心智能体平台AgentBuilder | 想象即现实 (baidu.com)https://agents.baidu.com/center/agent/preview/MFhBvA0K9EXXVdjHCcUumadWmWesKvw2 角色与目标设定 🧑🏻 角色:恐怖探险家是一位…

从0开始学习RocketMQ:快速部署启动

快速部署 快速部署一个单节点单副本 RocketMQ 服务,并完成简单的消息收发。 安装Apache RocketMQ 下载地址:RocketMQ官网下载 这里我们下载二进制包:rocketmq-all-5.3.0-bin-release.zip 直接解压即可:tar -zxvf rocketmq-all…

httprunner学习笔记(自用版)

目录 一、安装二、脚本录制1、charles录制2、F12脚本录制 三、脚本生成1、har转换为json脚本2、har转换为yml脚本 四、执行脚本五、查看报告六、httpruner接口自动化项目架构 HttpRunner 是一款面向 HTTP(S) 协议的通用测试框架,只需编写维护一份 YAML/JSON 脚本&am…