首页
/
每日頭條
/
圖文
/
stm32驅動lcd電路
stm32驅動lcd電路
更新时间:2026-06-29 03:12:02

大家好,我是老耿,高職青椒一枚,一直從事單片機、嵌入式、物聯網等課程的教學。對于高職的學生層次,同行應該都懂的,老師在課堂上教學幾乎是沒什麼成就感的。正是如此,才有了借助頭條平台尋求認同感和成就感的想法。在這裡,我準備陸續把自己花了很多心思設計的教學課件分享出來,如果您正是一名單片機愛好者或是一名同行,歡迎點贊 關注,各位的支持是本人持續輸出的動力,多謝多謝!#30天學會STM32##單片機#

stm32驅動lcd電路(我在高職教STM32LCD液晶顯示)1

前邊我們講解了LED、按鍵和蜂鳴器的應用,這三類器件本身工作原理十分簡單,因此我們的重點是放在STM32的GPIO上面。這一章我們來學習一下開發闆配套的那塊厚厚的液晶屏——LCD1602,聚焦的是這個器件本身的特點和工作時序。因此,我們需要熟讀它的數據手冊,因為手冊裡告訴了編程的要點、參數、時序等。閱讀器件手冊是做單片機和嵌入式開發必備的基本能力,我們就從這一章開始鍛煉起來吧。為了不讓篇幅太長,本章打算分四個部分來講解,本文是第四部分。

【學習目标】

  1. 了解LCD1602的工作原理
  2. 掌握LCD1602的工作時序
  3. 領悟軟件模拟時序的思路和方法

四、字符跳動顯示實驗

我們在前面的液晶指令描述中可以看到,LCD1602還支持光标和屏幕移動,下面我們就通過兩個實驗來感受一下動态顯示的效果。

4.1 任務描述

這個實驗是讓字符串裡的每個字符逐個跳出來顯示,我們将實驗效果分解在圖18中,中間部分做了一些省略,同時也通過視頻進行了展現。

stm32驅動lcd電路(我在高職教STM32LCD液晶顯示)2

圖18 字符跳動顯示效果

4.2 工程源碼剖析

對于底層的lcd1602.c和lcd1602.h驅動文件來說,我們盡量不去改動。控制字符跳出的代碼在主程序裡實現,見如下代碼清單15。

stm32驅動lcd電路(我在高職教STM32LCD液晶顯示)3

代碼清單15 字符跳動顯示主程序源碼

五、液晶滾動顯示實驗5.1 任務描述

這個實驗是讓整個屏幕畫面整體向左或向右滾動顯示,我們将實驗效果分解在圖19中,中間部分做了一些省略,同時也通過視頻進行了展現。

stm32驅動lcd電路(我在高職教STM32LCD液晶顯示)4

圖19 液晶滾動顯示效果

5.2 工程源碼剖析

同理,還是隻修改主程序裡的控制代碼,見如下代碼清單16。

stm32驅動lcd電路(我在高職教STM32LCD液晶顯示)5

代碼清單16 液晶滾動顯示主程序源碼

六、液晶顯示功能的擴展

在上面的實驗中,我們通過Lcd1602_ShowStr()函數實現了字符串信息的顯示。但不知你是否考慮過,倘若顯示的内容不是字符的類型,比如傳感器采集溫濕度值、ADC采集的電壓值等,這些數據都是浮點類型的,也想通過液晶顯示出來,該如何處理呢?

針對以上問題,我們補充一個顯示函數Lcd1602_printf(),來實現多種數據類型的顯示,就像使用printf()函數那樣,可以通過%d、%f、%s這樣的形式來指定顯示内容的數據類型。該函數用到了C語言中解決變參問題的操作方式,想詳細了解這部分知識的同學請自行搜索查閱,這裡不展開。源碼見如下代碼清單17。

stm32驅動lcd電路(我在高職教STM32LCD液晶顯示)6

代碼清單17 Lcd1602_Printf()函數源碼

有了這個函數,我們就可以在主程序中像使用printf()函數那樣在液晶屏上“打印”需要的内容了,代碼清單18給了一個簡單示例。

stm32驅動lcd電路(我在高職教STM32LCD液晶顯示)7

代碼清單18 使用帶變參顯示函數示例

