?

某特種車輛的國產MCU 上電時IO 輸出口失控問題分析

2024-02-01 17:23蔡小紅付華芳
汽車電器 2024年1期
關鍵詞:遠光燈寄存器時鐘

蔡小紅,付華芳,楊 威

(東風越野車有限公司,湖北 武漢 430056)

1 背景

隨著芯片慌的出現,汽車核心芯片的供貨及產品數據安全等風險系數急劇加大,如何保障產品自主可控是國內廠商急需面對的問題。因此,在特種車輛電子產品開發過程中,需滿足國產自主可控相關要求,降低卡脖子技術風險。作為特種車輛車身電子控制核心元器件的MCU必須滿足國產化要求,且市面上已有相關國產化產品?;诖?,本文對車身控制模塊的MCU進行選型設計,并在應用過程中對MCU上電時IO口失控問題進行分析、處理、跟蹤和試驗驗證。

2 國產化MCU

MCU模塊是車身電子控制模塊的關鍵器件,必須實現國產化,只有MCU模塊國產化了,才能稱得上真正的自主可控。

目前,國內設計/生產微處理器廠家主要有:南通國芯(STC)、四維圖新、海爾東軟載波、兆易創新、上海芯旺、新??萍?、復旦微電子、北京君正、清華同方、海威華芯以及軍工科研院所旗下部分公司(如長沙韶光、中電47所)等。

經過深入調研,在需要符合某型號項目特殊低溫環境要求的條件下,MCU模塊采用某國產芯片HHD32F107VCH,其性能參數有:處理器為ARM Cortex-M3內核,72MHz;最高1M Flash,128kB SRAM;ADC為16通道12位ADC;2路CAN,4路SPI;1路百兆以太網;工作電壓為2.7~5.5V;工作溫度為-55~125℃;開發環境為Keil uVision5。事實證明,該性能完全滿足特種車輛某特殊型號項目車身控制模塊需求。處理器模塊如圖1所示。

圖1 處理器模塊

3 國產MCU IO輸出口失控故障分析

3.1 故障現象

在整車試驗過程中,IGN-ON擋上電時,車身控制模塊功能偶發異常且每次表現出不同功能異常,只有強制斷電后重啟,各項功能才能恢復正常。車身控制模塊上電偶發異?,F象見表1。

表1 車身控制模塊上電偶發異?,F象

通過試驗現場跟蹤問題現象,發現問題共性是:均出現在上電的時候,并且都是IO失控,且斷電后重啟均能恢復正常。

3.2 故障分析

重點對硬件電路、應用層軟件、MCU內部IO寄存器機理進行分析。外部IO口輸入檢測和驅動電路如圖2所示,開關量的輸入電路包括低輸入和高輸入開關量信號采集電路。國產元器件無類似功能芯片,采用分立元件搭建采集電路來實現輸入信號采集,實現開關量輸入的模塊化。

圖2 IO口輸入檢測和驅動電路

1)對設計的硬件電路和PCB設計進行分析,控制邏輯正確,設計合理,并且對上電波形進行了測量,結果符合要求,未發現異常。

2)對應用層軟件進行分析,應用層調用底層IO驅動函數合理,且臺架試驗一直未出現任何IO口失控的功能異常。

3)關于MCU內部出現的IO寄存器異常,再次上電仍然可以正??刂?,說明芯片本身沒有損壞,MCU內部IO寄存器正常。然后對MCU驅動能力進行測試,根據某國產芯片MCU手冊要求,需按照表2進行測試。

表2 某國產MCU IO口參數

基于當前整車實際的應用需求,分別在供電為3.3V,且電源電流IDD限流為100mA情況下,分別對IO配置為弱驅和強驅兩種模式下,同時驅動1mA或2mA,測試能夠輸出正常電平的IO引腳數量。經ATE測試機臺測試,測試結果如表3所示。根據測試結果表明IO本身的驅動能力沒有問題。當前客戶用作輸出的IO為22個,驅動電流在1mA左右,完全能滿足客戶的應用需求。

表3 某國產MCU IO口同時驅動數量

由于故障現場出現時無法進行Debug跟蹤調試(Debug調試導致MCU芯片復位,故障現象消失,無法跟蹤調試),為了定位問題原因,增加調試代碼通過串口將輸入管腳IO寄存器值檢測的變量和軟件上設置輸出的變量以及輸出管腳實際的IO寄存器值打印出來,以便觀察。如圖3所示。

圖3 打印IO狀態和寄存器值調試代碼

在上電遠光燈開關閉合,但是遠光燈未亮,其它控制功能均正常的故障現象時,通過調試打印信息,發現MCU檢測遠光燈開關(PE7)讀取到的電平隨著遠光燈開關開啟和閉合高低變化,并且應用軟件定義的變量也隨著高低變化,MCU的IO輸入檢測與實際情況相符合。同時根據遠光燈開關開啟和閉合,設置PC9的IO口輸出來控制遠光燈,進一步讀取PC9的OUT寄存器,卻發現該bit位一直為低,從未變高。

圖4中定義變量就是檢測到的16個輸出管腳的狀態值,其中BIT11定義為遠光燈控制輸出。從圖5打印信息中,可見EI 讀取的PE 管腳的PIN 寄存器,該值等于0XA894=1010100010010100,即PE7為高。根據遠光燈控制策略,應用軟件上設置PC9口OUT=0X0E82=111010000010,Print變量的BIT11bit位為高,即該位對應的GPIO_outStatus[11]變量也為高,用該變量去設置PC9管腳輸出為高。但通過PC端口獲取的PC9口寄存器值C0=0x3001=001_10000_0000_0001,可見應用軟件上設置PC9口為1后,PC9口寄存器值仍然為0,說明IO口寄存器失控。在出現其它偶發故障時,采取同樣的跟蹤調試方法,均發現無法控制IO口寄存器。

