tft每日頭條

 > 圖文

 > stm32中lcd顯示電路有什麼用

stm32中lcd顯示電路有什麼用

圖文 更新时间:2024-07-26 06:14:39

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

stm32中lcd顯示電路有什麼用(我在高職教STM32LCD液晶顯示)1


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

【學習目标】

  1. 了解LCD1602的工作原理
  2. 掌握LCD1602的工作時序
  3. 領悟軟件模拟時序的思路和方法
一、觀察外部認識LCD1602

大家學習這些電子器件,頭腦中要逐漸形成一種意識,不管是強大複雜的STM32,還是簡單的LED、三極管等等,都是有數據手冊的。不管是設計電路還是編寫程序,器件的數據手冊是我們最好的參考資料。LCD1602的數據手冊大家可以在網上很方便的找到,這裡我們隻挑手冊的重點講。

1.1 産品外觀

圖1所示的就是LCD1602的正面和背面,從它的名字我們就可以看出它的顯示容量,就是可以顯示2行,每行16個字符的液晶。至于它為什麼那麼厚,因為它不單純是塊屏,屏下還集成了驅動電路、背光電路以及顯示RAM。

stm32中lcd顯示電路有什麼用(我在高職教STM32LCD液晶顯示)2

圖1 LCD1602的産品外觀

1.2 電氣參數

接着來看它主要的技術參數,如下表所示。表中有兩個地方需要解釋一下:第一,LCD1602最佳工作電壓是5.0V,而STM32的工作電壓是3.3V,這就意味着它們不能共用一組電源。第二,在5V工作電壓下測量它的工作電流是2mA,這僅僅是指液晶消耗的電流,而它的背光是用LED做的,所以功耗不會太小,一二十毫安還是有的。基于這兩方面的需求,當連接LCD1602時,我們需要使用配套的電源适配器,并接到開發闆DC5V的插座上,如圖2所示。

stm32中lcd顯示電路有什麼用(我在高職教STM32LCD液晶顯示)3

表1 LCD1602的主要技術參數

stm32中lcd顯示電路有什麼用(我在高職教STM32LCD液晶顯示)4

圖2 使用電源适配器給LCD1602供電

1.3 硬件接口

LCD1602一共16個引腳(編号已在圖1中标出),每個引腳的功能,我們都可以在它的數據手冊上找到。而這些基本的信息,在我們設計電路和編寫代碼之前,必須先看明白,如下表所示。

stm32中lcd顯示電路有什麼用(我在高職教STM32LCD液晶顯示)5

表2 LCD1602引腳功能

1.3.1 電源和背光

電源1腳2腳以及背光電源15腳16腳,不用多說,正常接就可以了,1腳和16腳接地,2腳和15腳接5V電源。

1.3.2 顯示偏壓

3腳叫做顯示偏壓信号。大家注意到屏裡的小黑塊沒有,如圖3所示,當我們要顯示一個字符的時候,有的黑點顯示,有的黑點就不能顯示,這樣就可以實現我們想要的字符了。

stm32中lcd顯示電路有什麼用(我在高職教STM32LCD液晶顯示)6

圖3 液晶屏的字符點陣

3腳就是用來調整顯示的黑點和不顯示的之間的對比度,調整好了對比度,就可以讓我們的顯示更加清晰一些。在進行電路設計實驗的時候,通常的辦法是在這個引腳上接個電位器。通過調整電位器的分壓值,來調整3腳的電壓。而當産品批量生産的時候,我們可以把調好的阻值直接用簡單電路來實現。觀察我們開發闆上LCD1602部分的原理圖4,就直接使用了一個4.7K的定值電阻。

stm32中lcd顯示電路有什麼用(我在高職教STM32LCD液晶顯示)7

圖4 開發闆上的LCD1602原理圖

1.3.3 數據/命令選擇端口

4腳是數據/命令選擇端。對于液晶,有時候我們要發送一些命令,讓它實現我們想要的一些狀态,有時候我們要發給它一些數據,讓它顯示出來,液晶就通過這個引腳來判斷接收到的是命令還是數據。大家注意學會讀手冊,看到這個引腳描述裡:數據/命令選擇端,而後跟了(H/L)。它的意思就是當這個引腳是H(High)高電平時,是數據;當這個引腳是L(Low)低電平的時候,是命令。

1.3.4 讀/寫選擇端

5腳和4腳用法類似,功能是讀/寫選擇端。我們既可以寫給液晶數據或者命令,也可以讀取液晶内部的數據或狀态,就是控制這個引腳。因為液晶本身内部有RAM,實際上我們送給液晶的命令或者數據,液晶需要先保存在緩存裡,然後再寫到内部的寄存器或者RAM中,這個就需要一定的時間。所以我們進行讀寫操作之前,首先要讀一下液晶當前狀态,是不是在“忙”,如果不忙,我們可以讀寫數據,如果在“忙”,我們就需要等待液晶忙完了,再進行操作。讀狀态是常用的,不過讀液晶數據很少用,大家了解這個功能即可。

1.3.5 使能信号

6腳是使能信号,很關鍵,液晶的讀寫命令和數據,都要靠它才能正常讀寫,我們後邊結合時序再詳細講這個引腳怎麼用。

1.3.6 數據端口

7到14腳就是8個數據引腳了,我們就是通過這8個引腳讀寫數據和命令的。最後來看一下LCD1602與STM32引腳連接的原理圖和實物圖,分别如圖5和6所示。

stm32中lcd顯示電路有什麼用(我在高職教STM32LCD液晶顯示)8

圖5 引腳連接原理圖

stm32中lcd顯示電路有什麼用(我在高職教STM32LCD液晶顯示)9

圖6 實物連接

關于LCD1602與STM32連接的端口,需要注意以下三個問題:

第一,RS接的是PC6,RW接的是PA11,使能E接的是PC3,8位數據端口由高到低依次連接的是PC2 ~ PC0、PB9 ~ PB5,也就是說我們在做端口初始化的時候需要分别對GPIOA、GPIOB、GPIOC進行初始化配置。

第二,由于8位數據端口占了GPIOC的3位和GPIOB的5位,因此我們在讀寫數據的時候需要分别讀寫這兩組I/O口指定位上的數據,再把兩組數據組合起來。在編程時涉及了多處C語言的位操作,請大家後面閱讀代碼時注意。

第三,使能E連接的是PB4,而STM32在複位時,PA13/14/15 & PB3/4這些引腳默認配置為JTAG功能。這裡我們隻是把PB4當做普通I/O口來用,即禁用JTAG功能。因此,我們在對GPIO進行初始化的時候,需要額外再做兩項配置,如代碼清單1所示。

stm32中lcd顯示電路有什麼用(我在高職教STM32LCD液晶顯示)10

代碼清單1 初始化GPIO的額外配置

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

,

更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!

查看全部

相关圖文资讯推荐

热门圖文资讯推荐

网友关注

Copyright 2023-2024 - www.tftnews.com All Rights Reserved