首页
/
每日頭條
/
圖文
/
stm32驅動lcd電路
stm32驅動lcd電路
更新时间:2025-11-04 03:23:27

大家好,我是老耿,高職青椒一枚,一直從事單片機、嵌入式、物聯網等課程的教學。對于高職的學生層次,同行應該都懂的,老師在課堂上教學幾乎是沒什麼成就感的。正是如此,才有了借助頭條平台尋求認同感和成就感的想法。在這裡,我準備陸續把自己花了很多心思設計的教學課件分享出來,如果您正是一名單片機愛好者或是一名同行,歡迎點贊 關注,各位的支持是本人持續輸出的動力,多謝多謝!#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
推荐阅读
盧靖姗和吳京的合作過程
盧靖姗和吳京的合作過程
01一次吳京撥通了盧靖姗的電話,然後說了很多好話,目的就是要對方出演自己一部戲的女主角,當時盧靖姗第一反應就是問對方“要脫嗎?”,這樣回答好像有些滑稽,仔細想想也不是沒原因的,因為在《戰狼2》大火前,盧靖姗雖然有點知名度,可還做不了院線女主...
2025-11-04
給蘭花澆水正确方法
給蘭花澆水正确方法
給蘭花澆水,是養蘭花新手最不容易明白的一個方面。小齊,簡單的說一下。蘭花它是一種肉質根,就跟君子蘭一樣,它的根是一種很粗的大白根,這個根裡邊能夠儲存很多的水分。我們把蘭花土壤全部去掉,然後把它放到個通風好的地方去,十天半個月它這個根不會幹癟...
2025-11-04
5.7萬是奇數還是偶數
5.7萬是奇數還是偶數
5.7萬是奇數還是偶數?奇數和偶數是數字的重要屬性奇數偶數的一些特性是小學常考點,也是比較有意思的,接下來我們就來聊聊關于5.7萬是奇數還是偶數?以下内容大家不妨參考一二希望能幫到您!5.7萬是奇數還是偶數奇數和偶數是數字的重要屬性。奇數偶...
2025-11-04
開一個快遞代收點需要什麼
開一個快遞代收點需要什麼
開一個快遞代收點需要什麼?開一家快遞驿站,需要哪些經營手續?不少開店新手都想知道,開個快遞驿站到底要不要營業執照?擔心申請流程麻煩其實,開一家快遞驿站,手續還是非常簡單的,我來為大家科普一下關于開一個快遞代收點需要什麼?以下内容希望對你有幫...
2025-11-04
人與人之間最舒服的關系原話
人與人之間最舒服的關系原話
人與人之間最舒服的關系原話?網上看到一個提問:“當我有話不直說的時候,為什麼男友總是不明白我的心思?”,我來為大家科普一下關于人與人之間最舒服的關系原話?以下内容希望對你有幫助!人與人之間最舒服的關系原話網上看到一個提問:“當我有話不直說的...
2025-11-04
Copyright 2023-2025 - www.tftnews.com All Rights Reserved