0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

如何在MAIN函數(shù)實現(xiàn)OLED顯示

電子發(fā)燒友論壇 ? 來源:電子發(fā)燒友論壇 ? 作者:電子發(fā)燒友論壇 ? 2021-12-01 17:24 ? 次閱讀

作者:馬艷彬

發(fā)燒友專欄號:RTT大賽學習經(jīng)驗分享

最近在玩AB32VG1,在做OLED顯示實驗時,在csdn搜索了很多關(guān)于AB32VG1驅(qū)動OLED的文章,很多都是官方例程操作,在msh窗口中輸入測試指令,測試驅(qū)動是否正常。很少有關(guān)于在main函數(shù)中直接實現(xiàn)的,本編文章直接在MAIN函數(shù)實現(xiàn)OLED顯示,上電自動執(zhí)行。

根據(jù)說明書,AB32VG1開發(fā)板上有一路 I2C,本文通過 RT-Thread Studio配置 AB32VG1片上外設(shè) I2C的引腳,驅(qū)動OLED工作,使開發(fā)板上電,OLED顯示字符串“Hello IIC”。電路原理如圖所示,

如何在MAIN函數(shù)實現(xiàn)OLED顯示

開發(fā)板實物IIC位置如圖所示:

如何在MAIN函數(shù)實現(xiàn)OLED顯示

I2C的 OLED屏,芯片 SSD1309.

如何在MAIN函數(shù)實現(xiàn)OLED顯示

步驟說明:

首先創(chuàng)建工程,如圖所示,輸入工程名AB32VG1_IIC_OLED,點擊完成即可。

如何在MAIN函數(shù)實現(xiàn)OLED顯示

如何在MAIN函數(shù)實現(xiàn)OLED顯示

工程創(chuàng)建成功如上圖所示。

2.添加SSD1309軟件包

展開工程,雙擊打開RT-Thread Settings,如下圖所示,點擊Add按鈕,彈出軟件包搜索界面,如下圖所示

如何在MAIN函數(shù)實現(xiàn)OLED顯示

如何在MAIN函數(shù)實現(xiàn)OLED顯示

在搜索框中,輸入SSD1306,點擊搜索,結(jié)果如上圖所示,點擊添加即可。軟件包已經(jīng)添加至工程中,返回上個界面,既可以看到軟件包下面有了ssd1306,如下圖所示、

如何在MAIN函數(shù)實現(xiàn)OLED顯示

雙擊軟件包進入SSD1306軟件包配置界面,這里驅(qū)動要打上勾號,如下圖所示

如何在MAIN函數(shù)實現(xiàn)OLED顯示

然后在硬件中,開啟IIC功能,如下圖所示

如何在MAIN函數(shù)實現(xiàn)OLED顯示

點擊保存按鈕即可,SSD1306驅(qū)動配置完成。配置完成之后,打開packeges,可以看到該文件下已經(jīng)有了SSD1306_LATEST文件,這里存放的就是SSD1306的頭文件和源文件。如下圖所示。

如何在MAIN函數(shù)實現(xiàn)OLED顯示

打開源文件,可以看到如下藍色代碼,其中char ssd1306_WriteString(char* str, FontDef Font, SSD1306_COLOR color)這個函數(shù)是使得OLED顯示字符串,void ssd1306_SetCursor(uint8_t x, uint8_t y)這個函數(shù),則是設(shè)置光標位置。下面我們調(diào)用這兩個函數(shù)實現(xiàn)“hello IIC”的顯示。

如何在MAIN函數(shù)實現(xiàn)OLED顯示

3.修改main函數(shù)代碼

首先,要包含頭文件,#include “ssd1306.h”//包含SSD1306的頭文件

然后在main函數(shù)里面添加如下代碼:

ssd1306_Init();//添加代碼,顯示屏初始化ssd1306_SetCursor(2, 6);//添加代碼,設(shè)置顯示光標位置ssd1306_WriteString(“Hello IIC”, Font_11x18, White);//添加代碼,設(shè)置顯示內(nèi)容ssd1306_UpdateScreen();////添加代碼,更新顯示屏信息

修改之后的main函數(shù)如下圖所示。編譯工程,下載文件至開發(fā)板,運行效果如下圖所示。

如何在MAIN函數(shù)實現(xiàn)OLED顯示

如何在MAIN函數(shù)實現(xiàn)OLED顯示

OK大功告成!?。?!

下一期文章,OLED顯示ADC通道采集電壓值。

原文標題:【原創(chuàng)專欄】RTT大賽作品連載:AB32VG1開發(fā)板OLED顯示實驗

文章出處:【微信公眾號:電子發(fā)燒友論壇】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
責任編輯:pj

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 芯片
    +關(guān)注

    關(guān)注

    452

    文章

    49941

    瀏覽量

    419622
  • OLED屏
    +關(guān)注

    關(guān)注

    0

    文章

    160

    瀏覽量

    20800
  • OLED顯示
    +關(guān)注

    關(guān)注

    1

    文章

    55

    瀏覽量

    16971

原文標題:【原創(chuàng)專欄】RTT大賽作品連載:AB32VG1開發(fā)板OLED顯示實驗

