藍(lán)牙心率防水運(yùn)動(dòng)手環(huán) OLED 屏幕顯示 ——瘋殼·智能穿戴開發(fā)系列 Lcd 屏幕顯示 1 相關(guān)簡介 本次 Lcd 屏幕顯示是采用 SSD1306。SSD1306 是一個(gè)單片 CMOS OLED/PLED 驅(qū)動(dòng)芯片可以驅(qū)動(dòng)有機(jī)/聚合發(fā)光二級(jí)管點(diǎn)陣圖形顯示系統(tǒng)。有 128segments 和64Commons 組成。該芯片專為共陰極 OLED 面板設(shè)計(jì)。SSD1306 中嵌入了對(duì)比度控制器、顯示 RAM 和晶振,并因此減少了外部器件和功耗。有 256 級(jí)亮度控制。數(shù)據(jù)/命令的發(fā)送有三種接口可選擇:6800/8000 串口,I2C 接口或 SPI 接口。我們本次就是使用軟件模擬 I2C 接口控制 LCD 屏幕。 2 硬件設(shè)計(jì) 下圖是我們的 LCD 屏幕的接口,這里使用 I2C 通信,SCL,SDA 分別接在 P25、P26。 ![]() 圖 1 3 軟件設(shè)計(jì) 關(guān)于軟件,首先就是要把模擬 I2C 的兩個(gè)引腳配置成普通輸出 IO 口, GPIO_ConfigurePin(LCD_I2C_PORT, SCL, OUTPUT, PID_GPIO, false); GPIO_ConfigurePin(LCD_I2C_PORT, SDA, OUTPUT, PID_GPIO, false); 首先模擬起始信號(hào):當(dāng) SCL 為高電平期間,SDA 由高電平跳變到低電平。 ![]() ![]() 最后就是數(shù)據(jù)的傳送:I2C 總線進(jìn)行數(shù)據(jù)傳送時(shí),時(shí)鐘信號(hào)為高電平期間, 數(shù)據(jù)線上的數(shù)據(jù)必須保持穩(wěn)定,只有在時(shí)鐘線上的信號(hào)為低電平期間,數(shù)據(jù)線上的高電平或低電平狀態(tài)才允許變化。 ![]() 上面的函數(shù) Delay_us(1)可以根據(jù) datasheet 進(jìn)行更改。 我們通過對(duì) SSD1306 寫指令,寫數(shù)據(jù),控制 LCD。 ![]() 圖 2 ![]() ![]() LCD 初始化完成之后,就可以調(diào)用顯示函數(shù)了。 4 實(shí)驗(yàn)現(xiàn)象 首先打開 SmartSnippets。 ![]() 圖 3 (1)設(shè)置好 SmartSnippets 之后,點(diǎn)擊上圖中的 Open。 (2)點(diǎn)擊 Connect,連接我們的單片機(jī)。 ![]() 圖 4 (3)點(diǎn)擊 Erase,擦除 Flash。 ![]() 圖 5 (4)點(diǎn)擊 Browse,找到我們工程的.hex 文件。 ![]() 圖 6 (5)點(diǎn)擊 Burn,完成代碼下載。 ![]() 圖 7 代碼下載完成之后,運(yùn)行代碼,就能看到 LCD 上有顯示圖案。 ![]() 圖片 8 配套資料:https://www.fengke.club/GeekMart/su_fkZyGYgrp.jsp 配套視頻:https://www.fengke.club/GeekMart/su_fTSgUL3y3.jsp 套件地址:http://shop115904315.taobao.com 文件下載請(qǐng)點(diǎn)擊: ![]() |