久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2922|回復: 0
打印 上一主題 下一主題
收起左側

基于HC32L110開發板的OLED屏顯示

[復制鏈接]
跳轉到指定樓層
樓主
本帖最后由 jinglixixi 于 2020-10-23 10:10 編輯

有了程序下載和點亮LED燈的基礎,我們就可以利用I/O口來嘗試驅動OLED屏了,這里選的是I2C接口的OLED屏,只需占用2個I/O口,故十分節省資源,對于像HC32L110這樣原本就引腳不多的芯片更是如此。
那么選哪個引腳來連接OLED屏呢?
這里選取的是P35和P36,其中P35--- CLK,P36--- DIN。
配置這2個引腳為輸出功能的函數為:
  1. void App_OledInit(void)
  2. {
  3.         Gpio_InitIOExt(3, 5, GpioDirOut, TRUE, FALSE, TRUE, FALSE);
  4.         Gpio_InitIOExt(3, 6, GpioDirOut, TRUE, FALSE, TRUE, FALSE);
  5. }
復制代碼

是這2個引腳輸出高低電平的語句為:
#define OLED_SCLK_Set()   Gpio_SetIO(3, 5, TRUE)
#define OLED_SCLK_Clr()   Gpio_SetIO(3, 5, FALSE)
#define OLED_SDIN_Set()   Gpio_SetIO(3, 6, TRUE)
#define OLED_SDIN_Clr()   Gpio_SetIO(3, 6, FALSE)
該顯示屏的初始化函數為:
  1. void OLED_Init(void)
  2. {         
  3.         OLED_SCLK_Set();
  4.         OLED_SDIN_Set();
  5.         delay1ms(800);
  6.         OLED_WR_Byte(0xAE,OLED_CMD);//--display off
  7.         OLED_WR_Byte(0x40,OLED_CMD);//--set start line address  
  8.         OLED_WR_Byte(0xB0,OLED_CMD);//--set page address
  9.         OLED_WR_Byte(0xC8,OLED_CMD);//Com scan direction
  10.         OLED_WR_Byte(0x81,OLED_CMD); // contract control
  11.         OLED_WR_Byte(0xFF,OLED_CMD);//--128   
  12.         OLED_WR_Byte(0xA1,OLED_CMD);//set segment remap
  13.         OLED_WR_Byte(0xA6,OLED_CMD);//--normal / reverse
  14.         OLED_WR_Byte(0xA8,OLED_CMD);//--set multiplex ratio(1 to 64)
  15.         OLED_WR_Byte(0x1F,OLED_CMD);//--1/32 duty
  16.         OLED_WR_Byte(0xD3,OLED_CMD);//-set display offset
  17.         OLED_WR_Byte(0x00,OLED_CMD);//
  18.         OLED_WR_Byte(0xD5,OLED_CMD);//set osc division
  19.         OLED_WR_Byte(0xf0,OLED_CMD);//
  20.         OLED_WR_Byte(0xD9,OLED_CMD);//Set Pre-Charge Period
  21.         OLED_WR_Byte(0x22,OLED_CMD);//
  22.         OLED_WR_Byte(0xDA,OLED_CMD);//set com pin configuartion
  23.         OLED_WR_Byte(0x02,OLED_CMD);//
  24.         OLED_WR_Byte(0xDB,OLED_CMD);//set Vcomh
  25.         OLED_WR_Byte(0x49,OLED_CMD);//
  26.         OLED_WR_Byte(0x8D,OLED_CMD);//set charge pump enable
  27.         OLED_WR_Byte(0x14,OLED_CMD);//
  28.         OLED_WR_Byte(0xAF,OLED_CMD);//--turn on oled panel
  29.         OLED_Clear();
  30. }
復制代碼

實現圖1和圖2顯示效果的主程序為:
  1. int32_t main(void)
  2. {
  3.                 delay1ms(100);
  4.                 OLED_Init();
  5.                 OLED_Clear();
  6.                 OLED_ShowString(0,0,"HC32L110 TEST",16);
  7.                 OLED_ShowString(0,2,"OLED DISPLAY",16);
  8.                 delay1ms(2000);
  9.                 OLED_Clear();               
  10.                 OLED_ShowCHinese(0, 0, 3);
  11.                 OLED_ShowCHinese(16, 0, 4);
  12.                 OLED_ShowCHinese(32, 0, 5);
  13.                 OLED_ShowCHinese(48, 0, 6);
  14.                 OLED_ShowCHinese(64, 0, 7);
  15.                 OLED_ShowCHinese(0, 2, 8);
  16.                 OLED_ShowCHinese(16, 2, 9);
  17.                 OLED_ShowCHinese(32, 2, 10);
  18.                 OLED_ShowCHinese(48, 2, 11);
  19.                 OLED_ShowCHinese(64, 2, 12);
  20.                 while (1);               
  21. }
復制代碼

圖1 顯示字符串


圖2 顯示漢字

評分

參與人數 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎勵!

查看全部評分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏1 分享淘帖 頂 踩
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 91xxx在线观看| 理论片87福利理论电影 | 美女拍拍拍网站 | 亚洲一区二区在线 | 亚洲精品久久久久久久久久久久久 | 欧美一级二级三级视频 | 亚洲精品乱码久久久久v最新版 | 亚洲高清免费观看 | 亚洲国产成人精品久久 | 国产精品久久久久久久久久妞妞 | 精品免费| 中文字幕成人 | 一区二区三区精品视频 | 欧美久久电影 | 欧美一级免费看 | 中文字幕日韩一区 | 亚洲精品二区 | 99国产精品99久久久久久 | 成人a免费 | 国产成人高清视频 | 国产成人99久久亚洲综合精品 | 天天看天天操 | 91av在线免费播放 | 欧美aⅴ| www日韩 | 国产日韩精品视频 | 99久久国产免费 | 爱爱无遮挡 | 亚洲精品国产一区 | 91精品一区二区三区久久久久久 | 九色国产 | 美国av片在线观看 | 91久久久久久久 | 国产精品日韩欧美一区二区三区 | 国产在线一区二 | 日韩精品无码一区二区三区 | 欧美啪啪 | 亚洲精品久久久久久一区二区 | 日韩在线一区二区三区 | 亚洲一区二区三区四区五区中文 | 黑人性hd |