圖4 設置MCU PC9口輸出高電平

圖5 讀取MCU PE7和PC9口輸入輸出寄存器值

3.3 故障解決方案

根據芯片設計原理,符合要求的電源電壓是芯片內部各電路模塊正常工作的前提。芯片內部通過電源網格為所有模塊提供電源,電源網格會導致壓降,因而芯片內部各電路模塊所獲得電壓值各異。根據歐姆定律,電源網格所產生的壓降值取決于電源通路的線性阻值、流經網格的電流值。如果電源網格所產生的壓降過大,相應電路所獲得的電源就不足以提供芯片內部晶體管正常工作所需的電平,那么該電路的邏輯功能將變得混亂和不受控,此時按正常的設計邏輯難以對其所呈現的實驗現象進行分析、研究。

在芯片設計階段,芯片廠商已經對電源網格壓降進行模擬仿真、驗證,保證所有電路模塊能獲得足夠高的電壓,但是這種仿真驗證是以系統頻率值、各種電路模塊工作狀況作為變量。不難想象,當系統頻率固定時,開啟的電路模塊越多,則電源網格壓降也就越大。結合本次特種車輛應用,MCU工作頻率要求為不低于60MHz(芯片廠商建議的穩定工作頻率),在此應用情況下,采取上電時減少開啟MCU內部電路模塊措施使芯片內部各電路模塊功能穩定。

上電時為減少開啟MCU內部電路模塊,需對上電時的時鐘初始化進行排查,發現默認初始化開啟了大部分的外設時鐘,并且未使用的時鐘也被開啟。同時開啟較多的時鐘意味著MCU內部開啟的電路模塊越多。先將底層驅動中默認開啟的許多時鐘,修改為上電時只打開MCU基本運行所需的SRAM、FLASH、AFIO這3個時鐘,再根據具體應用需求打開相關模塊的時鐘。圖6是新舊程序時鐘設置部分代碼對比,圖6a是原時鐘初始化程序,圖6b是新修改時鐘初始化程序。表4為新舊時鐘初始化程序對比表。新修改的程序,在持續一周的實車測試中,未出現任何IO口失控問題。

表4 新舊時鐘初始化程序對比

圖6 新舊程序時鐘設置修改對比

為了進一步驗證新舊程序在時鐘初始化設置后MCU內部工作電流的差異,在新舊程序的時鐘初始化配置后,后續不開啟任何時鐘進行電流測試。將程序下載到車身控制器電路板上查看電流消耗的差異,并且在電源上串聯5Ω的電阻,用于示波器測試該電阻上電瞬間的壓降,以計算上電時新舊程序的瞬時電流值。示波器中剛開始很細的尖刺并不是MCU上電導致,因為在沒有芯片的夾具測試板上也進行了同樣的上電測試,同樣有該尖刺,因此MCU自己不存在上電會產生很高的瞬時電流的情況。從表5中可以看出新舊程序MCU上電時的電流差異在6mA,芯片無程序時工作的電流為42.3mA。

表5 新舊時鐘初始化程序MCU上電電流測試記錄

雖然從芯片外的電流消耗來看差異只有6mA,但芯片內部通過電源網格為所有模塊提供電源,電源網格會導致壓降,因而芯片內部各電路模塊所獲得電壓值各異且低于理論值。本項目采用的某國產107芯片所有IO口都被使用,且舊程序中107的外設模塊時鐘初始化時,同時基本都已經開啟(特別是功耗大戶以太網模塊GMAC),且系統工作頻率為60MHz,此時芯片功耗較大。如果在某個上電瞬間,外圍連接器件對MCU電流的消耗增加,導致上電電流過大,從而造成芯片內部某些電源網格壓降過大或者處于臨界狀態,從而導致芯片內部模塊邏輯控制失效,IO輸出端口輸出寄存器不可控。這驗證了文章前面出現的MCU上電偶發IO口失控現象。

4 試驗驗證

通過優化后的時鐘配置,經過臺架試驗(圖7)和長期的整車實驗,尤其是整車試驗從2022 年6 月28 號至今,進行的這一年多的試驗驗證,目前已經通過了整車三高試驗驗證,未出現MCU上電偶發IO口失控現象,充分證明了措施實施后產品運行的可靠性,解決了車輛領域在某型號項目上首次使用某國產MCU芯片的可靠性問題。

圖7 臺架測試

5 結束語

在同時使用某國產MCU資源比較多的情況下,系統初始化時,只需要打開AFIO、SRAM、FLASH模塊的時鐘,依據應用所需外設模塊,初始化時階梯式打開相關的外設時鐘,并且不用的模塊時鐘保持關閉狀態,以保證MCU上電時的正常運行。本文對某國產MCU使用中可靠性問題的分析與解決,為后續使用國產自主可控MCU奠定了堅實可靠的基礎。只有完全真正做到自主可控,才能抵御外部環境變化帶來的風險。同時在促進完全自主可控的國產化基礎軟硬件供應鏈良性發展方面起帶頭示范作用。

猜你喜歡
遠光燈寄存器時鐘
別樣的“時鐘”
基于CAN總線上遠光燈的設計與實現
古代的時鐘
Lite寄存器模型的設計與實現
分簇結構向量寄存器分配策略研究*
有趣的時鐘
時鐘會開“花”
遠光燈性能測試與評價研究
正確使用你的“燈”
高速數模轉換器AD9779/AD9788的應用
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合