會員登陸: 密碼:
資訊
服務(wù)支持
采用Arduino標準Wire庫去驅(qū)動RSCG12864B01液晶屏幕I2C口

I2C控制的RSCG12864B01屏幕,是一款非常有用。就來分享一下這個屏幕的使用教程。

采用Arduino標準的Wire庫去驅(qū)動RSCG12864B01屏幕,只需要注意I2C總線的電平即可(這個RSCG12864B01是5V的,Arduino ARM系列的是3.3V,所以需要用購買3.3V版本的液晶屏,否則會損壞控制板)。

新封裝的庫已經(jīng)在UNO上跑了Example,沒有問題,現(xiàn)在上幾張圖來給大家看一下效果,隨后再介紹內(nèi)部的函數(shù)使用。

1.jpg

ARDUINO UNO 與RSCG12864液晶屏接線

2.jpg

調(diào)用內(nèi)置的16*16點陣的漢字

3.jpg

調(diào)用內(nèi)置的12*12點陣的漢字(可在任一像素點位置顯示)

4.jpg

調(diào)用內(nèi)置的ASCII,支持5*7/6*12/8*16三種點陣

5.jpg

中文、朝鮮文和日文字庫版本可選

用RSCG12864B簡單的顯示一下數(shù)字,字符,圖像的話,確實是一個好的選擇。

現(xiàn)在簡單的介紹一下函數(shù)庫的一些函數(shù)。先來看一下Example。

[kenrobot_code]#include

// 實際使用屏幕的接線數(shù)量應(yīng)該是3 + 2

// 3是指I2C的兩根線加上屏幕的一個Busy信號線

// 2指的就是5V和GND

const int busyPin = 7;

RAYLIDLCD myLCD(busyPin); // 我定義Busy信號到D7(數(shù)字口7)

 

void setup() {

  // put your setup code here, to run once:

  myLCD.begin(); // 初始化一下屏幕

  myLCD.setBrightness(255); // 設(shè)置屏幕亮度為255

}

 

void loop() {

  // put your main code here, to run repeatedly:

  unsigned char i;

// 下面四個數(shù)組是中文漢字的編碼

  char chn[] = {0XC9, 0XEE, 0XDB, 0XDA, 0XCA, 0XD0, 0XC8, 0XF0, 0XC1, 0XA2, 0XB5, 0XC2, 0XB5, 0XE7, 0XD7, 0XD3, 0x00,};

  char f1[] = {0X49, 0X32, 0X43, 0XBD, 0XD3, 0XBF, 0XDA, 0X2C, 0XC4, 0XDA, 0XBD, 0XA8, 0XD7, 0XD6, 0XBF, 0XE2, 0,};

  char f2[] = {0XD6, 0XD0, 0XCE, 0XC4, 0X2C, 0XBA, 0XAB, 0XCE, 0XC4, 0X2C, 0XC8, 0XD5, 0XCE, 0XC4, 0,};

  char f3[] = {0XD6, 0XA7, 0XB3, 0XD6, 0X32, 0X44, 0XBB, 0XE6, 0XCD, 0XBC, 0};

 

  myLCD.displayBMP(0); // 這個函數(shù)的作用就是顯示預(yù)存在屏幕Flash中的圖片

  delay(800);

  myLCD.displayBMP(1);

  delay(800);

  myLCD.displayBMP(2);

  delay(800);

  myLCD.displayBMP(3);

  delay(800);

  myLCD.displayBMP(4);

  delay(800);

  myLCD.displayBMP(5);

  delay(800);

  myLCD.clear(); // 清屏

  myLCD.print(0, 15, chn, VLARGE); // print是用來在指定位置顯示字符的,使用方法參考如下說明

// print(屏幕x, 屏幕y, 字符, 字號);其中字號有 SMALL, NORMAL, BIG, LARGE, VLARGE

// 顯示中文只能使用LARGE和VLARGE

  myLCD.print(8, 35, "www.raylid.com", VLARGE);

  delay(3000);

  myLCD.clear();

  myLCD.print(16, 15, chn, LARGE);

  myLCD.print(20, 35, "www.raylid.com", LARGE);

  delay(3000);

  myLCD.clear();

  myLCD.fontReversOn(); // 反白顯示,具體效果參考上面的圖片

  myLCD.print(25, 0, "Built-in font", LARGE); // 反白這句話

  myLCD.fontReversOff(); // 關(guān)閉反白

  myLCD.print(3, 15, "5*7 ASCII 0123456789", SMALL); // 參考上面print

  myLCD.print(3, 25, "5*7 ASCII ABCDEabcde", SMALL);

  myLCD.print(20, 35, "6*12/12*12 FONT", LARGE);

  myLCD.print(5, 48, "8*16/16*16 FONT", VLARGE);

  delay(3000);

  myLCD.clear();

  myLCD.print(0, 0, f1, VLARGE);

  myLCD.print(0, 16, f2, VLARGE);

  myLCD.print(0, 32, f3, VLARGE);

  myLCD.drawRect(0, 50, 127, 63); // 繪制空心矩形

// 使用如下

// drawRect(x1, y1, x2, y2);

  for (i = 2; i <= 125; i++)

  {

    myLCD.drawRectF(2, 52, i, 61); // 繪制實心矩形,用法和空心矩形一樣

    delay(100);

  }

  delay(3000);

}

[/kenrobot_code]




深圳瑞立德-專業(yè)研發(fā)、生產(chǎn)與銷售點陣液晶顯示模塊和段碼液晶屏目前已經(jīng)成功開發(fā)多款行業(yè)標準的I2C接口、SPI接口、RS232接口、RS485接口、UART等接口的液晶模塊,售前、售后技術(shù)支持,性能穩(wěn)定可靠!

 

深圳瑞立德液晶模塊廠家主要研發(fā)生產(chǎn):

A、 單色液晶屏點陣式LCD包括:12864液晶模塊、12864液晶屏、19264液晶模塊、19264液晶屏、24064液晶模塊、24064液晶屏、32064液晶模塊、32064液晶屏、25664液晶模塊、25664液晶屏、240128液晶模塊、240128液晶屏、16032液晶模塊、16032液晶屏、12232液晶模塊、12232液晶屏、

B、 單色液晶屏字符液晶模塊包括:0802液晶模塊、0802液晶屏、1602液晶模塊、1602液晶屏、1604液晶模塊、1604液晶屏、2002液晶模塊、2002液晶屏、2004液晶模塊、2004液晶屏.

C、 段碼液晶屏包括:VA LCD、TN LCD 、HTN LCD、 STN LCD、 FSTN LCD等筆段式LCD

D、 OLED顯示模塊:1602OLED,12832OLED、12864OLED、25664OLED

E、 TFT液晶模塊,3.5寸320240、4.3寸480272、5.0寸800480、7寸800480,有8位MUC接口,I2C接口、SPI接口、RS232接口、RS485接口、UART口。

廣泛應(yīng)用于醫(yī)療設(shè)備、儀器儀表、安防門禁、汽車電子、工控設(shè)備、水表、電表、智能家居、溫控器、物聯(lián)網(wǎng)終端等眾多產(chǎn)品。我們可以提供量身定制,從LCD玻璃,LED背光、PCB滿足您的個性化需求。


在線留言

公司名稱
聯(lián)絡(luò)人
電話號碼
E-mail
您的需求  *  
Copyright? 2016 深圳市瑞立德電子有限公司

   地址:廣東省深圳市龍華區(qū)龍華街道清湖社區(qū)雪崗北路308號利榮豐大廈C座713       電話:0755-28169430  ICP備16116153號-1/2