国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

stm32 MCU液晶TM1622 HT1622驅(qū)動調(diào)試

這篇具有很好參考價值的文章主要介紹了stm32 MCU液晶TM1622 HT1622驅(qū)動調(diào)試。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

本文使用的例程軟件工程代碼如下

(1條消息) stm32MCU液晶TM1622HT1622驅(qū)動調(diào)試,源代碼,實際項目使用資源-CSDN文庫文章來源地址http://www.zghlxwxcb.cn/news/detail-640758.html

HT1622/HT1622G/TM1622是一款常用的LCD驅(qū)動芯片

TM1622/HT1622廠家不一樣,但是芯片功能基本上一直,硬件上基本上可以做到pin2pin兼容,這個需要根據(jù)自己的做微調(diào)整

以TM1622的資料為例,做如下說明

TM1622是256點內(nèi)存映象和多功能的LCD驅(qū)動專用芯片,TM1622的軟件配置特性使它適用于多種LCD應(yīng)用 場合,包括:LCD模塊和顯示子系統(tǒng)。用于連接主控制器和TM1622的管腳只有4或5條,TM1622還有一個節(jié)電命 令用于降低系統(tǒng)功耗。本產(chǎn)品性能優(yōu)良、質(zhì)量可靠。

功能特點

? 工作電壓2.4~ 5.2V

? 內(nèi)置32 KHz RC振蕩器

? 可外接32KHz頻率源作為時鐘輸入

? 內(nèi)置時基頻率源

? 內(nèi)置蜂鳴器輸出驅(qū)動,有兩種輸出頻率可選(2 KHz或者4 KHz)

? 內(nèi)置節(jié)電模式,可用于減少功耗

? 內(nèi)置時基發(fā)生器和看門狗(WDT)輸出

? 內(nèi)置32ⅹ8位顯示寄存器,32個SEG,8個COM輸出驅(qū)動, 1/4偏壓

? 四線串行接口 ? 提供VLCD管腳用于調(diào)整LCD操作電壓

? 三種數(shù)據(jù)訪問模式

? 八個時基/看門狗定時器時鐘源

? 數(shù)據(jù)模式和命令模式指令

? 四種封裝形式可選:LQFP44(長腳),LQFP44(短腳),LQFP52,LQFP64 內(nèi)部結(jié)構(gòu)框圖

ht1622驅(qū)動程序,嵌入式系統(tǒng),stm32,TM1622,HT1622,驅(qū)動,MCU

MCU典型接法

ht1622驅(qū)動程序,嵌入式系統(tǒng),stm32,TM1622,HT1622,驅(qū)動,MCU

?寫數(shù)據(jù)時序圖,這里不需要讀取,也不用看讀數(shù)據(jù)的時序

ht1622驅(qū)動程序,嵌入式系統(tǒng),stm32,TM1622,HT1622,驅(qū)動,MCU

?軟件命令列表

ht1622驅(qū)動程序,嵌入式系統(tǒng),stm32,TM1622,HT1622,驅(qū)動,MCU

需要詳細(xì)的,手冊,可以下載一份數(shù)據(jù)手冊看看

?實際項目原理圖設(shè)計如下

這里有點復(fù)雜,就是要支持兩款液晶,一個大液晶一個小液晶,其中YJ1是焊接大液晶的接口,YJ2是焊接小液晶的接口

下圖1處,是液晶的背光燈開關(guān)

2處是MCU控制液晶的接口,其中SPI_RD用0歐姆的電阻連接,可以考慮不需要讀取也液晶數(shù)據(jù),可以不焊接該電阻,空余出來一個MCU的管腳

3處是電平轉(zhuǎn)換后的TM1622的控制管腳

ht1622驅(qū)動程序,嵌入式系統(tǒng),stm32,TM1622,HT1622,驅(qū)動,MCU

MCU的控制管腳設(shè)計如下

ht1622驅(qū)動程序,嵌入式系統(tǒng),stm32,TM1622,HT1622,驅(qū)動,MCU

實際項目使用的控制管腳設(shè)計比較多,這里比較簡單,提取出來對應(yīng)TM1622的控制管腳

對應(yīng)上述原理圖,軟件實現(xiàn)的控制管腳接口,如下所示


#define LCD_CS_L          {PBout(7) = 0;}
#define LCD_CS_H          {PBout(7) = 1;}

#define LCD_RD_L          {PBout(6) = 0;}  
#define LCD_RD_H          {PBout(6) = 1;}  

#define LCD_WR_L          {PBout(8) = 0;}      
#define LCD_WR_H          {PBout(8) = 1;}     

#define LCD_DAT_L         {PBout(9) = 0;}      
#define LCD_DAT_H         {PBout(9) = 1;} 

#define LCD_BLK_EN_ON     {PBout(13) = 0;}      
#define LCD_BLK_EN_OFF    {PBout(13) = 1;} 

stm32cube的關(guān)鍵設(shè)計如下

