現場總線技術已經廣泛應用于工業控制中,尤其是CAN(Controler Area Nerwork)總線由于具有可靠性高、成本低、容易實現等優點,在現場總線實際工程應用中占有了較大份額。伴隨著總線技術發展,LIN(Local Interconnect Network)總線作為一種低成本串行通信網絡,其目標是為現有現場總線控制網絡提供輔助功能,特別是汽車控制網絡中總線應用,因此必然存在一個LIN總線和其它總線通信接口實現,本文以CAN總線為例,提出了一種基于AT89C51CC03單片機CAN-LIN網關設計方案。
LIN是一種低成本串行通訊網絡用于實現汽車中分布式電子系統控制,LIN目標是為現有汽車網絡(例如CAN總線)提供輔助功能,因此LIN總線是一種輔助總線網絡,在不需要CAN總線帶寬和多功能場合比如智能傳感器和制動裝置之間通訊,使用LIN總線可大大節省成本。LIN通訊是基于SCI(UART)數據格式,采用單主控制器/多從設備模式,僅使用一根12V信號總線和一個無固定時間基準節點同步時鐘線。
網關硬件設計
整個網關模塊包括LIN接口、CAN接口、CAN波特率設置、LIN波特率設置、電源模塊、狀態燈六個子模塊(圖1)。
圖1 系統結構框圖
AT89C51CC03是Atmel公司一款內嵌CAN控制器8位單片機。本設計中以AT89C51CC03單片機為基礎,選擇TJA1020作為LIN總線收發器,采用單片機UART接口,在CAN模塊設計部分選擇PCA82C250作為CAN總線收發器,具體電路連接如圖2、圖3、圖4所示。
圖2 單片機電路
圖4 LIN接口電路
在電路中我們設計了一個5位撥碼開關,由于在各個不同工作系統中,LIN總線和CAN總線傳輸是不一樣,這就需要改換軟件,因此在此設計中用一個5位撥碼開關用于波特率設置,三位用于LIN波特率設置,兩位用于CAN波特率設置。同時為了展示網關工作狀態,特意設計了工作指示燈,在接收和發送信號時分別以一定頻率閃爍,當有故障出現時,兩個燈同時點亮。
為增強CAN節點抗干擾能力,單片機TXDC和RXDC引腳并不是直接與PCA82C250ATXD和RXD引腳相連,而是通過高速光耦6N137相連(圖3)。這樣很好實現了總線上各個節點間電氣隔離,光耦部分電路所采用兩個電源VCC和VDD必須是完全隔離,否則采用光耦也就失去了意義。
網關軟件設計
網關軟件設計主要包括主控程序模塊和CAN模塊軟件設計以及LIN模塊軟件設計,CAN模塊軟件設計主要有三個子函數,一個是CAN初始化CAN_INIT(),另外兩個是CAN_RE_ISR()和CAN_SEND()。CAN_INIT()主要是設置CAN通信波特率和CAN基本設置,波特率可以根據撥碼開關值來設定,在系統上電之后通過自檢程序自動掃描,查預先設定好波特率表格,設定CAN通信波特率。
CAN_RE_ISR()負責信息接收和處理,CAN_SEND()負責信息發送。
LIN模塊軟件設計主要包括幾個文件:LIN.H、LIN.C、TEMR0.H TEMRO.C,其中LIN.H、LIN.C分別實現LIN規范設定以及UART波特率設定和LIN信息接收與發送,TEMR0.H TEMRO.C用于產生LIN總線波特率。主控程序設計主要完成整個網關信息轉發功能,當CAN接收中斷發生時,置LIN發送標志位,準備轉發CAN信息到LIN網絡;同樣,當LIN接收中斷生時,置CAN發送標志位,準備發送LIN信息到CAN網絡。
整個軟件以C51編寫,并利用KEIL公司仿真軟件進行軟件調試,最后將完整程序燒寫到AT89C51CC01flash空間。
結語
本文提出了基于AT89C51CC01單片機CAN-LIN網關設計,解決了現場總線控制中CAN總線控制網絡和LIN總線控制網絡之間信息傳輸問題,為現場總線靈活應用提供了基礎。本設計經過現場實驗,實驗結果表明網關運行良好,工作可靠穩定,并已應用到實際工作中。
容-源-電-子-網-為你提供技術支持本文地址:http://www.189yp.com/dz/22/15791389023612.shtml
本文標簽:
猜你感興趣:
運用單片機便是了解單片機硬件結構,以及內部資源的運用,在匯編或C語言中學會各種功用的初始化設置,以及完成各種功用的程序編制。 運用按鈕輸入信號,發光二極管顯現輸出
關鍵詞:51單片機PIC單片機單片機 所屬欄目:設計編程
我的答案是:不可以原因如下:一、軟件仿真多用于教學,把更多精力用在軟件的實現上由于學生學習時間寶貴,焊接一套單片機實驗板又比較花時間,并且實驗項目太多,所以為了
關鍵詞:PIC單片機51單片機單片機 所屬欄目:設計編程
對于新手來說,首先根據自己學的什么樣單片機就選什么類型的單片機,熟悉什么類型的單片機就選什么類型的單片機。因為單片機不僅要設計電路,還要設計控制軟件。選自己熟悉的單片機上手最快,也最容易獲得成功。下面介紹如何選擇最適合的單片機。
關鍵詞: 所屬欄目:設計編程
單片機晶振的作用是什么
在初學單片機的時候,總是伴隨很多有關于晶振的問題,其實晶振就是如同人的心臟,是血液的脈搏,把單片機的晶振問題搞明白了,51單片機的其他問題
關鍵詞:51單片機PIC單片機單片機 所屬欄目:設計編程
Keil單片機編程軟件Keil C51是單片機C語言軟件開發系統,與匯編相比,C語言在功能上、結構性、可讀性、可維護性上有明顯的優勢,因而易學易用。Keil提供了包括C編譯器、宏匯
關鍵詞:51單片機PIC單片機 所屬欄目:設計編程
詳解51單片機運行過程 注:1.ROM:只讀存儲器,單片機的只讀存儲區大多用于存儲程序固又稱程序存儲器。51單片機是EPROM,所謂的EPROM是可擦除的只
關鍵詞: 所屬欄目:設計編程
pic單片機和c51有什么區別(區別1)總線結構:MCS-51單片機的總線結構是馮-諾依曼型,計算機在同一個存儲空間取指令和數據,兩者不能同時進行;而PIC單片機的總線結構是哈佛結構
關鍵詞:單片機PIC單片機51單片機 所屬欄目:設計編程
實例分析51單片機出現故障及解決辦法。詳細如下:
故障現象:做了一個單片機溫度監測系統,仿真機上一切正常,燒寫芯片無法工作。相關電路框圖: 用51做處理器,外圍電路如
關鍵詞:單片機51單片機 所屬欄目:設計編程
PIC單片機匯編語言指令詳解
pic單片機為最常用單片機之一,許多程序均基于pic單片機進行開發。因此,熟練pic單片機編程尤為重要。為保證大家能準確、熟練掌握pic單片機的使
關鍵詞:PIC單片機單片機 所屬欄目:設計編程
三種51單片機程序下載方法介紹
一般只能通過三種方式下載程序到單片機中:1.JTAG 2.ISP 3.IAP1.JTAG要使用JTAG方式下載程序,不管是使用J-LINK、ULINK、ST-LINK,只需要把
關鍵詞:PIC單片機51單片機單片機 所屬欄目:設計編程
I2C每一位信號的時序流程,而I2C通信在字節級的傳輸中,也有固定的時序要求。I2C通信的起始信號(Start)后,首先要發送一個從機的地址,這個地址一共有 7位,緊跟著的第 8
關鍵詞:PIC單片機51單片機單片機 所屬欄目:設計編程
越來越多的測量儀器提供GPIB(General Purpose Intefface Bus)總線接口,通過該總線可以方便快捷地連接帶有GPIB接口的儀器及計算機,組成一個GPlB網絡。GPIB設備與計算機連
關鍵詞:PIC單片機51單片機單片機 所屬欄目:設計編程
每個單片機系統里都有晶振,全程是叫晶體震蕩器,在單片機系統里晶振的作用非常大,他結合單片機內部的電路,產生單片機所必須的時鐘頻率,單片機的一切指令的執行都是建立
關鍵詞:51單片機PIC單片機單片機 所屬欄目:設計編程
引言變頻調速作為交流電機調速的主要手段已經在工業領域中應用的十分廣泛,其具有的調速范圍寬、穩速精度高、動態響應快、適用范圍廣、運行可靠等技術性能,已逐步取代直流
關鍵詞:單片機變頻器 所屬欄目:設計編程
電子密碼鎖按照輸入密碼方式的不同可分為好多種,其中最常用的一種是用數字鍵盤輸入密碼的電子密碼鎖。這一講主要介紹用ATmega8和LCD1602液晶顯示器等組成的電子密碼鎖,這
關鍵詞:單片機 所屬欄目:設計編程
1.實驗任務如圖所示,監視開關K1(接在P3.0端口上),用發光二極管L1(接在單片機P1.0端口上)顯示開關狀態,如果開關合上,L1亮,開關打開,L1熄滅。2.電路原理圖3.系統
關鍵詞:單片機LEDLED電路圖 所屬欄目:設計編程
近日,有媒體報道稱,北京微電子技術研究所日前成功研制出國內首個自主可控的宇航用千萬門級高性能高可靠FPGA(現場可編程門陣列)芯片。FPGA一直是國內的短板,市場基本被
關鍵詞:單片機 所屬欄目:設計編程
怎么學單片機?也常看到有人說學了好幾個月可就是沒有什么進展。當然,受限于每個人受到的教育水平不同和個人理解能力的差異,學習起來會有快慢之分,但我感覺最重的就是學
關鍵詞:單片機 所屬欄目:設計編程
在單片機中有一些獨立的存儲單元是用來控制這些器件的,被稱之為特殊功能寄存器(SFR)。 <特殊功能寄存器地址映象表(一)> <特殊功能寄存器地址映象表(二)> <
關鍵詞:單片機寄存器 所屬欄目:設計編程
倒立擺作為一種典型的控制系統實驗裝置,具有非線性、自然不穩定等特性,常用來作為檢驗某種控制理論或方法是否合理的典型方案。一階倒立擺系統能用多種理論和方法來實現其
關鍵詞:單片機 所屬欄目:設計編程