您現(xiàn)在的位置:
中國傳動(dòng)網(wǎng)
>
技術(shù)頻道
>
技術(shù)百科
>
基于AT89C51CC01單片機(jī)的CAN—LIN網(wǎng)關(guān)設(shè)計(jì)
時(shí)間:2007-07-03 11:56:00來源:shixiang
圖1 系統(tǒng)結(jié)構(gòu)框圖[/align]
AT89C51CC03是Atmel公司的一款內(nèi)嵌CAN控制器的8位單片機(jī)。本設(shè)計(jì)中以AT89C51CC03單片機(jī)為基礎(chǔ),選擇TJA1020作為LIN總線收發(fā)器,采用單片機(jī)的UART接口,在CAN模塊設(shè)計(jì)部分選擇PCA82C250作為CAN總線收發(fā)器,具體的電路連接如圖2、圖3、圖4所示。
[align=center]
圖2 單片機(jī)電路
圖3 CAN接口電路
圖4 LIN接口電路[/align]
在電路中我們設(shè)計(jì)了一個(gè)5位的撥碼開關(guān),由于在各個(gè)不同的工作系統(tǒng)中,LIN總線和CAN總線的傳輸是不一樣的,這就需要改換軟件,因此在此設(shè)計(jì)中用一個(gè)5位的撥碼開關(guān)用于波特率設(shè)置,三位用于LIN波特率設(shè)置,兩位用于CAN波特率設(shè)置。同時(shí)為了展示網(wǎng)關(guān)的工作狀態(tài),特意設(shè)計(jì)了工作指示燈,在接收和發(fā)送信號(hào)時(shí)分別以一定的頻率閃爍,當(dāng)有故障出現(xiàn)時(shí),兩個(gè)燈同時(shí)點(diǎn)亮。
為增強(qiáng)CAN節(jié)點(diǎn)的抗干擾能力,單片機(jī)的TXDC和RXDC引腳并不是直接與PCA82C250A的TXD和RXD引腳相連,而是通過高速光耦6N137相連(圖3)。這樣很好的實(shí)現(xiàn)了總線上各個(gè)節(jié)點(diǎn)間的電氣隔離,光耦部分電路所采用的兩個(gè)電源VCC和VDD必須是完全隔離的,否則采用光耦也就失去了意義。
網(wǎng)關(guān)軟件設(shè)計(jì)
網(wǎng)關(guān)的軟件設(shè)計(jì)主要包括主控程序模塊和CAN模塊軟件設(shè)計(jì)以及LIN模塊軟件設(shè)計(jì),CAN模塊軟件設(shè)計(jì)主要有三個(gè)子函數(shù),一個(gè)是CAN初始化CAN_INIT(),另外兩個(gè)是CAN_RE_ISR()和CAN_SEND()。CAN_INIT()主要是設(shè)置CAN通信的波特率和CAN基本設(shè)置,波特率可以根據(jù)撥碼開關(guān)的值來設(shè)定,在系統(tǒng)上電之后通過自檢程序自動(dòng)掃描,查預(yù)先設(shè)定好的波特率表格,設(shè)定CAN通信波特率。
CAN_RE_ISR()負(fù)責(zé)信息的接收和處理,CAN_SEND()負(fù)責(zé)信息發(fā)送。
LIN模塊軟件設(shè)計(jì)主要包括幾個(gè)文件:LIN.H、LIN.C、TEMR0.H TEMRO.C,其中LIN.H、LIN.C分別實(shí)現(xiàn)LIN規(guī)范的設(shè)定以及UART波特率的設(shè)定和LIN信息的接收與發(fā)送,TEMR0.H TEMRO.C用于產(chǎn)生LIN總線波特率。主控程序設(shè)計(jì)主要完成整個(gè)網(wǎng)關(guān)的信息轉(zhuǎn)發(fā)功能,當(dāng)CAN接收中斷發(fā)生時(shí),置LIN發(fā)送標(biāo)志位,準(zhǔn)備轉(zhuǎn)發(fā)CAN信息到LIN網(wǎng)絡(luò);同樣,當(dāng)LIN接收中斷生時(shí),置CAN發(fā)送標(biāo)志位,準(zhǔn)備發(fā)送LIN信息到CAN網(wǎng)絡(luò)。
整個(gè)軟件以C51編寫,并利用KEIL公司的仿真軟件進(jìn)行軟件調(diào)試,最后將完整程序燒寫到AT89C51CC01的flash空間。
結(jié)語
本文提出了基于AT89C51CC01單片機(jī)的CAN-LIN網(wǎng)關(guān)設(shè)計(jì),解決了現(xiàn)場總線控制中的CAN總線控制網(wǎng)絡(luò)和LIN總線控制網(wǎng)絡(luò)之間的信息傳輸問題,為現(xiàn)場總線的靈活應(yīng)用提供了基礎(chǔ)。本設(shè)計(jì)經(jīng)過現(xiàn)場實(shí)驗(yàn),實(shí)驗(yàn)結(jié)果表明網(wǎng)關(guān)運(yùn)行良好,工作可靠穩(wěn)定,并已應(yīng)用到實(shí)際工作中。
參考文獻(xiàn):
1. TJA1020 LIN 收發(fā)器手冊,廣東周立功發(fā)展有限公司
2. LIN Protocol Implementation on the AT89C51CC03,Atmel公司,4189B-AUTO-04/05標(biāo)簽:
傳動(dòng)網(wǎng)版權(quán)與免責(zé)聲明:凡本網(wǎng)注明[來源:傳動(dòng)網(wǎng)]的所有文字、圖片、音視和視頻文件,版權(quán)均為傳動(dòng)網(wǎng)(connectcrack.com)獨(dú)家所有。如需轉(zhuǎn)載請與0755-82949061聯(lián)系。任何媒體、網(wǎng)站或個(gè)人轉(zhuǎn)載使用時(shí)須注明來源“傳動(dòng)網(wǎng)”,違反者本網(wǎng)將追究其法律責(zé)任。
本網(wǎng)轉(zhuǎn)載并注明其他來源的稿件,均來自互聯(lián)網(wǎng)或業(yè)內(nèi)投稿人士,版權(quán)屬于原版權(quán)人。轉(zhuǎn)載請保留稿件來源及作者,禁止擅自篡改,違者自負(fù)版權(quán)法律責(zé)任。
產(chǎn)品新聞
更多>「一體機(jī)性價(jià)比王者」NK290M普及型數(shù)控...
2025-10-09
2025-09-23
影視舞臺(tái)燈光低煙無鹵扁平電纜13*4+2*(2...
2025-09-23
「頻」實(shí)力,新上市——富士電機(jī) FRENIC...
2025-09-08
華為昇騰Atlas800iA2 910B服務(wù)器Deepsee...
2025-09-04
TaiShan(泰山)200 2280系列服務(wù)器 鯤...
2025-09-03