IO的配置,PB6/PB7/PB8/PB9/PB13配置為輸出模式

其中需要注意的是,PB6連接的tm1622的數(shù)據(jù)讀取管腳,這個管腳實際上沒有使用,配置成輸入輸出都無所謂?

ht1622驅(qū)動程序,嵌入式系統(tǒng),stm32,TM1622,HT1622,驅(qū)動,MCU

時鐘的配置

時鐘采用外部時鐘8M,倍頻到72M供系統(tǒng)使用?

ht1622驅(qū)動程序,嵌入式系統(tǒng),stm32,TM1622,HT1622,驅(qū)動,MCU

系統(tǒng)主函數(shù),主要是添加了initHT1622()測試


/**
  * @brief  The application entry point.
  * @retval int
  */
int main(void)
{
  /* USER CODE BEGIN 1 */

  /* USER CODE END 1 */

  /* MCU Configuration--------------------------------------------------------*/

  /* Reset of all peripherals, Initializes the Flash interface and the Systick. */
  HAL_Init();

  /* USER CODE BEGIN Init */

  /* USER CODE END Init */

  /* Configure the system clock */
  SystemClock_Config();

  /* USER CODE BEGIN SysInit */

  /* USER CODE END SysInit */

  /* Initialize all configured peripherals */
  MX_GPIO_Init();
  MX_USART1_UART_Init();
  /* USER CODE BEGIN 2 */
  initHT1622();
  /* USER CODE END 2 */

  /* Infinite loop */
  /* USER CODE BEGIN WHILE */
  while (1)
  {
    /* USER CODE END WHILE */

    /* USER CODE BEGIN 3 */
  }
  /* USER CODE END 3 */
}

TM1622的寫函數(shù),這些函數(shù)是根據(jù)手冊寫時序圖調(diào)試出來的

當(dāng)然也和MCU的時鐘有關(guān),這里配置為72MHZ,如果需要移植該驅(qū)動,則需要根據(jù)自己的系統(tǒng)時鐘修改如下函數(shù)的延時,當(dāng)然也需要修改控制管腳

void Write_HT1622_Byte(unsigned char Data,unsigned char length)
{
    unsigned char i,Temp=0x80;
    for (i=0;i<length;i++)
    {

        if (Data&Temp)
				{
        LCD_DAT_H;//數(shù)據(jù)線置1
				}
        else
				{
        LCD_DAT_L;//數(shù)據(jù)線置0
				}
        Temp>>=1; //準(zhǔn)備下一位
        
        LCD_WR_L; //“寫”時鐘置0        
        __NOP();
        __NOP();
        __NOP();
        LCD_WR_H; //“寫”時鐘置1
    }
}

液晶初始化

void initHT1622(void)
{
    uint8_t i;
    //InitLcdPin();
    
   // for(i = 0 ;i < 100; i++)
    
    {

    Write_HT1622_Command(SYSDIS);//關(guān)閉系統(tǒng)振蕩器和LCD驅(qū)動
    Write_HT1622_Command(SYSEN); //打開系統(tǒng)振蕩器
    Write_HT1622_Command(LCDOFF);//關(guān)閉LCD顯示
    Write_HT1622_Command(LCDON); //打開LCD顯示
    }
    //Write_HT1622_Command(0x01);
   // Write_HT1622_Command(0x29);
    //Write_HT1622_Command(0x18);
    //Write_HT1622_Command(0x01);
    //Write_HT1622_Command(0x03);

    

      
    //清屏
    
    for(i = 0; i < 64; i++)
    {
      Write_HT1622_Data(i,0);
    }

}

本文使用的例程軟件工程代碼如下

(1條消息) stm32MCU液晶TM1622HT1622驅(qū)動調(diào)試,源代碼,實際項目使用資源-CSDN文庫

