IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 系统运维 -> Linux-oled096驱动硬件分析 -> 正文阅读

[系统运维]Linux-oled096驱动硬件分析

Linux-oled096驱动硬件分析

常用寻址方式

  • 页寻址
  • 水平寻址
  • 垂直寻址

页寻址方式代码分析

void oled_set_pos(u8 x, u8 y)
{
    oled_write_byte(OLED_CMD, 0xb0 + y);
    oled_write_byte(OLED_CMD, ((x & 0xf0) >> 4) | 0x10);
    oled_write_byte(OLED_CMD, x & 0x0f);
}
  • 第一行代码
    请添加图片描述
oled_write_byte(OLED_CMD, 0xb0 + y);
//
第一行代码设置页寻址方式页起始地址,从表格中可以看出,需要输入命令0,需要输入数据(10000 x2 x1 x0)=0xb0+x[2:0]0xb0+y(最终确定是PAGE0~PAGE7)
  • 第二行代码
    请添加图片描述
oled_write_byte(OLED_CMD, ((x & 0xf0) >> 4) | 0x10);
//
第二行代码设置高列起始地址,从表格中可以看出,需要输入命令0,需要输入数据(0001 x3 x2 x1 x0)=0x10。
将x & 0xf0 获取高四位数据,再将高四位数据右移,最后与上0x10,得到高列起始地址。
  • 第三行代码
    请添加图片描述
oled_write_byte(OLED_CMD, x & 0x0f);
//
第三行代码设置低列起始地址,从表格中可以看出,需要输入命令0,需要输入数据(0000 x3 x2 x1 x0)。
将x & 0x0f获取低四位数据,得到低列起始地址。

显示代码分析

//
以下代码是基于16*8字号字符编写的显示函数
共需写入16字节数据,1字节8(16*8)
void oled_showchar(u8 x, u8 y, u8 chr)
{
    u8 c = 0, i = 0;
    //得到当前字符偏移量
    c = chr - ' ';
	//超出范围,另起一页显示
    if (x > Max_Column - 1)
    {
        //另起一行
        x = 0;
        //显示到下两页
        y = y + 2;
    }
    //设置坐标
    oled_set_pos(x, y);
    //依次写入每个字节
    for (i = 0; i < 8; i++)
    {
        //前8字节数据
        oled_write_byte(OLED_DATA, asc2_1608[c * 16 + i]);
    }
    //设置坐标(页数加1),其实是下一页起始位置
    oled_set_pos(x, y + 1);
    for (i = 0; i < 8; i++)
    {
        //后8字节数据
        oled_write_byte(OLED_DATA, asc2_1608[c * 16 + i + 8]);
    }
}
  系统运维 最新文章
配置小型公司网络WLAN基本业务(AC通过三层
如何在交付运维过程中建立风险底线意识,提
快速传输大文件,怎么通过网络传大文件给对
从游戏服务端角度分析移动同步(状态同步)
MySQL使用MyCat实现分库分表
如何用DWDM射频光纤技术实现200公里外的站点
国内顺畅下载k8s.gcr.io的镜像
自动化测试appium
ctfshow ssrf
Linux操作系统学习之实用指令(Centos7/8均
上一篇文章      下一篇文章      查看所有文章
加:2022-02-27 11:04:36  更:2022-02-27 11:04:55 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/16 4:34:47-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码