一. 實(shí)驗(yàn)?zāi)康?/strong> (1)理解I2C工作原理; (2)分析I2C 通信0.96英寸OLED屏顯示工作原理; (3)分析STM32控制I2C 通信0.96英寸OLED屏硬件連接; (4)設(shè)計(jì)STM32控制I2C 通信0.96英寸OLED屏顯示“我愛中國”,開發(fā)軟件; (5)熟悉調(diào)試、下載程序。 二. 實(shí)驗(yàn)內(nèi)容 設(shè)計(jì)STM32控制I2C 通信0.96英寸OLED屏顯示“姓名:王世龍 學(xué)號(hào):172020240356”。 三. 實(shí)驗(yàn)原理 用STM32F103ZET6開發(fā)板的PD6與OLED屏的SCL連接、PG14與OLED屏的SDA連接,PD6、PG14輸出方式均為推挽輸出。 OLED屏的+VCC、GND與STM32的+VCC(3.3V或+5V)、GND連接。 0.96英寸OLED屏所用的驅(qū)動(dòng)IIC為SSD1306,其具有內(nèi)部升壓功能,所以在設(shè)計(jì)的時(shí)候不需要再考慮升壓電路。 SSD1306的每頁包含了128 個(gè)字節(jié),總共 8 頁,這樣剛好是 128*64 的點(diǎn)陣大小。 四. 實(shí)驗(yàn)器材 ① 筆記本電腦或臺(tái)式電腦 臺(tái)/人(內(nèi)存不低于4G)。 ② STM32F103ZET6最小系統(tǒng)板一塊、ISP串口程序下載器、杜邦線幾根、miniUSB線一條,I2C 通信0.96英寸OLED屏一塊。 ③ 配置相關(guān)軟件(MDK,串口驅(qū)動(dòng)等)。 五. 實(shí)驗(yàn)分析與設(shè)計(jì) 模塊分析: 1、 實(shí)驗(yàn)步驟: 第一步:硬件連接,用四根導(dǎo)線將開發(fā)板與OLED模塊一一進(jìn)行連接,確保無誤。 第二步:建工程模板。 第三步:新建3個(gè)文件,分別取名為oled.h、oled.c、oledfont.h。將oled.h、oled.c、oledfont.h保存到HARDWARE文件夾下面OLED文件夾里面。 第四步:打開字模軟件PCtolLCD2002對所需的字符、漢字、圖形等進(jìn)行取模。最后將所需的字模加入oledfon.h字庫。
2、 實(shí)驗(yàn)過程:
①整體系統(tǒng)框架:
②主要文件
oled.h文件:(用于定義oled引腳 SCL 接PB6 SD 接PG14)
oled.c文件:(用于輸出從字模生成的字體)(一)
(使能PD6和PG14引腳 分別設(shè)為開漏輸出為50MHZ)(二)
main.c文件(輸出姓名和學(xué)號(hào))
六.實(shí)驗(yàn)心得
在不知不覺中已經(jīng)完成五個(gè)實(shí)驗(yàn)后,有一個(gè)很大的體會(huì)就是:原來學(xué)好嵌入式真的很不簡單!不僅僅需要理解原理還要熟練運(yùn)用代碼并且還要自己花大量的時(shí)間來思考,怎么做好某個(gè)功能以及編寫流利的代碼實(shí)現(xiàn)預(yù)期的功能。
在OLED和IIC的使用,我還有很多不懂的地方。比如:若要更換板子的引腳時(shí),需要看功能板的引腳圖和了解基本的電路知識(shí)。看著書中的例題,也還是有了不小的收獲。IIC和OLED的組合實(shí)現(xiàn)了字體顯示的功能。好神奇,讓我對硬件的興趣更加濃厚。但總體來說,這次的實(shí)驗(yàn)還是難度挺大的,很多時(shí)候都是在改代碼錯(cuò)誤的過程,只有歷經(jīng)多次失敗,都是為成功鋪墊好道路,讓我們更好的前行。
|