產(chǎn) LED 驅(qū)動(dòng)芯片|2 線串口實(shí)現(xiàn) 4 位數(shù)碼管 + 7×4 矩陣鍵盤完整解析)
在小家電、溫控面板、測(cè)量?jī)x表等產(chǎn)品開(kāi)發(fā)中經(jīng)常同時(shí)需要數(shù)碼管顯示和矩陣按鍵輸入。傳統(tǒng)方案分開(kāi)選用 LED 驅(qū)動(dòng)芯片外加獨(dú)立鍵盤掃描會(huì)占用大量單片機(jī) IO 資源外圍器件多PCB 布線復(fù)雜。無(wú)錫中微愛(ài)芯的AiP650E是一顆高集成度二合一驅(qū)動(dòng)芯片僅需要 MCU 的 2 個(gè) IO 口就可以完成 8 段 4 位共陰極數(shù)碼管驅(qū)動(dòng)同時(shí)實(shí)現(xiàn) 7×4 矩陣鍵盤檢測(cè)還支持組合按鍵、多級(jí)亮度調(diào)節(jié)內(nèi)置振蕩與上電復(fù)位非常適合消費(fèi)類電子產(chǎn)品開(kāi)發(fā)。實(shí)際項(xiàng)目選型過(guò)程中經(jīng)常遇到供貨波動(dòng)、成本管控的需求TM1650天微、YL1650遠(yuǎn)樂(lè)是行業(yè)內(nèi)最常用的對(duì)標(biāo)與可互相替代的三顆芯片。本文結(jié)合芯片手冊(cè)梳理硬件要點(diǎn)、通信協(xié)議、軟件注意事項(xiàng)同時(shí)對(duì)比 TM1650、YL1650 之間的差異與替換注意事項(xiàng)方便硬件工程師與單片機(jī)開(kāi)發(fā)者快速上手選型。一、芯片核心特性以及競(jìng)品橫向?qū)Ρ華iP650E 為共陰極 LED 驅(qū)動(dòng)專用電路集成數(shù)據(jù)鎖存、LED 驅(qū)動(dòng)、鍵盤掃描、輝度調(diào)節(jié)電路支持 24 小時(shí)不間斷連續(xù)工作抗干擾能力強(qiáng)。三顆芯片引腳定義、寄存器地址、指令集高度兼容均為 DIP?16 / SOP?16 封裝硬件 PCB 可以直接兼容但是電氣參數(shù)、電壓范圍、靜電指標(biāo)存在細(xì)微差別。表格項(xiàng)目AiP650ETM1650天微YL1650遠(yuǎn)樂(lè)顯示規(guī)格8 段 ×4 位共陰極8/7 段 ×4 位共陰極8 段 ×4 位共陰極段驅(qū)動(dòng)電流≥25mA≥25mA≥25mA位驅(qū)動(dòng)電流≥150mA≥150mA≥150mA鍵盤矩陣7×428 按鍵支持 4 組組合鍵7×428 按鍵支持 4 組組合鍵7×428 按鍵支持 4 組組合鍵亮度等級(jí)8 級(jí)可調(diào)8 級(jí)可調(diào)8 級(jí)可調(diào)通信接口兩線類 I2CCLKDIO帶 ACK 應(yīng)答兩線類 I2CCLKDAT帶 ACK 應(yīng)答兩線類 I2CCLKDIO帶 ACK 應(yīng)答內(nèi)置電路RC 振蕩、上電復(fù)位RC 振蕩、上電復(fù)位RC 振蕩、上電復(fù)位供電電壓3.0?5.5V2.8?5.5V2.5?5.5V封裝DIP?16、SOP?16DIP?16、SOP?16DIP?16、SOP?16關(guān)鍵差異國(guó)產(chǎn)中微愛(ài)芯溫度?40~85℃原廠天微市場(chǎng)存量大國(guó)產(chǎn)替代電壓下限更低ESD 防護(hù) ±7500V HBMAiP650E 顯示部分顯示規(guī)格8 段 ×4 位共陰極數(shù)碼管段驅(qū)動(dòng)電流≥25mA位字驅(qū)動(dòng)電流≥150mA可直接驅(qū)動(dòng)數(shù)碼管無(wú)需額外三極管擴(kuò)流8 級(jí)亮度可調(diào)軟件指令配置輝度適配不同光照環(huán)境按鍵部分7×4 矩陣鍵盤最多支持 28 個(gè)獨(dú)立按鍵支持 4 路組合按鍵按鍵識(shí)別條件按鍵信號(hào)持續(xù)至少 2 個(gè)掃描周期才判定有效硬件層面過(guò)濾部分抖動(dòng)多鍵按下優(yōu)先級(jí)組合按鍵優(yōu)先級(jí)最高普通多鍵按下鍵編碼小的按鍵優(yōu)先響應(yīng)??替換選型提示TM1650行業(yè)老牌主流芯片指令、寄存器地址和 AiP650E 基本一致硬件引腳一一對(duì)應(yīng)大部分場(chǎng)景可以直接互換注意 TM1650 最低支持 2.8V 供電AiP650E 最低 3.0V低電壓場(chǎng)景替換要注意電源下限軟件無(wú)需大改但要留意 ACK 時(shí)序細(xì)節(jié)差異。YL1650國(guó)產(chǎn)兼容替代型號(hào)主打 pin?to?pin 軟硬件兼容PCB 不用改版程序幾乎不用修改優(yōu)勢(shì)是供電下限 2.5VESD 靜電防護(hù)更高適合對(duì)靜電敏感、低壓電池供電的產(chǎn)品是 TM1650/AiP650E 的備選方案。硬件設(shè)計(jì)提醒VDD 電源引腳就近放置 1040.1μF濾波電容電容距離芯片引腳盡量小于 2cm抑制電源噪聲三顆芯片均建議遵守該設(shè)計(jì)準(zhǔn)則。二、硬件電路設(shè)計(jì)要點(diǎn)參考官方典型應(yīng)用原理圖幾個(gè)容易被忽略的關(guān)鍵點(diǎn)直接決定產(chǎn)品穩(wěn)定性AiP650E、TM1650、YL1650 硬件外圍電路設(shè)計(jì)要求基本一致。電源電路VDD 對(duì)地并聯(lián) 0.1μF 104 電容 10μF 電解電容0.1μF 電容必須緊貼芯片電源引腳減少引線阻抗。YL1650 支持更低的 2.5V 輸入若使用 AiP650E 則電源不要低于 3.0V。通信總線 CLK、DIOTM1650 引腳命名為 DAT總線建議增加 10K 上拉電阻串聯(lián) 220Ω 限流電阻提升總線抗干擾降低靜電、浪涌損壞 IO 口風(fēng)險(xiǎn)。時(shí)序規(guī)則CLK 上升沿鎖存 DIO 數(shù)據(jù)DIO 電平只允許在 CLK 為低電平時(shí)改變CLK 高電平期間 DIO 必須保持穩(wěn)定。起始條件CLK 高電平DIO 由高變低停止條件CLK 高電平DIO 由低變高每傳輸完 8bit第 9 個(gè)時(shí)鐘周期芯片輸出 ACK 應(yīng)答將 DIO 拉低主控可以據(jù)此判斷指令是否接收成功。矩陣鍵盤電路DIG1?DIG4 位掃描輸出引腳必須串聯(lián) 2K 隔離電阻。不加該電阻按鍵按下時(shí)會(huì)干擾數(shù)碼管顯示出現(xiàn)亂亮、鬼影現(xiàn)象三顆芯片都存在該問(wèn)題。 使用組合按鍵功能時(shí)KI1、KI2 同一 DIG 引腳下的按鍵同時(shí)按下觸發(fā)組合鍵回路同樣需要 2K 隔離電阻做信號(hào)阻隔避免串?dāng)_。數(shù)碼管接法三顆芯片全部只支持共陰極數(shù)碼管段輸出、位輸出引腳和數(shù)碼管引腳一一對(duì)應(yīng)不要混用共陽(yáng)極數(shù)碼管否則無(wú)法正常點(diǎn)亮。三、通信協(xié)議與指令說(shuō)明AiP650E/TM1650/YL1650 均為類 I2C 兩線接口但不是標(biāo)準(zhǔn) I2C 設(shè)備沒(méi)有設(shè)備地址不能直接調(diào)用單片機(jī)硬件 I2C 外設(shè)一般使用軟件模擬時(shí)序。寄存器地址完全一致DIG10x68HDIG20x6AHDIG30x6CHDIG40x6EH。3.1 寫顯示數(shù)據(jù)流程上電之后必須先寫入顯示 RAM 數(shù)據(jù)再開(kāi)啟顯示輸出數(shù)碼管才會(huì)點(diǎn)亮上電直接開(kāi)顯示會(huì)出現(xiàn)黑屏三顆芯片初始化順序要求相同。 傳輸格式16 位先發(fā)系統(tǒng)指令再發(fā)送顯示數(shù)據(jù)指令字節(jié)內(nèi)部高位優(yōu)先傳輸。通過(guò)指令可以配置顯示開(kāi)關(guān)、8 段 / 7 段模式、亮度等級(jí)。亮度檔位包含 8 級(jí)、2 級(jí)、7 級(jí)多檔可選可根據(jù)功耗需求選擇。3.2 讀取按鍵數(shù)據(jù)流程讀按鍵采用 9 位命令幀 9 位數(shù)據(jù)幀命令幀第 9 位 ACK0數(shù)據(jù)幀第 9 位 ACK1。 芯片返回 1 字節(jié)按鍵編碼通過(guò)編碼判斷按鍵矩陣位置。注意按鍵必須維持至少兩個(gè)鍵掃描周期芯片才識(shí)別按鍵讀取到按鍵釋放標(biāo)志后需要清除舊鍵值避免重復(fù)上報(bào)舊按鍵碼。3.3 開(kāi)發(fā)以及替換芯片常見(jiàn)軟件坑點(diǎn)DIO 引腳需要切換輸入輸出模式發(fā)送命令時(shí)配置為輸出接收 ACK 應(yīng)答時(shí)切換為輸入模式很多驅(qū)動(dòng)異常就是 IO 模式切換處理不當(dāng)造成。不要使用硬件 I2C時(shí)序和標(biāo)準(zhǔn) I2C 存在差異硬件 I2C 會(huì)出現(xiàn)通信亂碼、收不到 ACK。上電流程順序等待上電復(fù)位完成 → 寫入顯示 RAM 緩存 → 發(fā)送指令開(kāi)啟顯示。芯片替換注意點(diǎn)雖然引腳寄存器兼容但不同芯片的 ACK 應(yīng)答時(shí)序有微小差異直接替換后如果出現(xiàn)讀按鍵不穩(wěn)定需要微調(diào)軟件模擬時(shí)序延時(shí)TM1650 引腳數(shù)據(jù)線叫 DATAiP650E、YL1650 叫 DIO硬件上是同一個(gè)信號(hào)PCB 不用改代碼里面宏定義名稱修改即可。四、工程調(diào)試常見(jiàn)問(wèn)題排查表格故障現(xiàn)象可能原因解決辦法數(shù)碼管完全不亮上電未先寫 RAM 就開(kāi)啟顯示電源異常段位引腳接錯(cuò)共陽(yáng)極數(shù)碼管替換芯片后供電電壓低于芯片最小值調(diào)整初始化順序檢查 VDD 電壓確認(rèn)使用共陰極數(shù)碼管AiP650E 保證≥3.0VYL1650/TM1650≥2.8V數(shù)碼管鬼影、亂點(diǎn)亮鍵盤矩陣缺少 2K 隔離電阻電源濾波不到位DIG 引腳串接 2K 電阻VDD 就近增加 0.1μF 電容通信無(wú) ACK 應(yīng)答時(shí)序錯(cuò)誤DIO 在 CLK 高電平翻轉(zhuǎn)電平IO 方向切換錯(cuò)誤總線限流上拉電阻參數(shù)替換芯片后時(shí)序延時(shí)不匹配嚴(yán)格遵守時(shí)序DIO 僅 CLK 低電平變化收發(fā)時(shí)切換 IO 輸入輸出調(diào)整總線電阻適當(dāng)微調(diào)軟件模擬時(shí)序延時(shí)按鍵無(wú)響應(yīng) / 誤觸發(fā)缺少隔離電阻按鍵按下時(shí)間不足兩個(gè)掃描周期組合鍵缺少阻隔電阻補(bǔ)齊 2K 電阻軟件增加按鍵確認(rèn)邏輯組合按鍵回路增加隔離電阻組合按鍵識(shí)別不到位KI1、KI2 沒(méi)有做電阻阻隔不同 DIG 位按鍵不能觸發(fā)組合鍵組合鍵只支持同一 DIG 下 KI1/KI2補(bǔ)齊 2K 隔離電阻五、應(yīng)用場(chǎng)景與芯片替代選型總結(jié)AiP650E、TM1650、YL1650 都適合 IO 資源緊張的 MCU 項(xiàng)目。只消耗 2 個(gè) IO實(shí)現(xiàn) 4 位數(shù)碼管 最多 28 按鍵減少外圍器件壓縮 PCB 面積。 典型應(yīng)用場(chǎng)景溫控器、廚房小家電、電子秤、充電樁面板、小型測(cè)量?jī)x表等。選用 TM1650追求市場(chǎng)成熟度參考資料多存量項(xiàng)目。選用 AiP650E國(guó)產(chǎn)中微愛(ài)芯方案供貨可控常規(guī) 3.3V/5V 家電項(xiàng)目。選用 YL1650需要更低工作電壓、更高 ESD 防護(hù)做 pin?to?pin 直接替換不想改動(dòng) PCB 與程序的項(xiàng)目。提示芯片互相替換時(shí)硬件優(yōu)先核對(duì)供電電壓范圍軟件若出現(xiàn)通信異常微調(diào)模擬 I2C 時(shí)序延時(shí)開(kāi)發(fā)務(wù)必參考原廠最新 PDF 手冊(cè)硬件極限參數(shù)不要超過(guò)手冊(cè)規(guī)定產(chǎn)品量產(chǎn)以實(shí)物規(guī)格為準(zhǔn)??偨Y(jié)AiP650E 把 LED 顯示驅(qū)動(dòng)和矩陣鍵盤掃描集成單顆芯片簡(jiǎn)化人機(jī)交互硬件設(shè)計(jì)。TM1650、YL1650 作為直接對(duì)標(biāo)替代型號(hào)硬件引腳兼容寄存器指令基本一致可以實(shí)現(xiàn)板上直接替換但要注意供電電壓下限、ACK 時(shí)序細(xì)微差別。開(kāi)發(fā)的難點(diǎn)不在于復(fù)雜指令更多集中在硬件外圍電阻電容處理、軟件模擬時(shí)序、IO 輸入輸出切換、上電初始化順序、跨芯片替換后的時(shí)序適配。很多項(xiàng)目出現(xiàn)的黑屏、按鍵失靈、通信異?;径际巧厦鎺讉€(gè)細(xì)節(jié)沒(méi)有處理到位。后續(xù)如果需要可基于本文繼續(xù)完成模擬兩線時(shí)序驅(qū)動(dòng)框架適配 STM32/51 單片機(jī)一套代碼兼容 AiP650E/TM1650/YL1650 三顆芯片。