|
摘自《Arduino程序设计基础(第二版)》,转载请注明出处
除了 1602 LCD外,Arduino还支持众多的显示器,如果你觉得字符型液晶显示器不能满足你的项目需求,那可以选择图形液晶显示器。这里我们将使用到支持众多图形点阵显示器的类库——u8glib。它是目前Arduino平台上最好的图形显示库,支持多种图形显示器。
你可以在以下网址下载到u8glib图形显示类库:
https://github.com/olikraus/U8glib_Arduino/releases/latest或
http://clz.me/u8glib/
将类库存放到Arduino IDE下的libraries文件夹中,便可正常使用。
由于u8glib成员函数较多,我们便不一一介绍,你可以在以下网址查看到其成员函数介绍:
https://github.com/olikraus/u8glib/wiki
或
http://clz.me/u8glib/
8.3.1 使用MINI 12864显示屏
完成本节的学习,你需要先有一块图形液晶显示器。12864 LCD是最常见的液晶显示器,因其分辨率为128×64像素而得名。使用12864 LCD你可以显示图形、汉字,甚至更高级的动画。
·MINI 12864
OpenJumper MINI12864(图8-14)是一块小巧的SPI接口的图形液晶显示器,相较于并行接口的显示器,它使用更为方便,占用引脚资源更少。本节中大部分内容使用该模块作教学演示。
·OpenJumper MINI 12864引脚参数与连接方法
MINI 12864的引脚配置如表8-5所示:
表8-5MINI12864引脚
MINI 12864是一款SPI串行接口的LCD,我们可以将它与Arduino上的硬件SPI相连,也可以使用任意引脚模拟SPI接口控制LCD。两种连接方法对应了两个构造函数:
硬件SPI驱动构造函数:
[mw_shl_code=cpp,true]U8GLIB_MINI12864(cs, a0 , reset)[/mw_shl_code]
使用硬件SPI时,通信速度较快。LCD的sck和mosi引脚应对应连接到Arduino SPI接口的sck、mosi引脚。cs、a0、reset等其他引脚用户可以随意指定。
模拟SPI驱动构造函数:
[mw_shl_code=cpp,true]U8GLIB_MINI12864(sck, mosi, cs, a0 , reset)[/mw_shl_code]
使用模拟SPI时,通信速度较慢,但LCD的所有引脚可以连接到Arduino任意引脚。
为了获得更好的显示效果,此后的示例中我们均使用Arduino硬件SPI连接LCD,在Arduino UNO上连接引脚对应情况如表8-6所示:
表8- 6MINI12864与Arduino连接
连接好LCD与Arduino后,我们需要在程序中包含U8glib.h头文件,并建立一个lcd对象,相关语句如下:
[mw_shl_code=cpp,true]#include "U8glib.h"
U8GLIB_MINI12864 u8g(10, 9, 8); [/mw_shl_code]
这样我们便成功建立了一个名为u8g,代表MINI 12864的对象。
8.3.2 使用其他图形液晶显示器
如果使用的是其他LCD模块,你应该先确定其使用的控制芯片型号,然后在u8glib项目的设备支持页(https://github.com/olikraus/u8glib/wiki/device 或 http://clz.me/u8glib/device/
),找到你使用的设备对应的类及其构造函数,并使用它新建一个LCD操作对象。
继续阅读:使用U8glib驱动12864图形液晶显示器(二)
摘自《Arduino程序设计基础(第二版)》,转载请注明出处
|
|