【STM32】驱动OLED屏

news2024/9/22 9:53:50

其实我没买OLED屏哈哈哈,这个只是学习了,没机会实践。

大部分图片来源:正点原子HAL库课程

 专栏目录:记录自己的嵌入式学习之路-CSDN博客


目录

1    显示原理

2    读写方式:8080并口

2.1    支持的指令类型

2.2    读写过程

2.3    三种设置内存地址模式

2.4    软件读写方式

2.5    页地址模式的本质

2.6    屏幕驱动步骤


1    显示原理

MCU驱动OLED的控制器进行读写:MCU←→OLED控制器←→OLED屏幕。


2    读写方式:8080并口

2.1    支持的指令类型

2.2    读写过程

  • CS:OLED 片选信号,就是告诉系统,我要对该芯片/内存进行通信了,后续我发的信号就是给这个芯片/内存的;
  • WR:向 OLED 写入数据;
  • RD:从 OLED 读取数据;
  • D[7:0]:8 位双向数据线;
  • RST(RES):硬复位 OLED;
  • DC:命令/数据标志(0,读写命令;1,读写数据)。

一个示例的读写过程(也许不代表真正的代码,但逻辑是对的):

2.3    三种设置内存地址模式

  • 页地址模式
  • 水平地址模式
  • 垂直地址模式

2.4    软件读写方式

2.5    页地址模式的本质

由于屏幕是128*64,所以弄了一个显存区域,其每页有128字节,一共有8页。这里用128字节是因为内存是以一字节为单位存储的,而128是为了对上列数,而因为一个字节只有8位,所以一页是128*8,为了完全映射128*64,就弄了8页。

其需要设置段重映射,这是为了将页地址完全一致地映射到屏幕像素上去。否则第一列对应的就是屏幕的第128列了。所以总体来说,页数相当于行数除以8,列地址相当于真正的列数。

内存和页地址的联系可参考下图确认每个点的操作:

这里的内存其实就是在单片机中开辟一个[128][8]的二维数组,作为显存的作用,在程序中需要显示字符的时候先对该显存进行赋值,再调用自己写的屏幕更新函数来更新整个屏幕。

画点方式:算出像素的行数位(即下图temp),用数组获取原有像素所在列的值(8位)。若开启像素,则并将其与temp进行或运算;关闭像素则需要将其与temp的反值进行与运算。

2.6    屏幕驱动步骤

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

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

相关文章

SAP AUTOMAIL-自动发邮件功能

总结 针对发送邮件内容封装公用函数,针对不同业务场景即可实现AUTO MAIL自动触发邮件。 1. 邮件发送内容:正文,附件,超链接等等 1.1 正文可以是一般内容或表格明细清单,涉及到很多格式的设置,用HTML格式…

SSM网上人才招聘系统—计算机毕业设计源码23541

目 录 摘要 1 绪论 1.1研究意义 1.2研究背景 1.3研究原因 1.4 ssm框架介绍 1.5论文结构与章节安排 2 网上人才招聘系统系统分析 2.1 可行性分析 2.2 系统流程分析 2.2.1数据增加流程 2.2.2数据修改流程 2.2.3数据删除流程 2.3 系统功能分析 2.3.1 功能性分析 2…

《黑神话:悟空》游戏中的江苏元素

《黑神话:悟空》作为一款以中国经典文学小说《西游记》为基础创作的动作游戏,不仅在游戏剧情和角色设计上深受原著影响,还在游戏场景和元素中融入了大量的中国传统文化,其中不乏江苏地区的特色元素。以下是对游戏中江苏元素的详细…

音频格式转换免费软件有哪些?实用转换工具大揭秘

不知道大家在日常生活中,会不会跟我一样经常遇到需要将音频文件从一种格式转换为另一种格式的情况呢?无论是为了在不同的设备上播放,还是为了节省存储空间,音频转换软件都显得尤为重要。 我最近发现,市面上有许多音频…

力扣1703.得到连续K个1的最少相邻交换次数

力扣1703.得到连续K个1的最少相邻交换次数 中位数贪心 前缀和 设pi qi - i,则问题变为所有pi到x的距离和的最小值 同时x应取pi的中位数 因此枚举i作为最左端的1,求最小值即可 推出距离和公式:s[i] s[ik] - s[ik/2]2 - p[ik/2](k%2) …

pytorch深度学习基础 8 (使用PyTorch的内置功能和默认参数来构建和训练一个简单的线性模型)

co 上面几节都是自定义了很多东西,比如模型的权重,偏置的大小,学习率,损失函数等等,但是实际上pytorch有很多内置的函数以及默认的参数可以对我们的模型部分进行替换,效果也是非常好的,今天我们…

