chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

如何將I2C LCD與STM32F103C8T6連接?

單片機 ? 來源:單片機 ? 2020-05-14 11:01 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

在本教程中,我將向您展示如何將I2C LCD與基于STM32F103C8T6 MCU的STM32 Blue Pill Board接口。如果您還記得“將16X2 LCD與STM32F103C8T6接口”的教程,我已經向您展示了將LCD與STM32連接并顯示一些信息有多么簡單。該項目將非常有趣,因為我將利用I2C通訊與16×2 LCD進行通訊。

介紹

小型的字母數字字符顯示器(如非常流行的16×2 LCD顯示器)是非常有用的小組件,因為您可以使用它們來顯示與項目相關的一些重要信息。LCD上顯示的信息可以與項目本身相關,如從溫度傳感器讀取的信息或特殊數據(如調試消息或錯誤代碼)。

我在很多項目中都使用了16×2 LCD顯示模塊,其中包括8051,基于ARM7的LPC2148,ATmega8,Arduino UNO和PIC等各種微控制器。

這一切都很好,但是對于16×2 LCD甚至更大的20×4 LCD顯示器來說,這是一個小問題,因為與微控制器接口需要很多引腳。即使在4位數據模式下,LCD至少也需要微控制器的6個引腳(假設操作為寫操作,即R / W連接到GND,則四個為數據引腳,一個為寄存器選擇引腳,一個為使能引腳)。

使用微控制器的六個引腳連接到字符顯示器似乎并不重要,但是如果您的項目非常復雜,則MCU的每個引腳似乎都非常重要。

如何將I2C LCD與STM32F103C8T6連接?

PCF8574 GPIO擴展器IC來了。它是一個專用模塊,用于將16×2 LCD顯示屏與所有鈴聲連接起來,例如,用于LCD對比度調整的10KΩPOT,用于I2C通信的上拉電阻,用于與微控制器連接的I2C引腳等。

您可以簡單地將此模塊連接到16×6 LCD顯示器的背面,然后將I2C引腳連接到STM32 Blue Pill Board的相應I2C引腳。就這么簡單。

PCF8574模塊

在本“將PCF8574與Arduino接口”教程中,我已經討論過PCF8574 GPIO擴展器IC。因此,我將不作詳細介紹,而只是簡要概述。

PCF8574是一個16引腳IC,用作I2C至8位并行IO擴展器。這意味著使用微控制器的I2C通信,可以有效地將微控制器的IO引腳數增加8。

購買PCF8574模塊時要記住的重要一點是,市場上有兩種類型的模塊可供選擇。一種是通用的IO擴展器模塊,也可以用作IO擴展器。

另一種類型的模塊也基于PCF8574 IC,但其設計方式使其只能與LCD顯示器(即16×2甚至20×4 LCD)一起使用。因此,對于該項目,您必須選擇后者,因為它具有與連接16X2 LCD顯示器有關的所有必要組件和連接。

所需組件

基于STM32F103C8T6 MCU的STM32藍色藥丸板

基于PCF8574 IC的LCD連接器模塊

16×2液晶顯示器

連接線

