Labview&STM32實驗:SD卡的圖片檔案讀取與顯示

觸控式螢幕上顯示一些輸入控制元件(如開關按鍵、字串輸入框、指示燈等)以支援外部命令的互動,成為嵌入式系統中必不可少的一部分,尤其是那些沒有RTOS和GUI的嵌入系統。

通常解決這類問題的最直接方法就是,在顯示屏上顯示出的各種格式(BMP、JPEG、JPG、GIF、PNG)的圖片。比如,要顯示出一個按鈕,就可以先將按鈕圖片製作好存在儲存器上,然後直接由STM32讀取後進行解碼,再將其顯示到LCD上。

圖片顯示需要先將原始資料進行解碼處理(如使用圖片解碼庫),然後再顯示屏上繪製。

各格式的底層驅動函式,可以在網上查詢,有詳細的C語言驅動函式。

本次實驗實現在LCD上顯示一張動畫效果的圖片(GIF格式)。我們事先將一張GIF圖片放在SD卡根目錄下的Pic資料夾中,然後由STM32進行讀取解析並繪製在LCD上。

實驗預期效果:LCD初始化完成後,點亮LCD;接著初始化FATFS檔案系統,並返回SD卡型別說明符;再初始化畫筆,為繪圖申請開闢特定的記憶體資源;最後在LCD指定區域顯示出GIF所包含的每幀圖片。

先將要顯示的圖片放置到SD指定目錄上。

Labview&STM32實驗:SD卡的圖片檔案讀取與顯示

硬體電路(SD卡)

Labview&STM32實驗:SD卡的圖片檔案讀取與顯示

編寫程式

一, 程式步驟:

1, LCD初始化

2, SD檔案系統初始化

3, 畫筆初始化

4, 圖片繪圖顯示

二, 程式編寫:

1, LCD初始化

Labview&STM32實驗:SD卡的圖片檔案讀取與顯示

2, SD檔案系統初始化

Labview&STM32實驗:SD卡的圖片檔案讀取與顯示

3, 畫筆初始化

在進行圖片顯示之前,需要初始化一次畫筆,為其開闢相應的資源和記憶體空間。

Labview&STM32實驗:SD卡的圖片檔案讀取與顯示

While迴圈

Labview&STM32實驗:SD卡的圖片檔案讀取與顯示

4, 圖片繪圖顯示

在指定區域顯示指定的圖片。

Labview&STM32實驗:SD卡的圖片檔案讀取與顯示

Labview&STM32實驗:SD卡的圖片檔案讀取與顯示

Show_Success返回值意義:

0x00//顯示成功

0x27//圖片格式錯誤

0x28//圖片尺寸錯誤

0x29//視窗設定錯誤

0x11//記憶體錯誤

完成程式

Labview&STM32實驗:SD卡的圖片檔案讀取與顯示

3, 編譯,下載

前面板顯示的資訊:

Labview&STM32實驗:SD卡的圖片檔案讀取與顯示

顯示屏上的顯示:

Labview&STM32實驗:SD卡的圖片檔案讀取與顯示