文章出處:【微信號:gh_9b9470648b3c,微信公眾號:電子發(fā)燒友論壇】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    RTT大賽作品:AB32VG1開發(fā)板OLED顯示實驗

    最近在玩AB32VG1,在做OLED顯示實驗時,很多關(guān)于AB32VG1驅(qū)動OLED的文章,很多都是官方例程操作,在msh窗口中輸入測試指令,測試驅(qū)動是否正常。很少有關(guān)于在main
    的頭像 發(fā)表于 11-05 16:03 ?6140次閱讀
    RTT大賽作品:AB32VG1開發(fā)板<b class='flag-5'>OLED</b><b class='flag-5'>顯示</b>實驗

    MicroBlaze AXI總線實現(xiàn)OLED顯示

    `MicroBlazeAXI總線實現(xiàn)OLED顯示ISE12.5 ,包含EDK工具。串口軟件SSCOM32。實驗NANA_LX16開發(fā)平臺實驗步驟及說明OLED作為從設(shè)備,主設(shè)備通過SP
    發(fā)表于 04-10 09:30

    何在main文件中隨意使用printf函數(shù)?

    何在main文件中隨意使用printf函數(shù)?
    發(fā)表于 12-01 06:05

    在GD32F310開發(fā)板實現(xiàn)四線OLED顯示的設(shè)計

    1、在GD32F310開發(fā)板實現(xiàn)四線OLED顯示的設(shè)計  本次采用四線OLED與開發(fā)板實現(xiàn)通信,使用模擬IIC方式,在自己平時的應用中
    發(fā)表于 08-31 15:25

    如何解決STM32調(diào)試無法進入main函數(shù)的問題?

    本文主要詳細介紹了怎么解決STM32調(diào)試無法進入main函數(shù)的問題?
    的頭像 發(fā)表于 10-05 10:06 ?1.5w次閱讀

    C語言程序的main函數(shù)免費下載

    本文檔的主要內(nèi)容詳細介紹的是C語言程序的main函數(shù)免費下載。
    發(fā)表于 09-26 14:48 ?3次下載

    main函數(shù)的末尾沒有return語句會有什么影響

    c語言中,如果main函數(shù)的末尾沒有return語句將會有什么影響?": 問題的本質(zhì) 回答這個問題其實只要理解一個東西就行了: 那就是帶有返回值的函數(shù)請務(wù)必提供返回值,這個
    的頭像 發(fā)表于 02-20 15:32 ?5940次閱讀

    C語言的main函數(shù)有幾種寫法?

    從學習C語言開始就一直寫個一個函數(shù),那么你知道它的標準寫法什么什么樣嗎? main函數(shù),又稱主函數(shù),是程序執(zhí)行的起點,我們平時寫的main
    的頭像 發(fā)表于 10-15 11:04 ?3250次閱讀

    何在AB32VG1開發(fā)板OLED顯示使開發(fā)板上電

    中直接實現(xiàn)的,本編文章直接在MAIN函數(shù)實現(xiàn)OLED顯示,上電自動執(zhí)行。 根據(jù)說明書,AB32V
    的頭像 發(fā)表于 11-08 10:02 ?2533次閱讀
    如<b class='flag-5'>何在</b>AB32VG1開發(fā)板<b class='flag-5'>OLED</b><b class='flag-5'>顯示</b>使開發(fā)板上電

    探究一下C語言中main函數(shù)各種不同的寫法

    main函數(shù)是C程序的入口函數(shù),即程序的執(zhí)行是從main函數(shù)開始,對其他函數(shù)的調(diào)動也是直接或間接
    發(fā)表于 08-07 17:26 ?945次閱讀
    探究一下C語言中<b class='flag-5'>main</b><b class='flag-5'>函數(shù)</b>各種不同的寫法

    何在OLED實現(xiàn)字符的顯示

    這是FPGA之旅的第十一例了。在前面的例子中,已經(jīng)對OLED有了一個基礎(chǔ)的了解,本例將介紹如何在OLED實現(xiàn)字符的顯示,為后面的例程做準備
    的頭像 發(fā)表于 09-06 09:02 ?4806次閱讀

    何在Raspberry Pi Pico中使用OLED顯示

    電子發(fā)燒友網(wǎng)站提供《如何在Raspberry Pi Pico中使用OLED顯示器.zip》資料免費下載
    發(fā)表于 10-18 09:15 ?4次下載
    如<b class='flag-5'>何在</b>Raspberry Pi Pico中使用<b class='flag-5'>OLED</b><b class='flag-5'>顯示</b>器

    main函數(shù)中運行的自動機

    然后我們試圖將他們組裝起來,因為一開始實現(xiàn)的都是零件(子函數(shù))部分,本文主要介紹在main函數(shù)中運行的自動機。
    的頭像 發(fā)表于 05-23 11:18 ?613次閱讀
    在<b class='flag-5'>main</b><b class='flag-5'>函數(shù)</b>中運行的自動機

    為什么Python沒有main函數(shù)?

    今天的文章中,我們來討論一下為什么有的編程語言有main函數(shù),而Python為什么沒有main函數(shù)。
    發(fā)表于 08-17 11:47 ?286次閱讀

    c語言源程序main函數(shù)的位置

    C語言源程序中的main函數(shù)是程序的入口點,它被認為是C語言程序的起點。在執(zhí)行程序時,操作系統(tǒng)將首先定位到main函數(shù),并從該函數(shù)開始執(zhí)行程
    的頭像 發(fā)表于 11-24 10:23 ?2108次閱讀