【嵌入式学习笔记】---- OLED屏幕工作原理

2024-09-05 05:52

本文主要是介绍【嵌入式学习笔记】---- OLED屏幕工作原理,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1 驱动芯片SSD1603简介

1.1 SSD1603芯片图

image

  • SSD1603是一款点阵显示屏控制器,可嵌入在屏幕中,用于执行接收数据、显示存储、扫描刷新等任务
  • 驱动接口:128个SEG引脚和64个COM引脚,对应 128 × 64 128\times 64 128×64像素点阵显示屏
  • 内置显示存储器(GDDRAM): 128 × 64 B i t (或 128 × 64 B y t e ) S R A M 128\times 64 Bit(或128\times 64 Byte)SRAM 128×64Bit(或128×64ByteSRAM
  • 供电:VDD=1.65-3.3V(IC逻辑电平);VCC=7-15V(面板驱动电平,通常OLED模块已集成了升压模块)
  • 通信接口:8位6800/8080并行接口(接线最多)、3/4线SPI接口、IIC接口(传输速度最慢)

1.2 SSD1603功能框图

image

1.3 SSD1603引脚定义

1.3.1 选择通信接口

image

1.3.2 不同模式下通信引脚的功能

image

1.4 数据传输时序图

1.4.1 四线SPI协议

image
image

1.4.2 三线SPI协议

image
相比于四线SPI,三线SPI的D/C#始终接低电平,依赖于SDIN先发送一个字节,从而判定接收内容是数据还是命令
image

1.4.3 IIC协议

image

2 GDDRAM显存与点阵显示屏映射的工作原理

首先,因为字节写入时以8位为一个传输单元,将每次传输的8位字节竖向展开,就可以将64行分为8页,方便字节的写入
image

例如,当在第一页第一列写入字节0xA1,转化为二进制就是10100001,对应的GDDRAM就会如下图所示:
image

那么此时在对应的点阵显示屏上,像素点为1的就亮,像素点为0的就灭,如下图:
image

且填充完第一列后,驱动芯片会自动将内部地址指针向右移动一位,准备接收下一个数据单元。当写到每页的最后一列,此时再继续写入数据,地址指针默认会回到该页的开头,覆盖数据重新写入,故常常需要配置寻址模式使地址指针跳到下一页的开头,再写入数据

这篇关于【嵌入式学习笔记】---- OLED屏幕工作原理的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1138134

相关文章

Android实现两台手机屏幕共享和远程控制功能

《Android实现两台手机屏幕共享和远程控制功能》在远程协助、在线教学、技术支持等多种场景下,实时获得另一部移动设备的屏幕画面,并对其进行操作,具有极高的应用价值,本项目旨在实现两台Android手... 目录一、项目概述二、相关知识2.1 MediaProjection API2.2 Socket 网络

Spring Boot循环依赖原理、解决方案与最佳实践(全解析)

《SpringBoot循环依赖原理、解决方案与最佳实践(全解析)》循环依赖指两个或多个Bean相互直接或间接引用,形成闭环依赖关系,:本文主要介绍SpringBoot循环依赖原理、解决方案与最... 目录一、循环依赖的本质与危害1.1 什么是循环依赖?1.2 核心危害二、Spring的三级缓存机制2.1 三

C#中async await异步关键字用法和异步的底层原理全解析

《C#中asyncawait异步关键字用法和异步的底层原理全解析》:本文主要介绍C#中asyncawait异步关键字用法和异步的底层原理全解析,本文给大家介绍的非常详细,对大家的学习或工作具有一... 目录C#异步编程一、异步编程基础二、异步方法的工作原理三、代码示例四、编译后的底层实现五、总结C#异步编程

Go 语言中的select语句详解及工作原理

《Go语言中的select语句详解及工作原理》在Go语言中,select语句是用于处理多个通道(channel)操作的一种控制结构,它类似于switch语句,本文给大家介绍Go语言中的select语... 目录Go 语言中的 select 是做什么的基本功能语法工作原理示例示例 1:监听多个通道示例 2:带

鸿蒙中@State的原理使用详解(HarmonyOS 5)

《鸿蒙中@State的原理使用详解(HarmonyOS5)》@State是HarmonyOSArkTS框架中用于管理组件状态的核心装饰器,其核心作用是实现数据驱动UI的响应式编程模式,本文给大家介绍... 目录一、@State在鸿蒙中是做什么的?二、@Spythontate的基本原理1. 依赖关系的收集2.

利用Python快速搭建Markdown笔记发布系统

《利用Python快速搭建Markdown笔记发布系统》这篇文章主要为大家详细介绍了使用Python生态的成熟工具,在30分钟内搭建一个支持Markdown渲染、分类标签、全文搜索的私有化知识发布系统... 目录引言:为什么要自建知识博客一、技术选型:极简主义开发栈二、系统架构设计三、核心代码实现(分步解析

使用Python实现一键隐藏屏幕并锁定输入

《使用Python实现一键隐藏屏幕并锁定输入》本文主要介绍了使用Python编写一个一键隐藏屏幕并锁定输入的黑科技程序,能够在指定热键触发后立即遮挡屏幕,并禁止一切键盘鼠标输入,这样就再也不用担心自己... 目录1. 概述2. 功能亮点3.代码实现4.使用方法5. 展示效果6. 代码优化与拓展7. 总结1.

Java编译生成多个.class文件的原理和作用

《Java编译生成多个.class文件的原理和作用》作为一名经验丰富的开发者,在Java项目中执行编译后,可能会发现一个.java源文件有时会产生多个.class文件,从技术实现层面详细剖析这一现象... 目录一、内部类机制与.class文件生成成员内部类(常规内部类)局部内部类(方法内部类)匿名内部类二、

Python+PyQt5实现多屏幕协同播放功能

《Python+PyQt5实现多屏幕协同播放功能》在现代会议展示、数字广告、展览展示等场景中,多屏幕协同播放已成为刚需,下面我们就来看看如何利用Python和PyQt5开发一套功能强大的跨屏播控系统吧... 目录一、项目概述:突破传统播放限制二、核心技术解析2.1 多屏管理机制2.2 播放引擎设计2.3 专

Python中随机休眠技术原理与应用详解

《Python中随机休眠技术原理与应用详解》在编程中,让程序暂停执行特定时间是常见需求,当需要引入不确定性时,随机休眠就成为关键技巧,下面我们就来看看Python中随机休眠技术的具体实现与应用吧... 目录引言一、实现原理与基础方法1.1 核心函数解析1.2 基础实现模板1.3 整数版实现二、典型应用场景2