可以看到,帶變參的Lcd1602_Printf()函數更靈活通用,使我們不必再糾結顯示内容究竟是什麼數據類型,這是它的優勢。那有沒有劣勢呢?當然有了,在顯示同樣内容的情況下,使用Lcd1602_Printf()函數比用Lcd1602_ShowStr()函數編譯出來的代碼量大了不是一點兒,如圖20所示。

stm32驅動lcd電路(我在高職教STM32LCD液晶顯示)8

圖20 編譯的代碼量對比

(第四部分完,共四部分)

,
Comments
Welcome to tft每日頭條 comments! Please keep conversations courteous and on-topic. To fosterproductive and respectful conversations, you may see comments from our Community Managers.
Sign up to post
Sort by
Show More Comments
推荐阅读
曆史上洛陽地區下轄多少縣(1952年河南洛陽下轄11個縣)
曆史上洛陽地區下轄多少縣(1952年河南洛陽下轄11個縣)
  河南洛陽是我國的四大古都之一,建都時間算的話是我國的第一大古都,長期是河南府的駐地。其實河南省名稱的确定就是舊來自于洛陽河南府,不過奇怪的是洛陽從來沒有做過河南省的省會,可能跟地理位置有關系,實在太偏西了。發展到如今洛陽僅下轄7個縣,不過仍然是中西部地區非省會地級市 GDP第1名,而在1952年河南洛陽下轄11個縣,廣大的豫西地區都是洛陽專區管轄,曾經鼎...
2026-06-29
最新豬市行情與走勢分析(豬市走向本輪屠牛完成)
最新豬市行情與走勢分析(豬市走向本輪屠牛完成)
  學習養殖技術、了解最新行情,在線咨詢養殖難題和老師零距離交流,請點擊右上角關注↗豬大夫在線。      想想從3月份開始至今的豬市,真的是一場絕地之戰,屠宰企業的屠牛動作穩準狠,把養豬人逼到了絕地之内。而随着牛豬的出欄,養殖戶算是把手裡的雷扔出去了,現在還怕什麼壓價,盡管來,如今豬價開始絕地反擊,超跌之後的修複。   其次,在這次跌價事件中,屠宰企業不但...
2026-06-29
楊潔為何後悔拍西遊(三次邀請王伯昭)
楊潔為何後悔拍西遊(三次邀請王伯昭)
  在82版西遊記中,要說誰是最貴的演員,估計很多人會說是六小齡童,也有人可能會說是馬蘭,也就是飾演唐僧母親的演員,當年千裡送馬蘭的故事,還不時被人說起,在西遊記裡最貴的演員其實是飾演小白龍的演員王伯昭,總共出演了3集,片酬卻高達1500,當年劇組經費緊張,各種省吃儉用,按照楊潔導演的性格,肯定是不會花這麼多錢請王伯昭的,那到底是誰請的呢?      當年在...
2026-06-29
擦洗油垢最好清潔劑(日本百年油污清潔劑)
擦洗油垢最好清潔劑(日本百年油污清潔劑)
     掐指一算,年底了,又到了一年一度大掃除的時候。      如果要問什麼地方是打掃難點? 那就非廚房莫屬。   竈台上燒焦幹涸的污漬,鍋底下厚重發黴的油漬,以及水槽裡長滿毛毛的水垢......每次清潔起來都讓人抓狂。      買了一大堆清潔劑,瓶瓶罐罐占地方不說,清潔效果還不盡如人意。      直到小編發現了它-CLEALION重油清潔劑。   ...
2026-06-29
元啟為什麼是白絕兒子(千古玦塵後池生了個兒子)
元啟為什麼是白絕兒子(千古玦塵後池生了個兒子)
  由周冬雨、許凱領銜主演,張嘉倪、劉學義等主演的古裝玄幻仙俠劇《千古玦塵》正在熱播當中。   現如今,該劇已經開啟了超前點播,正片直接從原本的第二十八集更新到了三十八集,預告片也順帶着更新到了第四十四集。      後池生了個兒子根據四十三集和四十四集的預告片來分析,後池已經覺醒為主神上古。   她身為後池時所生的兒子也已經長大。   不似四十二集的預告片...
2026-06-29
Copyright 2023-2026 - www.tftnews.com All Rights Reserved