wuhanstudio / rt-u8g2

U8g2 for rt-thread - a monochrome graphics library
Other
77 stars 24 forks source link
i2c rt-thread spi ssd1306 u8g

这个仓库是我以前移植 u8g2 到 RT-Thread 的版本,现在对应的移植已经 upstream 到 u8g2 的官方仓库了,所以可以直接用官方仓库了。 - 2021.09.30

rt-u8g2

0、介绍

u8g2 原先是 Arduino 平台上的一个单色屏驱动,现在移植到了 rt-thread,可以满足各种各种各样的需求。

游戏开发 (examples/games/space_trash)

用户界面 (examples/page_buffer/icon_menu)

绘图 (examples/page_buffer/graphic_test)

1、U8G2 特点

1.1 支持屏幕多,移植方便

使用 u8g2 的好处在于它支持近 200 种单色屏,同样的代码可以直接运行在不同的屏幕上,比如前面的游戏可以在各种屏幕上运行:

经典 128x64

OLED SSD1306 I2C

在这里可以看到所有支持的屏幕:

https://github.com/olikraus/u8g2/wiki/gallery

1.2 支持字体多

中文

韩文

日文

梵文

1.3 绘图函数多

支持各种绘图函数,而且自带各种 icon

总结一下 u8g2 的特点:

2、项目说明

2.1 目录结构

说明:目录结构

名称 说明
docs 文档目录
examples 例子目录
src 源代码目录
port 针对特定平台的移植代码目录

2.2 许可证

Check full LICENCE here.

2.3 项目依赖

说明:如果使用 I2C 液晶屏需要开启 I2C,GPIO 模拟 I2C 。

说明:如果使用 SPI 液晶屏需要开启 SPI 。

3、如何使用 U8G2

使用 u8g2 package 需要在 RT-Thread 的包管理器中选择它,具体路径如下:

RT-Thread online packages
    peripheral libraries and drivers --->
        [*] U8G2: a u8g2 package for rt-thread
            [*] Use hardware spi                                     
              (spi1)  spi bus name (NEW)              
              (spi10) spi device name (NEW)     
            [*] Use hardware i2c          
              (i2c2)  i2c device name
            U8G2 Examples  --->

然后让 RT-Thread 的包管理器自动更新,或者使用 pkgs --update 命令更新包到 BSP 中。

一共有50个例程,可以在源码 docs 目录下看到预览图。默认的例程都是用的软件I2C,如果觉得速度比较慢可以使用硬件I2C。

4、注意事项

5、感谢

6、联系方式