到了這里,關(guān)于stm32 MCU液晶TM1622 HT1622驅(qū)動調(diào)試的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進(jìn)行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • 合泰HT32F52352入門教程(# 1W+字 博客幫您快速上手,拿獎不是夢 #)

    合泰HT32F52352入門教程(# 1W+字 博客幫您快速上手,拿獎不是夢 #)

    這篇文章適合已經(jīng)有單片機(jī)基礎(chǔ),比如STM32。熟悉STM32庫函數(shù)(標(biāo)準(zhǔn)庫最好,HAL庫要適應(yīng)一下手寫配置) 這篇文章的代碼均經(jīng)過本人燒寫驗證,幫你快速上手HT32F52352 如果覺得對你有幫助,記得點贊(別老是放在收藏夾里吃灰) 更多有意思的文章點擊“我的主頁” --------??

    2023年04月22日
    瀏覽(16)
  • STM32物聯(lián)網(wǎng)項目——TM1620驅(qū)動數(shù)碼管顯示

    STM32物聯(lián)網(wǎng)項目——TM1620驅(qū)動數(shù)碼管顯示

    程序功能: ? ?? ?TM1620 這里主要說說關(guān)于TM1620指令與數(shù)據(jù)傳輸,其他概述等內(nèi)容詳細(xì)見TM1620手冊: 鏈接:https://pan.baidu.com/s/1C4I_oy9n9QjSPu8UD-FJRg? 提取碼:9ec0? --來自百度網(wǎng)盤超級會員V2的分享 TM1620一共有4條指令: (1) 顯示模式命令設(shè)置:? 該指令用來設(shè)置選擇段和位的個數(shù)

    2024年01月16日
    瀏覽(32)
  • 【STM32】驅(qū)動LCD1602液晶8線并、4線并

    【STM32】驅(qū)動LCD1602液晶8線并、4線并

    目錄 LCD1602液晶 引腳定義說明 字庫概述? LCD1602原理圖 ?LCD1602時序圖 LCD1602代碼 接線圖 用結(jié)構(gòu)體的方式顯示字符 LCD1602動態(tài)顯示數(shù)字 4線驅(qū)動LCD1602 液晶模塊和數(shù)碼管相比,液晶模塊會顯得更加專業(yè)、漂亮。液晶顯示器以其體積小、功耗低、超薄、輕巧、顯示內(nèi)容豐富、使用方

    2024年02月16日
    瀏覽(18)
  • STM32管腳模擬協(xié)議驅(qū)動雙路16位DAC芯片TM8211

    STM32管腳模擬協(xié)議驅(qū)動雙路16位DAC芯片TM8211

    TM8211是一款國產(chǎn)的低成本雙路16位DAC驅(qū)動芯片,可以應(yīng)用于普通數(shù)模轉(zhuǎn)換領(lǐng)域及音頻轉(zhuǎn)換領(lǐng)域等。這里介紹STM32 HAL庫驅(qū)動TM8211的邏輯,時序和代碼。 TM8211的功能特性為: TM8211的內(nèi)部電路功能框圖為: TM8211支持典型的3.3V供電和5V供電,在驅(qū)動后進(jìn)行電壓輸出時, 需要注意,如以

    2024年02月16日
    瀏覽(16)
  • 四旋翼電調(diào)驅(qū)動程序(STM32F1)

    使用stm32f103c8t6驅(qū)動四旋翼電調(diào),包括解鎖和指定轉(zhuǎn)速旋轉(zhuǎn) main.c

    2024年02月09日
    瀏覽(20)
  • stm32 AW9523B IO擴(kuò)展芯片擴(kuò)展io口驅(qū)動程序

    對AW9523B驅(qū)動模塊進(jìn)行初始化 對AW9523B驅(qū)動模塊進(jìn)行操作 初始化AW9523B單個引腳 讀取AW9523B單個引腳 讀取AW9523B單個端口 用于存儲單個ic中的數(shù)據(jù),如需管理更多的結(jié)構(gòu)體,可以再增加定義 3060793968@qq.com?

    2024年01月20日
    瀏覽(68)
  • STM32F103C8T6驅(qū)動LCD1602液晶篇

    1 電路連接 LCD1602有5V供電和3.3V供電,此次采用3.3V供電。 LCD1602共有16個引腳,不做一一介紹,其中主要的是第3引腳,3.3V背光電源供電時,接100-1K電阻,5V供電時,接2k-4.7k電阻。其余正常連接就行。 2 遇到的問題 2.1 液晶不顯示 仿真驗證時可以顯示的,但是實物連接后還是不

    2024年02月07日
    瀏覽(26)
  • STM32燒寫程序:ST-Link驅(qū)動下載和安裝

    在進(jìn)行STM32微控制器的燒寫程序之前,我們需要先安裝ST-Link驅(qū)動程序,并確保其能夠正確連接到目標(biāo)設(shè)備。本文將提供詳細(xì)的步驟說明,以幫助您下載和安裝ST-Link驅(qū)動程序。 步驟1:下載ST-Link驅(qū)動程序 首先,我們需要從STMicroelectronics官方網(wǎng)站下載ST-Link驅(qū)動程序。請按照以下

    2024年01月15日
    瀏覽(25)
  • 【洋桃一號板】STM32F103CBT6標(biāo)準(zhǔn)庫函數(shù)驅(qū)動TM1640點亮數(shù)碼管

    【洋桃一號板】STM32F103CBT6標(biāo)準(zhǔn)庫函數(shù)驅(qū)動TM1640點亮數(shù)碼管

    一、今天介紹如何使用STM32F103CBT6驅(qū)動TM1640點亮數(shù)碼管,硬件用的洋桃開發(fā)板,點亮后效果如下,六個數(shù)碼管依次顯示0.1.2.3.4.5.6.7 硬件原理圖如下,只用到了單片機(jī)的兩個IO口即可實現(xiàn)上圖的效果,該開發(fā)板上用的是PA11和PA12兩個IO口,用來模擬IIC通信,其中PA11接SCLK,PA12接D

    2024年02月16日
    瀏覽(18)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包