当前位置: 首页 > news >正文

山东建设工程执业证书查询网站信息流优化师前景

山东建设工程执业证书查询网站,信息流优化师前景,北师大 网页制作与网站建设,天津做网站找哪家公司【STM32 HAL库】OLED显示模块 前言理论OLED基本参数OLED基本驱动原理OLED坐标轴 应用CubeMx配置底层函数代码高层封装函数printf显示函数 前言 本文为笔者学习 OLED 的总结,基于keysking的视频内容,如有错误,欢迎指正 理论 OLED基本参数 …

【STM32 HAL库】OLED显示模块

  • 前言
  • 理论
    • OLED基本参数
    • OLED基本驱动原理
    • OLED坐标轴
  • 应用
    • CubeMx配置
    • 底层函数代码
    • 高层封装函数
      • printf显示函数

前言

本文为笔者学习 OLED 的总结,基于keysking的视频内容,如有错误,欢迎指正

理论

OLED基本参数

分辨率
在这里插入图片描述
常见的oled显示模块的分辨率为128*64,即横向128个像素点,纵向64个像素点

OLED基本驱动原理

在这里插入图片描述

OLED坐标轴

在这里插入图片描述

应用

CubeMx配置

在这里插入图片描述

底层函数代码

OLED驱动的底层函数代码通常由厂商提供,只需理解并调用相应函数即可
在这里我贴一下我使用的OLED_SSD1306驱动
,由keysking提供

高层封装函数

printf显示函数

/*** @brief 类似printf函数,在 OLED 指定行和列处打印格式化的字符串** @param line OLED 显示的行数(从 0行 开始),每行高度为 16 像素* @param column OLED 显示的列号(从 0列 开始),每列宽度为 8 像素* @param format 格式化字符串,必须加双引号,类似 `printf` 的入参格式。* @param ... 可变参数,用于替换 `format` 字符串中的占位符。** @note 该函数使用 `vsprintf` 进行字符串格式化,`buffer` 大小为 128 字节。`OLED_PrintString` 函数将最终的字符串显示在 OLED 上,使用 16x16 的字体和常规显示模式。*/
void OLED_printf(uint8_t line, uint8_t column, const char *format, ...)
{uint8_t x = column * 8; // 将列号转换为像素坐标uint8_t y = line * 16;  // 将行号转换为像素坐标char buffer[128];       // 用于存储格式化后的字符串va_list args;           // 定义可变参数列表// 初始化可变参数列表va_start(args, format);// 使用 vsprintf 将格式化后的内容写入 buffervsprintf(buffer, format, args);// 结束可变参数处理va_end(args);// 将格式化后的字符串显示在 OLED 上OLED_PrintString(x, y, buffer, &font16x16, OLED_COLOR_NORMAL);
}

接下来补充说明一下可变参数

... 为可变参数,... 本身并不是一种特定的类型,而是表示参数列表的可变性。允许在运行时接收任意数量和类型的参数,具体类型由传入的参数决定。
... 可接收任意数量和类型的参数,但参数与参数直接需用 , 分隔。
定义 argsva_list 类型(可变参数列表),用于存储任意数量和类型的可变参数。
va_start(args,format); 将可变参数列表 args 的开始索引指向 format 参数的下一位(下一位就是 ... 可变参数的原因与函数调用约定和栈布局有关,不用深究。
va_start(args, format); 初始化 args,将列表开始索引指向 format 参数的下一位,(表示这后续的参数都是 args
vsprintf(buffer, format, args); 先扫描 format 字符串并读取其占位符—>再读取 args 中的可变参数并填入占位符—>最后将格式化后的结果写入 buffer 字符串。
va_end(args); 用于结束可变参数处理,释放资源。为保证代码的可移植性和规范性,处理完可变参数后应调用。

http://www.hkea.cn/news/506928/

相关文章:

  • 襄阳seo技术长沙seo网站优化
  • 做一的同志小说网站做seo要投入什么
  • 网站的文件结构百度搜索排名怎么收费
  • 全景网站app网络营销工具分析
  • 南京建设工程交易中心网站seo是什么的简称
  • 利用vps做网站关键字排名查询
  • 常熟网站制作找哪家好品牌型网站制作价格
  • 怎么做自己网站推广网络广告
  • 化州网站建设促销方法100种
  • 长沙专业网站设计平台新闻最新消息10条
  • 惠州网站建设制作宣传推广方案
  • 宁波网站推广外包服务长岭网站优化公司
  • 哈尔滨市哪里做淘宝网站seo课程心得体会
  • 做网站建设公司企业一个企业该如何进行网络营销
  • 移动端h5网站开发服务企业seo推广
  • 管理公司网站建设引擎搜索优化
  • 上市公司专利查询网站百度广告投放价格
  • html5电商网页制作网站怎么seo关键词排名优化推广
  • 大同网站建设黄冈网站推广优化找哪家
  • 昌邑网站建设站长之家网站排名
  • 建设企业网站的需求分析免费域名
  • 重庆欧勒精细有限公司网站策划书百度竞价推广开户
  • 怎么做一键添加信任网站ios aso优化工具
  • ps做网站的分辨率多少钱苹果cms永久免费建站程序
  • 网站推广积分常用于网站推广的营销手段是
  • wordpress时间云储存沈阳网站制作优化推广
  • h5响应式网站建设竞价托管哪家效果好
  • 企业解决方案参考网站品牌软文营销案例
  • 做淘客要有好的网站上海百度seo
  • 网站建设 seojsc宁德seo推广