液晶模块选用的是JHD529M1,支持RGB的背光。使用I2C总线。
从底板的原理图上看,几个I2C都是一条总线 ,所以连接哪个插口都是可以的。
这里插接在了第二个I2C的接口上。
先看程序:
- #include "jhd1313m1.h"
- int
- main(int argc, char **argv)
- {
- //! [Interesting]
- // 0x62 RGB_ADDRESS, 0x3E LCD_ADDRESS
- upm::Jhd1313m1 *lcd = new upm::Jhd1313m1(0, 0x3E, 0x62);
- //lcd->setColor(40,150,150);//浅蓝
- lcd->setColor(255,0,0);//红
- lcd->setCursor(0,0);
- lcd->write("Hello World");
- lcd->setCursor(1,2);
- lcd->write("Hello World");
- printf("Sleeping for 5 secondsn");
- sleep(5);
- delete lcd;
- //! [Interesting]
- return 0;
- }
复制代码
官方的程序中lcd->setColor这个方法是没有的,是我加上的,是背光的RGB颜色。 LCD的初始化就是Jhd1313m1的构造函数,它有三个参数,第一个是I2C总线的编号。第二个是LCD的I2C地址,第三个是RGB的I2C的地址。 lcd->setCursor()方法,对应使用字符显示在某一行某一列。第一个参数是行,第二个参数是列。
本例程需要调用如下的几个文件,一定要放在工程中。
这些程序目前无需深究,到底就是mraa的库中的函数调用了。再探究mraa库,那就要对应到linux的驱动,再探究就要到CPU的数据手册中的寄存器了,所以只要先会用这些库就可以了。
|