<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 汽車電子 > 設計應用 > 汽車級MCU-F5xx系列產(chǎn)品及其應用

          汽車級MCU-F5xx系列產(chǎn)品及其應用

          作者: 時間:2012-07-16 來源:網(wǎng)絡 收藏

          MCU市場總覽

          本文引用地址:http://www.ex-cimer.com/article/196667.htm

          從2007年到2011年,消費者對汽車電子市場(包括 MCU、傳感器及車身集成電路)的需求量不斷上漲(圖1),其中MCU所占的市場份額最大。但在巨大的市場機遇面前,汽車電子廠商也面臨著挑戰(zhàn)。隨著消費者對于汽車舒適性、安全性、駕駛性要求的不斷提高,汽車廠商在汽車電子性能改善、功能增加和整體成本降低等方面提出了更高的要求,使得IC供應廠商必須提高系統(tǒng)的集成度,以便減少整個系統(tǒng)的成本,簡化設計流程。

          MCU在汽車電子方面的主要應用涵蓋五大領域,分別是:1、汽車動力系統(tǒng)控制,主要應用為發(fā)動機控制、方向轉(zhuǎn)向以及動力轉(zhuǎn)向;2、汽車控制系統(tǒng),即車身的控制,主要包括防盜控制、開關控制、電動車窗控制、車門控制、車燈控制等;3、安全控制系統(tǒng),包括安全氣囊、ABS、SAFF等;4、行駛系統(tǒng)控制,包括儀表盤、空調(diào)、底盤控制等;5、汽車信息系統(tǒng),包括娛樂、服務、移動通信、信息處理和GPS導航等。除了汽車動力系統(tǒng)控制和汽車信息系統(tǒng)控制這兩項應用需要高性能的32位MCU外,其余三項都可以采用MCU。

          11.jpg

          圖1 MCU、傳感器和車身集成電路的市場需求

          Silicon Labs公司的MCU C8051F5XX系列是能夠為車身電子和點控裝置提供高集成度、使用簡單并具有高效費比的混合信號MCU系統(tǒng)。它主要應用于自動車窗、車門、自動座椅、反光鏡、電動機、制動器等控制系統(tǒng)中。C8051F50X系列產(chǎn)品提供了小體積的CAN/LIN網(wǎng)絡解決方案,在5mm×5mm的封裝內(nèi)集成了64K Flash、CAN 2.0B 和 LIN 2.0。同時,產(chǎn)品內(nèi)部集成了誤差只有±0.5%的高精度振蕩器,不需要外部的晶體或振蕩器就可以實現(xiàn)CPU的運行。C8051F5XX系列產(chǎn)品擁有較寬的工作溫度范圍(-40℃到+125℃ ),超過了汽車電子對于IC的運行環(huán)境溫度的要求(-40℃到+120℃),可提供1.8至5.25V的寬電壓范圍,為客戶在產(chǎn)品設計方面提供了很大的選擇余地。

          圖2為F500的結(jié)構框圖,從圖中可以看到,在5mm×5mm的封裝里面,集成了較為完整的數(shù)字和模擬外設。在數(shù)字外設方面,包括64K Flash、PWM產(chǎn)生器、定時器、I2C、SPI接口以及CAN 2.0B和LIN 2.0的控制器等。模擬外設包括12位的ADC、誤差為±0.5%的高精度內(nèi)部振蕩器、溫度傳感器和比較器等,同時,既可以使用內(nèi)部參考電壓,也可以使用外部參考電壓。

          22.jpg

          圖2 F500的結(jié)構框圖

          LIN在汽車電子中的應用

          在現(xiàn)代汽車電子中,LIN和CAN總線缺一不可。LIN總線又稱本地互聯(lián)網(wǎng)絡(Local Interconnect Network),是一種異步、單線串行通信總線,也是汽車電子網(wǎng)絡中常用的一種低成本解決方案。LIN總線包括一個主節(jié)點和多個從節(jié)點(圖3),通過一根線來進行通信,結(jié)構非常簡單。

          33.jpg

          圖3 LIN總線結(jié)構示意圖

          LIN總線在汽車中的應用主要有四個方面:車門/車窗/車頂?shù)目刂?、轉(zhuǎn)向裝置控制、座椅控制和汽車環(huán)境控制。

          LIN 總線的特點是:單主從結(jié)構,每一個網(wǎng)絡都包含一個主節(jié)點和多個從節(jié)點,由主節(jié)點來控制總線的訪問;基于常用的USART/SCI接口硬件;從屬控制器節(jié)點無需石英或者陶瓷振蕩器就可以實現(xiàn)自同步,因而減少了從節(jié)點的硬件成本;信號傳輸延時得到保證,確保了在最差狀況下信號傳輸?shù)牡却龝r間以避免總線訪問沖突;低成本的單線12V數(shù)據(jù)傳輸,線的驅(qū)動和接收特性符合改進的ISO9141單線要求;傳輸速度可以達到20 kbps。

          Silicon Labs公司C8051F50x/51x的LIN總線硬件接口與LIN2.0協(xié)議兼容,其高精度的內(nèi)部振蕩器使主控制器和從控制器不需要外接晶體就可以工作。在從模式下可以自動檢測波特率,硬件結(jié)構帶中斷的錯誤檢測功能和休眠功能,可以實現(xiàn)低功耗。

          CAN在汽車電子中的應用

          CAN (控制器局域網(wǎng)) 是一種異步、差分串行總線通信標準,通常用于連接電子控制單元(ECU)。在現(xiàn)代汽車電子中,由于LIN比CAN的成本低,因此CAN通常用來連接ECU 和汽車電子中各個功能模塊之間的通信,而LIN主要用于功能模塊和其下各個節(jié)點之間的通信,從而降低成本。CAN的原始協(xié)議是由羅伯特-博世有限公司創(chuàng)立的,之后被汽車工程師學會采納為通用標準。

          CAN在汽車電子中應用非常廣泛,它不但可以應用于LIN應用的一些領域,如車門/車窗/車頂?shù)目刂?、方向控制、座椅控制、環(huán)境控制等,還可以應用于更多的零界系統(tǒng)中,如傳動系統(tǒng)、防抱死制動系統(tǒng)、轉(zhuǎn)向裝置控制、燃油噴射系統(tǒng)等。

          44.jpg

          圖4 CAN總線的結(jié)構示意圖

          CAN總線具有以下特性:

          靈活性——在一個CAN網(wǎng)絡中的所有節(jié)點都能夠接收和發(fā)送數(shù)據(jù)。

          延遲保證——計算傳輸時間和響應時間是CAN網(wǎng)絡設計的一部分。

          數(shù)據(jù)一致性——在一個CAN網(wǎng)絡中的所有節(jié)點都可以接收或拒絕一個報文。

          強大的錯誤檢測功能——通過位監(jiān)控、循環(huán)冗余檢查、位填充、報文格式檢查等多種手段來確保數(shù)據(jù)的完整性。

          故障界定——有故障的節(jié)點將會被切斷以防止更深的網(wǎng)絡被影響。

          容錯性——CAN收發(fā)器支持將其中的一個引腳短路或接地而不影響報文。

          高吞吐量——達到1Mbps的數(shù)據(jù)傳輸速率。

          Silicon Labs公司C8051F50x/51x系列產(chǎn)品的CAN接口硬件中,所有的CAN控制寄存器都可以直接存儲;具有專用的CAN中斷;內(nèi)置高精度的振蕩器,無需外部晶振;同時,使用官方的Bosch 模塊,方便客戶使用。

          采用F500和F30的汽車電子解決方案

          方案1——主窗口升降控制器

          在圖5中可以看到,該系統(tǒng)中有一個主節(jié)點,由F500 MCU做主控制器,同時包含3個從節(jié)點,使用性能更低一些的F30來實現(xiàn)。該方案所要實現(xiàn)的功能是,通過駕駛員側(cè)窗控制器來控制所有的汽車窗戶,同時在每個從節(jié)點上面都分布了一個防夾算法,在每個車門上都有一個阻力傳感器和車窗的位置傳感器,電動車窗的模塊通過接收這兩個傳感器的信號來判斷是否有物體阻礙了車窗的上升,如果判斷結(jié)果是“有”,那么電動車窗控制模塊就會反轉(zhuǎn)驅(qū)動電機使車窗下降以防止夾傷。

          55.jpg

          圖5 主窗口升降控制器

          方案2——自動座椅的調(diào)整

          該方案(圖6)通過由F500做主節(jié)點、5個F30做從節(jié)點來實現(xiàn),在每個從節(jié)點上都分布有判斷功能、保護功能和智能算法,以實現(xiàn)各個模塊的正常工作。

          66.jpg

          圖6 自動座椅調(diào)整方案

          問答選編

          問:CAN和LIN總線有哪些相同和不同點?

          答:LIN是CAN的一種低成本的輔助總線,CAN的速度可以達到1M而LIN只能達到20K。所以,CAN可以用于高速系統(tǒng),LIN只能用于低速。而且一般在汽車電子中,CAN用于連接ECU和控制模塊,而LIN則用來連接模塊與功能節(jié)點之間的通訊。

          問:請問LIN外設與UART0的主要差別在哪里?

          答:LIN總線的串行傳輸是在單線上完成,UART0則是通過雙線TX/RX進行通訊。

          問:系統(tǒng)時鐘切換到外部時鐘后,內(nèi)部的時鐘是否應關閉?

          答:主時鐘需要關閉。

          問:LIN總線的串行傳輸是在單線上完成,那么進行數(shù)據(jù)傳輸時效率如何?

          答:全部由主控制器來決定,用戶可以在程序中設定優(yōu)先級。

          問:能談談CAN總線與MIC總線性能對比嗎?

          答:MIC總線是一種時間分割多路傳輸總線,以雙冗余串行通信的方式傳輸數(shù)據(jù),比較適合尖峰脈沖干擾頻繁的場合。CAN可以簡單的理解為差分信號,對浪涌等共模干擾抑制能力很強。

          問:LIN總線的從節(jié)點如何實現(xiàn)同步?

          答:所有的節(jié)點都是由主節(jié)點來控制的,同步由F500的LIN控制器自動完成。

          問:能介紹一下目前單片機的主要加密方式嗎?

          答:在MCU的Flash中有一個加密字節(jié),這個字節(jié)的每一位對應一頁的加密。沒有加密時,這個字節(jié)默認是FFH,當要對某頁進行加密時,只需要將相應的位寫:0。一旦寫0后,相應的空間就不能通過一些工具從外部進行讀寫了。另外,利用MCU自己的FIRMWARE也可以對FLASH進行加密,而不影響對加密空間的訪問。

          問:用戶最大的程序代碼可以多大?

          答:最大4K字節(jié)。

          問:切換外部晶振時應注意哪些問題?

          答:切換外部晶振時,需要注意的是:一要判斷晶振的穩(wěn)定狀態(tài),二要判斷晶振之間的切換步驟。

          問:系統(tǒng)時鐘可不可以在程序中隨時切換?

          答:系統(tǒng)時鐘可以在程序中實時切換。這種功能對低功耗設計很有幫助。當需要高速運行時,使用內(nèi)部高速時鐘;當需要低速運行時,切換到外部時鐘,以節(jié)省功耗(外部時鐘使用低速時鐘)。

          問:MCU在射頻控制時,MCU的時鐘(晶振)、數(shù)據(jù)線會輻射基頻或基頻的倍頻,被低噪放LNA放大后進入混頻,出現(xiàn)帶內(nèi)的Spur,無法濾除。請問有沒有好的解決方法?

          答:PCB設計的時候把數(shù)據(jù)線和射頻線用地隔開,盡量放的遠一些。另外,不要平行布線。

          問:汽車點火對MCU有影響嗎?如何消除這種影響?

          答:汽車點火會產(chǎn)生比較大的干擾,會影響MCU的工作。要降低這種影響,需從硬件和軟件方面進行處理。在硬件方面,在設計的時候要充分估計這種影響,并采取適當?shù)姆绞浇档瓦@種影響;在軟件方面,可以做一些抗干擾處理。C8051F MCU在片上集成兩個保護功能:低電壓偵測和系統(tǒng)時鐘丟失偵測。當MCU的供電電壓和系統(tǒng)時鐘出現(xiàn)異常時,會強行讓MCU處在復位狀態(tài),從而起到保護作用。強烈建議在使用C8051F MCU進行設計時,將這兩個功能使能。



          評論


          相關推薦

          技術專區(qū)

          關閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();