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