ARM研發的路漫長而有趣,眾人皆知的開發優勢和面對問題時的一籌莫展,讓人對ARM又愛又恨,而你與ARM又有怎樣的情節呢?
目前在工業控制系統中大量應用了嵌入式ARM,如工業過程控制、電力系統、石油化工、數控機床等,ARM嵌入式系統的發展促進了工業控制自動化程度的提高。
AM335x 微處理器為基于ARM Cortex-A8 處理器,在圖像、圖形處理、外設以及 EtherCAT 和 PROFIBUS等工業接口選項方面得到了增強。800MHz主頻的Cortex -A8內核能遠強于ARM9,可提供快速的數據處理和流暢的界面切換。
圖1 AM335x功能框圖
憑借其6路UART、2路CAN-Bus,2路USB OTG、可支持2路以太網接口等強大的通訊功能,以及工業級性能保證,已廣泛應用于便攜式導航系統、工業自動化、人機界面等多個行業。
隨著Cortex-A8處理器的廣泛應用,客戶群體迅速增加,客戶遇到的問題卻也是千奇百怪。今天我們就了解下有客戶出現的Cortex-A8處理器莫名燒壞現象是怎么回事?
為了發現原因,解決問題,致遠研發工程師對燒壞的模塊做了大量分析,發現燒壞模塊都是電源域燒壞,那又是什么原因導致電源域燒壞呢?
研發人員分析會不會是模塊的某些IO口過壓或者倒灌電流導致燒壞IO口,情況嚴重進而燒壞CPU呢?有了分析方向,下一步馬上查閱資料,做實驗證實。
圖2 TI官網M335x數據手冊中規定的IO電壓范圍
圖3 Freescale i.MX28系列芯片規定的IO電壓范圍
為了進一步證實兩者的不同,研發人員對模塊進行了對比實驗,經過了多次測試發現,Freescale ARM9芯片CPU的IO耐壓值最高為5V,而TI的Cortex-A8平臺M335x系列芯片CPU的IO耐壓值僅為3.6V!相信這也是Cortex-A8平臺的CPU燒壞的一個重要原因。
那么我們在使用AM335x系列的芯片時又該注意哪些問題呢?
1、IO使用注意事項
GPIO作為輸入時,要確保最高電壓不可超過3.3V,最低電壓不可低于-0.2V。GPIO作為輸出時,由于IO的驅動能力有限,單個IO最大輸出4mA的電流,所有IO最大不超過50mA,建議驅動LED、光耦、繼電器等功率器件時要外加三極管或MOS管。驅動LED、光耦等小功率器件時也可以設計成灌電流輸出模式。
使用Cortex-A8 IO時建議添加100R限流電阻,特別是預留的GPIO。
2、電源設計注意事項
核心板的3.3V電源上電后才使能底板的3.3V電源輸出,避免核心板上電時底板的3.3V通過IO影響核心板的上電時序,造成核心板無法啟動或損壞。
圖4 CPU上電時序說明
建議底板電源3.3V使用帶有使能端的電源,將使能端連接在核心板的PWR_OK上(PWR_OK連接在核心板3.3V電源上)或使用GPIO做使能控制。且應添加下拉電阻,使該電源上電處于失能狀態,避免上電時IO口狀態不確定導致系統故障。
3、啟動設置注意事項
EMU0 ~ EMU4為啟動配置引腳,可作為普通GPIO使用,但上電時這兩個引腳應當處于懸空或高阻狀態,錯誤的配置將造成系統無法啟動。因此建議設計時不要用作輸入腳。
M335x和A335x核心板的lcd_data[0..15]是AM335x處理器的啟動項選擇引腳,如果這些引腳不使用做lcd數據線的時候,應當注意上電時的狀態不能影響處理器的啟動且只能用作輸出引腳。
GPMC_D[7..0]數據總線已經在內部被NAND Flash使用,外部需要用到GPMC總線時需嚴格遵守GPMC通信協議,防止影響系統啟動。
這三點是系統應用中容易出錯的地方,這里重點給大家介紹下,希望在今后的設計中為大家提供參考依據。
ZLG致遠電子16年來致力于高端測量與分析儀器、嵌入式工控與物聯網等領域的各項技術的研究,踏踏實實做技術,只為能給您提供好的產品和優質的技術服務。
圖5 ZLG致遠電子工業互聯網智能控制方案