USBUART轉換器模塊(如果通過UART編程

電路圖

下圖顯示了I2C與基于STM32藍色藥丸板的STM32F103C8T6 MCU的接口電路圖。

連接說明

該項目的連接非常簡單。只需將PCF8574模塊插入16×2 LCD的背面即可。連接之前,請檢查LCD和PCF8574模塊的引腳。如果連接正確,將可在顯示屏右側輕松訪問PCF8574模塊上的I2C引腳。

現在,將PCF8574模塊的SDA引腳連接到STM32的PB7,并將模塊的SCL引腳連接到STM32的PB6。將PCF8574模塊的VCC和GND引腳連接到5V和GND。這樣就完成了必要的連接。

識別PCF8574模塊的從站地址

在為接口I2C LCD顯示器編程STM32之前,我們需要計算PCF8574模塊的從地址。由于I2C通信中的從地址非常重要,因此您必須事先知道它。

您可以參考PCF8574 IC的數據手冊以及PCF8574 I2C LCD模塊的示意圖來計算從機地址。如果您認為這是一個乏味的過程,那么不用擔心。還有另一種使用以下代碼來計算從站地址的方法。該代碼將計算從機地址并將其顯示在串行監(jiān)視器上。

代碼

在我的情況下,從機地址為0X3F。因此,我必須在STM32的實際程序中使用此從站地址。

為I2C LCD顯示編程STM32

在將I2C LCD與STM32F103C8T6 MCU接口之后,我們現在可以編寫程序了。為此模塊開發(fā)了一個名為“ LiquidCrystal_I2C”的特殊庫。您可以從以下網站下載該庫這個:https://github.com/fdebrabander/Arduino-LiquidCrystal-I2C-library鏈接。提取下載的zip文件的內容,并將其放在本地Arduino安裝的library文件夾中。

使用從先前代碼獲得的從站地址,并使用相同的地址初始化LCD模塊。還要指定LCD的每行字符數和LCD的行數,即16和2。

使用庫的“打印”功能,可以在LCD上顯示所需的字符。

代碼

結論

此處實現了一個簡單的項目,用于演示如何將I2C LCD與基于STM32F103C8T6 MCU的Blue Pill Board接口。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯系本站處理。 舉報投訴
  • 接口
    +關注

    關注

    33

    文章

    9439

    瀏覽量

    156071
  • STM32
    +關注

    關注

    2305

    文章

    11118

    瀏覽量

    370928
  • I2C
    I2C
    +關注

    關注

    28

    文章

    1547

    瀏覽量

    130422

原文標題:如何將I2C LCD與STM32F103C8T6連接 - 【STM32教程】

文章出處:【微信號:aidanpianji,微信公眾號:單片機】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    f103c8t6使用adc采樣時程序無法正常工作怎么解決?

    我在學習使用stm32f103c8t6的adc的使用時遇到了這個問題。 是按照教程一步一步操作的:這是教程地址:https://blog.csdn.net/WTF___000/article
    發(fā)表于 10-13 07:25

    CherryUSB +STM32F103C8 example usb cdc device不識別是怎么回事?

    stm32f103c8t6 配置cdc,使用cubeMX 配置生成xxx_msp.c 為什么 放開 CONFIG_USBDEV_SETUP_LOG_PRINT 發(fā)現 usb 中斷 一直未能進入 ____usbd_event_ep0_setup_complete_hand
    發(fā)表于 09-10 07:03

    深入剖析I2C協議

    ,I2C也是一種可以多主設備,多從設備的總線協議,通過地址索引,I2C可以使能所需從設備,I2C的出現主要是用來實現不同集成電路組件之間的控制功能,比如通過I2C協議,
    的頭像 發(fā)表于 08-21 15:10 ?3231次閱讀
    深入剖析<b class='flag-5'>I2C</b>協議

    STM32F103c8上做DLQR最優(yōu)控制算法的C編程資料

    這是我近期做的一個項目--基于STM32F103c8的DLQR控制算法的C編程,涉及DLQR最優(yōu)控制算法、嵌入式STM32F103編程、CMSIS-DSP庫使用。? ??附有完整的程序。
    發(fā)表于 07-23 15:30 ?0次下載

    STM32F103C6T6 DCAC逆變器原理圖

    STM32F103C6T6 DCAC逆變器原理圖
    發(fā)表于 05-19 17:48 ?2次下載

    stm32f103c8t6主控芯片無人機原理圖

    stm32f103c8t6主控芯片無人機原理圖
    發(fā)表于 04-29 17:02 ?2次下載

    STM32F103C8T6無法選擇外部晶振怎么解決?

    我從網上購入了STM32F103C8T6的核心板,板上有外部晶振。但我使用STM32CubeMX生成項目時,卻無法選擇外部晶振(如下圖)。請問要在哪里設置才能選擇外部晶振呀?
    發(fā)表于 04-28 07:03

    基于STM32F103C8T6控制多路VL53L0X激光測距傳感器

    使用STM32F103C8T6的一條IIC總線控制4個激光測距傳感器,我使用的激光測距傳感器是亞博智能的 地址相同改不了,我要怎么控制多路,求指點
    發(fā)表于 04-23 18:23

    STM32F103C8T6開發(fā)板最小系統(tǒng)原理圖

    電子發(fā)燒友網站提供《STM32F103C8T6開發(fā)板最小系統(tǒng)原理圖》資料免費下載
    發(fā)表于 03-24 09:09 ?82次下載

    stm32f103c8t6沒有對flash進行任何操作,flash的內容發(fā)生變化了,是哪些原因?

    stm32f103c8t6:沒有對flash進行任何操作,flash的內容發(fā)生變化了。具體是哪些原因?如何調試排查原因。
    發(fā)表于 03-14 07:14

    stm32f103c8t6編碼器模式在keil的debug調試時遇到的問題求解

    stm32f103c8t6編碼器模式在keil的debug調試時,手動把編碼器的計數器置為一個數500(比如計數器溢出值是4000),然后在在讓編碼器繼續(xù)開始輸出,此時計數器的計數變?yōu)樵瓉碚5膬杀读?,直到計數器溢出一次就變正常?/div>
    發(fā)表于 03-14 06:06

    STM32F103C8T6使用CubeIDE燒錄運行報硬件錯誤,相同代碼MDK燒錄卻可以正常運行,為什么?

    自制PCB使用STM32F103C8T6,通過STM32CubeMX生成了CubeIDE項目和MDK項目,編譯下載相同的代碼CubeIDE不能正常執(zhí)行,經過調試發(fā)現進入了硬件錯誤循環(huán)。而使用MDK燒錄卻沒有任何問題,完美執(zhí)行代碼,請問這是為什么?
    發(fā)表于 03-12 06:18

    STM32F103C8T6 PA2無PWM輸出怎么解決?

    STM32F103C8T6最小系統(tǒng)PA0/PA1/PA2/PA3為PWM輸出控制舵機,配置相同,PA2始終無輸出,PA0/PA1/PA3輸出正常;用試驗軟件對STM32F103C8T6
    發(fā)表于 02-27 08:13

    基于STM32F103C8T6 ADXL345 加速度傳感器的計步器設計指南和代碼

    基于 STM32F103C8T6 微控制器和 ADXL345 加速度傳感器的計步器設計相關內容,包括 ADXL345 傳感器的工作原理、初始化與數據讀寫操作,以及基于該傳感器的計步器算法實現
    的頭像 發(fā)表于 01-17 17:38 ?2635次閱讀

    ADS11與主芯片STM32F030R8T6通信失敗的原因?

    ADS11與主芯片STM32F030R8T6通信,通信失敗,MCU的IO口模擬I2C(PC10和PC11))通過串聯電阻(2個100歐))與ADS11連接,上拉電阻4.7k,電壓4.
    發(fā)表于 12-10 07:41