玩转STM32MP157- 使用 u8g2 驱动 OLED 12864(SSD1306)
环境
硬件环境:STM32MP157C-DK2
软件:
MPU上使用ST官方提供的STM32MP15x OpenSTLinux Starter Package
编译系统:Ubuntu 1604 64bit
编译器:ST提供的SDK
u8g2
u8g2 是面向嵌入式设备的单色图形库,什么意思呢,如果你做些嵌入式设备,恰好是用单色显示设备(可以是单色LCD,OLED,LED点阵屏等),用这个可就很方便了,直接使用u8g2 API来显示字符或者图片等,不用知道这些显示设备的底层操作。
u8g2 github地址是https://github.com/olikraus/u8g2,还有官方文档, 官方提供的例子 ,不过这些都是MCU的,如果要在Linux上使用呢?已经有人移植了,在github上可以找到:https://github.com/wuhanstudio/u8g2-arm-linux。
在STM32MP157C-DK2上使用u8g2
下载u8g2
首先下载下来:
在目录u8g2-arm-linux\examples下有两个例程,一个是SPI驱动SSD1306 OLED,一个是I2C前驱动SSD1306 OLED,正好我手上有I2C接口的SSD1306 OLED模块。
修改源码
- 修改makefile
分别把u8g2-arm-linux/examples\u8g2_hw_i2c和u8g2-arm-linux\examples\u8g2_4wire_hw_spi目录下的makefile中的CC赋值的语句注释掉:
- 修改例程
然后修改u8g2-arm-linux/examples\u8g2_hw_i2c\main.c文件,原来的程序如下图:
把显示的文字修改为:U8g2 on STM32MPU。
编译
首先使能SDK,然后输入make就可以编译。编译完之后,在bin目录下可以找到编译出来的可执行文件,
把bin目录中的u8g2_hw_i2c拷贝到STM32MPU板子上。
连接硬件并测试程序
该例子使用的I2C是i2c-0:
STM32MP157C-DK2引出的IO如下:
把显示器连上板子,执行程序,结果如下:
显示板子的IP地址
尝试使用下u8g2,试着在OLED上显示板子的IP地址,
参考:
https://blog.csdn.net/dpjcn1990/article/details/92831760#21_U8g2_26
玩转STM32MP157- 使用 u8g2 驱动 OLED 12864(SSD1306)的更多相关文章
- 玩转X-CTR100 l STM32F4 l OLED显示-SSD1306无字库
我造轮子,你造车,创客一起造起来!塔克创新资讯[塔克社区 www.xtark.cn ][塔克博客 www.cnblogs.com/xtark/ ] OLED显示屏具有自发光特性,不需要背光, ...
- 用Arduino显示颜色序列(u8g2,OLED)
目录 用Arduino显示颜色序列(u8g2,OLED) 用Arduino显示颜色序列(u8g2,OLED) 提前祝大家新年快乐! 主控:Arduino Mega 2560 硬件:126×64 OLE ...
- Raspberry Pi3驱动Oled ssh1106屏
Raspberry Pi3可以直接使用GPIO接口驱动OLED屏 一.接线 根据网上随便找的图可以看到树莓派3的GPIO接口引脚顺序 PS:26pin的GPIO为前26针 根据OLED屏的引脚说明,如 ...
- 0.96寸OLED显示屏驱动手册(SSD1306)
MCU IIC接口 IIC通信接口由从地址位SA0,IIC总线数据信号SDA(输出SDAout/D2和输入SDAin /D1)和IIC总线时钟信号SCL(D0).不管是数据线还是时钟线都需要连接上拉电 ...
- arduino驱动oled
OLED一款小巧的显示屏,感觉可以做出很可爱的东西. 这次实验的这款是128X64的OLED屏幕 , 芯片是SSD1306,请确认自家模块芯片型号,不然对不上号啊 使用IIC的方法,简单实验显示示例程 ...
- TPYBoard v202开发板通过I2C协议驱动oled
最近无聊的时候研究了一下TPYBoard v202开发板,发现网上TPYBoard开发驱动oled的这块资料比较少,本人测试成功后给大家分享一下经验 下面通过代码讲解一下 1.首先需要导包, 在网上下 ...
- OLED液晶屏幕(1)OLED液晶屏幕ssd1306驱动芯片 arduino运行 ESP8266-07可以 12f不可以
OLED屏幕有各种形状和尺寸,但目前有两种非常受欢迎的屏幕尺寸. 1)0.96“ 2)1.3“ 他们也有2种常见的颜色 1)蓝色 2)白色 驱动OLED的芯片常用的有两种.这两种芯片有许多非常相似的设 ...
- 东芝开发板驱动OLED模块显示LOGO图片
前言 在之前的两篇评测文章: 使用系统定时器SysTick实现精确延时微秒和毫秒函数 东芝MCU实现位带操作 介绍了系统SysTick实现精确延时,GPIO的输入输出使用,并实现了位带方式操作GPIO ...
- 玩转u8g2 OLED库,一篇就够
授人以鱼不如授人以渔,目的不是为了教会你具体项目开发,而是学会学习的能力.希望大家分享给你周边需要的朋友或者同学,说不定大神成长之路有博哥的奠基石... QQ技术互动交流群:ESP8266&3 ...
随机推荐
- xxl-job源码阅读一(客户端)
1.源码入口 使用xxl-job的时候,需要引入一个jar,然后还需要往Spring容器注入XxlJobSpringExecutor <dependency> <groupId> ...
- yiled
def fib(max): n,a,b = 0,0,1 while n < max: print("hallo") yield b #把函数执行过程冻结在这一步,并且把b的值 ...
- COS 数据湖最佳实践:基于 Serverless 架构的入湖方案
01 前言 数据湖(Data Lake)概念自2011年被推出后,其概念定位.架构设计和相关技术都得到了飞速发展和众多实践,数据湖也从单一数据存储池概念演进为包括 ETL 分析.数据转换及数据处理的下 ...
- Building SPEC CPU2006
https://developer.amd.com/wordpress/media/2012/10/building_speccpu.html Building SPEC CPU2006 This f ...
- SSH实现免密登陆
SSH实现免密登陆配置 ssh实现免密码登录的配置过程,主要分为以下几个步骤: serverA生成密钥,包括私钥和公钥 serverA将公钥传到serverB上 serverA上配置serverB登陆 ...
- OpenStack常见面试题
现在,大多数公司都试图将它们的 IT 基础设施和电信设施迁移到私有云, 如 OpenStack.如果你打算面试 OpenStack 管理员这个岗位,那么下面列出的这些面试问题可能会帮助你通过面试. Q ...
- 云计算OpenStack核心组件---glance镜像服务(6)
一.glance介绍: Glance是Openstack项目中负责镜像管理的模块,其功能包括虚拟机镜像的查找.注册和检索等. Glance提供Restful API可以查询虚拟机镜像的metadata ...
- linux基础之基础命令一
本节内容: 1. ls:列出当前目录下的文件和目录 -l: 长输出,显示文件的详细信息(-普通文本,d目录) -a: 显示所有文件,包括隐藏文件 -h: 人类易读(-lh) -d: 显示目录信息(-l ...
- linux服务之FTP服务篇
一.FTP协议 FTP服务器(File Transfer Protocol Server)是在互联网上提供文件存储和访问服务的计算机,它们依照FTP协议提供服务. FTP (File Transfer ...
- windows 批量删除用户
@echo off for %%I in (longxj,liujr,laijx,yuanyq,yanghui,xiejz,zhanlei,zifz,yuansy,denglf,lilan,chenz ...