《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 嵌入式技術(shù) > 設(shè)計(jì)應(yīng)用 > 基于SPMC75單片機(jī)的LIN Bus系統(tǒng)
基于SPMC75單片機(jī)的LIN Bus系統(tǒng)
EEworld
摘要: SPMC75系列MCU是凌陽科技公司設(shè)計(jì)開發(fā)的高性能16位通用MCU,,具有很強(qiáng)的抗干擾性能,、豐富易用的資源以及優(yōu)良的結(jié)構(gòu),特別是增強(qiáng)的定時計(jì)數(shù)器和PWM輸出功能,。SPMC75系列MCU使用凌陽u'nSP內(nèi)核,u'nSP內(nèi)核是一種高效的16位CISC內(nèi)核,。支持乘法,、乘法累加,、32/16位除法、FIR等高性能運(yùn)算;支持兩種中斷模式,??梢苑奖愕漠a(chǎn)生SPWM波、空間向量PWM(SVPWM)等各種電機(jī)驅(qū)動波形,。
關(guān)鍵詞: 微處理器|微控制器 SPMC75 LIN
Abstract:
Key words :

  1.1 引言

  LIN 是低成本網(wǎng)絡(luò)中的汽車通訊協(xié)議標(biāo)準(zhǔn),,LIN(Local Interconnect Network)是低成本的汽車網(wǎng)絡(luò),它是現(xiàn)有多種汽車網(wǎng)絡(luò)在功能上的補(bǔ)充由于能夠提高質(zhì)量,、降低成本,,LIN 將是在汽車中使用汽車分級網(wǎng)絡(luò)的啟動因素,。LIN 的標(biāo)準(zhǔn)化將簡化多種現(xiàn)存的多點(diǎn)解決方案且將降低在汽車電子領(lǐng)域中的開發(fā)生產(chǎn)服務(wù)和后勤成本,。

  LIN 標(biāo)準(zhǔn)包括傳輸協(xié)議規(guī)范,、傳輸媒體規(guī)范、開發(fā)工具接口規(guī)范和用于軟件編程的接口LIN在硬件和軟件上保證了網(wǎng)絡(luò)節(jié)點(diǎn)的互操作性并有可預(yù)測EMC的功能,。

  1.2 芯片簡介

  SPMC75系列MCU是凌陽科技公司設(shè)計(jì)開發(fā)的高性能16位通用MCU,,具有很強(qiáng)的抗干擾性能、豐富易用的資源以及優(yōu)良的結(jié)構(gòu),,特別是增強(qiáng)的定時計(jì)數(shù)器和PWM輸出功能,。SPMC75系列MCU使用凌陽u'nSP內(nèi)核,u'nSP內(nèi)核是一種高效的16位CISC內(nèi)核,。支持乘法,、乘法累加、32/16位除法,、FIR等高性能運(yùn)算;支持兩種中斷模式,。可以方便的產(chǎn)生SPWM波,、空間向量PWM(SVPWM)等各種電機(jī)驅(qū)動波形,。

  除了擁有高性能的CPU外,SPMC75系列MCU還集成了多種功能模塊:多功能I/O口,、同步和異步串行口,、高性能ADC、普通的定時計(jì)數(shù)器,、多功能的捕獲比較模塊,、BLDC電機(jī)驅(qū)動專用位置偵測接口、兩相增量編碼器接口,、能產(chǎn)生各種電機(jī)驅(qū)動波形的PWM發(fā)生器等,。同時,SPMC75系列單片機(jī)內(nèi)部集成了32K Words的Flash和2K Words的SRAM,。利用這些硬設(shè)支持,,SPMC75系列單片機(jī)可以完成諸如家用電變頻驅(qū)動,、標(biāo)準(zhǔn)的工業(yè)變頻驅(qū)動器、多環(huán)的伺服驅(qū)動系統(tǒng)等復(fù)雜應(yīng)用,。

  TJA1020(Philips)是LIN 主/從協(xié)議控制器和LIN(Local Interconnect Network)物理總線之間的接口,,主要用作為車輛中的副網(wǎng)絡(luò)。使用的波特率可從2.4 到20Kbits/s,。TJA1020支持普通斜率和低斜率兩種工作模式,,并可在普通斜率模式以及低斜率模式間進(jìn)行切換。TJA1020還支持睡眠模式,,以減小系統(tǒng)功耗,。

  1.3 LIN總線簡介

  LIN(Local Interconnect Network) Bus是一種串行通訊總線,它有效地支持汽車應(yīng)用中分布式機(jī)械電子節(jié)點(diǎn)的控制,。它的使用范圍是帶單主機(jī)節(jié)點(diǎn)和一組從機(jī)節(jié)點(diǎn)的多點(diǎn)總線,其系統(tǒng)結(jié)構(gòu)如圖 1-1所示,。LIN Bus系統(tǒng)主要特性有:

  ■單主機(jī)多從機(jī)組織(即沒有總線仲裁),,配置靈活;

  ■基于普通UART/SCI 接口的低成本硬件實(shí)現(xiàn)低成本軟件協(xié)議;

  ■帶時間同步的多點(diǎn)廣播接收,從機(jī)節(jié)點(diǎn)無需石英或陶瓷諧振器,,可以實(shí)現(xiàn)自同步;

  ■保證信號傳輸?shù)难舆t時間,。可選的報(bào)文幀長度:2,、4 和8 字節(jié);

  ■數(shù)據(jù)校驗(yàn)和的安全性和錯誤檢測,,自動檢測網(wǎng)絡(luò)中的故障節(jié)點(diǎn);

  ■使用最小成本的半導(dǎo)體組件(小型貼片,單芯片系統(tǒng)),。

  ■速度高達(dá)20kbit/s;

  


  圖 1-1 LIN Bus系統(tǒng)結(jié)構(gòu)

  1.4 LIN協(xié)議在SPMC75F2313A上的實(shí)現(xiàn)

  LIN Bus是一種簡單的單總線系統(tǒng),,其軟件協(xié)議棧比較簡單。一個LIN網(wǎng)絡(luò)中有一個主機(jī)節(jié)點(diǎn)和一個以上的從機(jī)節(jié)點(diǎn)組成,,所有的節(jié)點(diǎn)都包括有從機(jī)服務(wù)程序來發(fā)送和接收數(shù)據(jù),,僅有一個節(jié)點(diǎn)包含有主機(jī)服務(wù)程序。主機(jī)程序主要用于發(fā)送同步間隔,、同步場和ID場(也可以是命令),,用于控制和協(xié)調(diào)各個節(jié)點(diǎn)的有序無紊的通訊。

  1.4.1 LIN信息傳輸

  LIN信息是以報(bào)文的形式傳送的,。報(bào)文傳輸是由報(bào)文幀的格式形成和控制的,。報(bào)文幀由主機(jī)任務(wù)向從機(jī)任務(wù)傳送同步和標(biāo)識符信息,并將一個從機(jī)任務(wù)的信息傳送到所有其它從機(jī)任務(wù),。主機(jī)任務(wù)位于主機(jī)節(jié)點(diǎn)內(nèi)部,,它負(fù)責(zé)報(bào)文的進(jìn)度表、發(fā)送報(bào)文頭(HEADER),。從機(jī)任務(wù)位于所有的(即主機(jī)和從機(jī))節(jié)點(diǎn)中,,其中一個(主機(jī)節(jié)點(diǎn)或從機(jī)節(jié)點(diǎn))發(fā)送報(bào)文的響應(yīng)(RESPONSE),。

  一個報(bào)文幀如圖 1-2所示,是由一個主機(jī)節(jié)點(diǎn)發(fā)送的報(bào)文頭和一個主機(jī)或從機(jī)節(jié)點(diǎn)發(fā)送的響應(yīng)組成,。報(bào)文幀的報(bào)文頭包括一個同步間隔場(SYNCH BREAK FIELD),、一個同步場(SYNCH FIELD)和一個標(biāo)識符場。報(bào)文幀的響應(yīng)(RESPONSE)則由3 個到9 個字節(jié)場組成:2,、4 或8 字節(jié)的數(shù)據(jù)場(DATA FIELD)和一個校驗(yàn)和場(CHECKSUM FIELD),。字節(jié)場由字節(jié)間空間分隔,報(bào)文幀的報(bào)文頭和響應(yīng)是由一個幀內(nèi)響應(yīng)空間分隔,。最小的字節(jié)間空間和幀內(nèi)響應(yīng)空間是0,,這些空間的最大長度由報(bào)文幀的最大長度TFRAME_MAX。

  

 

  圖 1-2 LIN 報(bào)文幀

  1.4.2 LIN信息傳輸過程

  LIN從機(jī)向主機(jī)傳輸數(shù)據(jù)示如圖 1-3所示,,整個過程在主機(jī)的協(xié)調(diào)下進(jìn)行,。

  

 

  圖 1-3 從機(jī)向主機(jī)傳輸數(shù)據(jù)

  LIN主機(jī)向兩個或兩個以上的從機(jī)發(fā)送數(shù)據(jù)如圖 1-4所示,整個過程在主機(jī)的協(xié)調(diào)下進(jìn)行,。

  

 

  圖 1-4 主機(jī)向兩個或兩個以上的從機(jī)發(fā)送數(shù)據(jù)

  從機(jī)和從機(jī)之間傳輸數(shù)據(jù)如圖 1-5所示,,整個過程在主機(jī)的協(xié)調(diào)下進(jìn)行。

  

 

  圖 1-5 從機(jī)和從機(jī)之間傳輸數(shù)據(jù)

  1.4.3 LIN物理層控制

  ■ 同步間隔(SYNCHRONISATION BREAK)檢測

  為了能清楚識別報(bào)文幀的開始,,報(bào)文幀的第一個場是一個同步間隔,。同步間隔場(SYNCH BREAK FIELD)是由主機(jī)任務(wù)發(fā)送,它使所有的從機(jī)任務(wù)與總線時鐘信號同步,。同步間隔場有兩個不同的部分如圖 1-6所示,。第一個部分是由一個持續(xù)TSYNBRK或更長時間(即最小是TSYNBRK不需要很嚴(yán)格)的顯性總線電平。接著的第二部分是最少持續(xù)TSYNDEL 時間的隱性電平,,作為同步界定符,。第二個場允許用來檢測下一個同步場(SYNCH FIELD)的起始位。最大的間隔和界定符時間沒有精確的定義,,但必須符合整個報(bào)文頭THEADER_MAX 的總體時間預(yù)算,,THEADER_MAX在表 1-1中定義。

  

 

  圖 1-6 同步間隔場

  表 1-1 報(bào)文的定時

  

 

  同步間隔場的顯性電平長度至少為TSYNBRK(可以更長),,這個時間是用主機(jī)位定時來測量,。最小值應(yīng)根據(jù)連接從機(jī)節(jié)點(diǎn)指定的最小本地時鐘頻率所要求的閥值而得出。

  在SPMC75F2313A上,,同步間隔里的各個時間測量都是通過捕獲輸入實(shí)現(xiàn)的,。SPMC75F2313A的捕獲輸入可以很方便的測量TSYNBRK和TSYNDEL,并在檢測完成后與TSYNDEL的下降沿同步,。

  ■ 波特率測量

  波特率測量是在LIN總線的同步場(SYNCH FIELD)進(jìn)行的,。同步場包含了時鐘的同步信息。同步場的格式如圖 1-7所示,,它通過使UART發(fā)送"0x55"來實(shí)現(xiàn),,表現(xiàn)在8 個位定時中有5 個下降沿(即:"隱性"跳變到"顯性"的邊沿),。使用SPMC75F2313A的捕獲輸入功能可以很方便的測量出相鄰兩個下降沿之間的時間間隔,利用這個時間間隔就可以算出波特率,。

  

 

  圖 1-7 同步場示意圖

  1.5 系統(tǒng)設(shè)計(jì)

  系統(tǒng)電路原理框圖如錯誤!未找到引用源,。所示。電路由MCU控制核心電路和LIN接口兩部分構(gòu)成,。

  MCU控制核心電路主要由SPMC75F2313A實(shí)現(xiàn),,它主要完成LIN協(xié)議的實(shí)現(xiàn)和整個系統(tǒng)的控制。SPMC75F2313A集成有實(shí)現(xiàn)LIN總線結(jié)點(diǎn)的必要硬件,,包括UART,、捕獲輸入和足夠的定時器。特別是其捕獲輸入功能,,為LIN的幀頭識別,、幀同步和波特率測量提供了極大的便利。

  LIN接口部分主要是由LIN物理層接口芯片TJA1020構(gòu)成,,它主要完成MCU通信信號與LIN物理總線信號之間的相互轉(zhuǎn)換,。為MCU提供一個與LIN物理總線的接口。

  

 

  圖 1-8 硬件原理圖

  1.6 結(jié)語

  凌陽科技公司新推出SPMC75是一系列功能強(qiáng)大的工業(yè)級MCU,,具有極強(qiáng)的抗干擾能力,。其內(nèi)部集成有高性能的ADC,、增強(qiáng)型的定時計(jì)數(shù)器等功能部件,,強(qiáng)大捕獲比較功能和PWM生成功能使其在如LIN、RF Mode,、IrA等通信領(lǐng)域有非常杰出的表現(xiàn),。用SPMC75系列MCU可以方便的構(gòu)成各種簡潔高效的通信系統(tǒng)。

此內(nèi)容為AET網(wǎng)站原創(chuàng),,未經(jīng)授權(quán)禁止轉(zhuǎn)載,。