客户信任的秘密武器:为什么每个网站都需要SSL证书?

SSL证书,是网络安全的一把钥匙,它不仅能够锁住数据的安全,还能够建立起用户与网站之间的信任桥梁。在这个数字化日益发展的时代,每个网站都需要配备SSL证书,其背后的原因是多方面的,涉及到技术、安全、信任…

一文掌握数据要素、数据资源、数据资产、数字资产、数据管理、数据治理、数字资产入表是什么?以及关系

数据要素、数据资源、数据资产、数字资产、数据管理、数据治理、数字资产入表到底是什么呢?他们之间是什么关系呢? 数据要素是构建块,数据资源是这些构建块的集合,而数据资产则是具有价值的资源。数据管理和数据治理则确保这些数据…

Lesson 87 A car crash

Lesson 87 A car crash 词汇 attendant n. 接待员,随从 构成:attend v. 出席,参加    -ant / -ent 人 例如:student 学生    assistant 助理 相关:attendance n. 出勤率 例句:Conan以前是一个好接待…

【已解决】我可以再docker里面装Nginx,然后再Nginx下装java吗?

我可以再docker里面装Nginx,然后再Nginx下装java吗? Docker 是一个开源的应用容器引擎,它允许开发者打包他们的应用以及应用的运行环境到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。Docker 容器通常…

私域流量池|家政小程序开发,便捷服务新模式

随着时代的进步和需求的日益增长,家政服务行业也迎来了显著的发展提升。随着科技的不断发展,数字化已经成为各行各业的重要趋势。家政小程序因此而应运而生,成为提高家政服务效率的智能化工具。不仅满足了用户对服务的灵活性需求,…

2024年开发者必备的一款服务端组件

最新技术资源(建议收藏) https://www.grapecity.com.cn/resources/ 前言 在现代工作环境中,信息的处理和管理是至关重要的。表格是一种常见的数据呈现和整理工具,被广泛应用于各行各业。然而,随着技术的不断发展&…

NC设计LRU缓存结构

系列文章目录 文章目录 系列文章目录前言 前言 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站,这篇文章男女通用,看懂了就去分享给你的码吧。 描述 设计LRU(最近…

leetcode215. 数组中的第K个最大元素,小根堆/快排思想

leetcode215. 数组中的第K个最大元素 给定整数数组 nums 和整数 k,请返回数组中第 k 个最大的元素。 请注意,你需要找的是数组排序后的第 k 个最大的元素,而不是第 k 个不同的元素。 你必须设计并实现时间复杂度为 O(n) 的算法解决此问题。…

vue面试集合

缓存 浏览器缓存和http缓存 浏览器缓存&#xff1a; 1&#xff0c;简单的缓存方式有cookie&#xff0c;localStorage和sessionStorage。 2&#xff0c;vue中keep-alive缓存动态组件&#xff1a; 全部缓存&#xff1a;使用<keep-alive>标签包裹缓存路由&#xff0c;ro…

JAVA电子器件制造行业生产管理系统计算机毕设计算机毕业设计

项目开发意义 目前小型企业基本上是采用人工完成生产及物料的车间计划,由于企业运作是以订单驱动而非计划生产,人工手段无法及时随新订单的到来更新计划,造成计划偏离实际;各个生产单位(车间)各自为战,分别提出物料、设备、专用工具的需求,在整个企业层面上很难较精确地控制物料…

机器学习:集成学习之随机森林

目录 前言 一、集成学习 1.集成学习的含义 2.集成学习的代表 3.集成学习的应用 二、随机森林 1.随机森林的特点 2.随机森林生成步骤 3.随机森林优点 4.随机森林的缺点 三、代码实现 1.完整代码 2.数据预处理 3.创建并训练模型 4.测试模型 总结 前言 随机森林是…

集合及数据结构第十二节(下)————哈希表、字符串常量池和练习题

系列文章目录 集合及数据结构第十二节&#xff08;下&#xff09;————哈希表、字符串常量池和练习题 哈希表、字符串常量池和练习题 哈希表的概念冲突-概念冲突-避免冲突-解决冲突严重时的解决办法冲突严重时的解决办法的实现性能分析和 java 类集的关系Hashmap的使用案…

R8RS标准之重要特性及用法实例(四十)

简介&#xff1a; CSDN博客专家&#xff0c;专注Android/Linux系统&#xff0c;分享多mic语音方案、音视频、编解码等技术&#xff0c;与大家一起成长&#xff01; 新书发布&#xff1a;《Android系统多媒体进阶实战》&#x1f680; 优质专栏&#xff1a; Audio工程师进阶系列…