關(guān) 閉

新聞中心

EEPW首頁 > 工控自動(dòng)化 > 設(shè)計(jì)應(yīng)用 > 基于LPC2292的CAN總線智能節(jié)點(diǎn)設(shè)計(jì)

基于LPC2292的CAN總線智能節(jié)點(diǎn)設(shè)計(jì)

作者: 時(shí)間:2009-09-22 來源:網(wǎng)絡(luò) 收藏
3.2 控制器初始化

本文引用地址:http://butianyuan.cn/article/163561.htm

控制器的初始化過程主要包括相應(yīng)的引腳功能設(shè)置、工作方式設(shè)置、波特率參數(shù)設(shè)置以及出錯(cuò)警告界限設(shè)置等,下面是對(duì)1的初始化代碼(CAN2與之類似):


上面所述是對(duì)CAN控制器初始化的主要步驟,另外,還可以根據(jù)具體情況對(duì)其它CAN寄存器的值進(jìn)行設(shè)置。

中有個(gè)全局驗(yàn)收濾波器,該模塊可為所有CAN控制器提供接收標(biāo)識(shí)符的查詢功能(即驗(yàn)收濾波)。另外,驗(yàn)收濾波器還可為選擇的標(biāo)準(zhǔn)標(biāo)識(shí)符提供fullCAN-style自動(dòng)接收功能。在上面對(duì)CAN控制器的初始化中,為了簡(jiǎn)化程序,時(shí)將驗(yàn)收濾波器設(shè)置為旁路。但在實(shí)際應(yīng)用中,應(yīng)根據(jù)需要對(duì)它進(jìn)行設(shè)置。事實(shí)上,讓它參與接收濾波的工作有助于改善接收信息的選擇性。CAN控制器初始化完成后,即可開始發(fā)送和接收信息。

3.3 發(fā)送過程

發(fā)送子程序主要負(fù)責(zé)報(bào)文的發(fā)送。發(fā)送時(shí),用戶只需要將待發(fā)送的數(shù)據(jù)按特定的格式組合成一幀報(bào)文送入CAN控制器的發(fā)送緩存區(qū),然后啟動(dòng)發(fā)送即可。當(dāng)然,在向發(fā)送緩沖區(qū)送報(bào)文之前,必須先做一些判斷。發(fā)送程序分為發(fā)送遠(yuǎn)程幀和數(shù)據(jù)幀兩種,其中遠(yuǎn)程幀無數(shù)據(jù)場(chǎng)。圖2是發(fā)送過程流程圖。

3.4 接收過程

接收子程序主要負(fù)責(zé)報(bào)文的接收以及其它情況的處理。接收子程序相對(duì)要復(fù)雜一些。因?yàn)樵谔幚斫邮請(qǐng)?bào)文的過程中,同時(shí)也要對(duì)關(guān)閉、錯(cuò)誤報(bào)警、接收溢出等情況進(jìn)行處理。CAN控制器報(bào)文的接收主要有兩種方式:中斷接收方式和查詢接收方式。如果對(duì)通信的實(shí)時(shí)性要求不是很強(qiáng),建議采用查詢接收方式。兩種接收方式的編程思想基本相同。圖3給出了用查詢方式接收?qǐng)?bào)文的流程圖。

4 結(jié)束語

節(jié)點(diǎn)可利用EasyJTAG仿真器進(jìn)行調(diào)試仿真,并可在實(shí)驗(yàn)環(huán)境下完成通訊功能。該方法與51系列單片機(jī)相比,其通信速度較高。因此,在此基礎(chǔ)上構(gòu)建CAN控制系統(tǒng)具有實(shí)際意義,但對(duì)于不同系統(tǒng),其軟件和硬件需要作相應(yīng)的改動(dòng)。


上一頁 1 2 下一頁

評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