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

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > CAN總線在測(cè)溫系統(tǒng)中的應(yīng)用

          CAN總線在測(cè)溫系統(tǒng)中的應(yīng)用

          作者: 時(shí)間:2016-09-12 來源:網(wǎng)絡(luò) 收藏

          控制器局部網(wǎng)(controller area network,CAN)屬于現(xiàn)場(chǎng)總線的范疇,它是一種有效支持分布式控制的串行通訊網(wǎng)絡(luò),被公認(rèn)為是最有前途的現(xiàn)場(chǎng)總線之一。本文利用MAX6675測(cè)溫芯片作為傳感器,使用CAN總線標(biāo)準(zhǔn)設(shè)計(jì)了一種智能測(cè)溫系統(tǒng)(適用范圍0℃~+1023.5℃)。該系統(tǒng)精度高(±0.5℃)、可靠性好、結(jié)構(gòu)簡單、成本低,在適用范圍內(nèi)可取代傳統(tǒng)的測(cè)溫系統(tǒng),對(duì)該系統(tǒng)稍加修改,可使它應(yīng)用于在多種測(cè)溫場(chǎng)合。

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

          1 硬件設(shè)計(jì)

          硬件電路由微處理器、CAN控制器、測(cè)溫芯片MAX6675、LED、鍵盤、復(fù)位電路、蜂鳴器等幾部分組成,如圖1所示。單片機(jī)AT89C51是硬件電路的核心,承擔(dān)CAN 控制器的初始化、數(shù)據(jù)收發(fā)控制等任務(wù);CAN總線控制器用于同上位機(jī)進(jìn)行遠(yuǎn)程通訊,能夠獨(dú)立完成CAN總線上數(shù)據(jù)的接收和發(fā)送工作;MAX6675芯片用于檢測(cè)和發(fā)送溫度數(shù)據(jù)。

          圖2 測(cè)溫電路圖

          MAX6675從I/O口線輸出數(shù)據(jù)的具體過程如下:P12端口輸出的低電平將CS變低,并提供時(shí)鐘信號(hào)給SCK,由SO口讀取測(cè)量結(jié)果。CS變低,將停止任何轉(zhuǎn)換過程,CS變高將啟動(dòng)一個(gè)新的轉(zhuǎn)換過程。

          一個(gè)完整串行接口讀操作需16個(gè)時(shí)鐘周期,在時(shí)鐘的下降沿讀16個(gè)輸出位。第15位是偽標(biāo)志位,并總為0;第14位到第3位為以MSB到LSB順序排列的轉(zhuǎn)換溫度值;第2位平時(shí)為低,當(dāng)熱電偶輸入開放時(shí)為高,開放熱電偶檢測(cè)電路完全由MAX6675實(shí)現(xiàn),為開放熱電偶檢測(cè)器操作,T-必須接地,并使能地點(diǎn)盡可能接近GND 腳;第1位為低以提供MAX6675器件身份碼,第0位為三態(tài)標(biāo)志位 。

          1.2的通信節(jié)點(diǎn)電路

          通信節(jié)點(diǎn)采用PHILIPS公司生產(chǎn)的符合CAN2.0B協(xié)議的獨(dú)立CAN通信控制器SJA1000及CAN收發(fā)器PCA82C250組成與其他智能節(jié)點(diǎn)或上位機(jī)的通信接口,實(shí)現(xiàn)數(shù)據(jù)傳輸。CAN控制器SJA1000工作在中斷模式,通過其中斷輸出引腳向CPU申請(qǐng)中斷,CPU在中斷子程序內(nèi)完成對(duì)上位機(jī)命令的解釋與執(zhí)行。CAN通信節(jié)點(diǎn)電路如圖3所示。

          圖4 溫度采集程序流程圖

          2.2 CAN通訊節(jié)點(diǎn)設(shè)計(jì)

          CAN接口通信軟件設(shè)計(jì)主要分為三部分:CAN初始化、數(shù)據(jù)發(fā)送、數(shù)據(jù)接收。

          2.2.1 CAN控制器SJA1000的初始化

          CAN初始化主要是設(shè)置SJA1000的參數(shù)。需要初始化的CAN控制寄存器有:模式寄存器、時(shí)分寄存器、接收代碼寄存器、屏蔽寄存器、總線定時(shí)寄存器、輸出控制寄存器。這些寄存器只能在CAN控制器處于復(fù)位狀態(tài)下才可寫訪。設(shè)SJA1000的首地址是0BF00H。初始化子程序如下:

          CR EQU 0BF00H; 控制寄存器

          CMR EQU 0BF01H; 命令寄存器

          SR EQU 0BF02H; 狀態(tài)寄存器

          IR EQU 0BF03H; 中斷寄存器

          ACR EQU 0BF04H; 驗(yàn)收碼寄存器

          AMR EQU 0BF05H; 驗(yàn)收屏蔽寄存器

          BTR0 EQU 0BF06H; 總線定時(shí)寄存器0

          BTR1 EQU 0BF07H; 總線定時(shí)寄存器1

          OCR EQU 0BF08H; 輸出控制寄存器

          CANINI:MOV DPTR,#CR ;開始初始化

          MOV A,#01H ;置復(fù)位請(qǐng)求為高

          MOVX @DPTR,A

          CANI1:MOVX A,@DPTR ;判復(fù)位請(qǐng)求有效

          JNB ACC.0,CAN I1

          MOV DPTR,#ACR ;寫接收碼寄存器

          MOV A,NODE;設(shè)置接點(diǎn)號(hào)

          MOVX @DPIR,A

          MOV DPTR,#AMR;寫接收碼屏蔽寄存器

          MOV A,#00H

          MOVX @DPTR,A

          MOV DPTR,#BTR0;寫總線定時(shí)寄存器0

          MOV A,NBTR0;設(shè)置波特率

          MOVX @DPIR,A

          MOV DPTR,#BTR1;寫總線定時(shí)寄存器1

          MOV A,NBTR1

          MOVX @DPTR,A

          MOV DPTR,#OCR;寫輸出控制寄存器

          MOV A,#0FAH

          MOV @DPTR,A

          MOV DPTR,#CDR;寫時(shí)鐘分頻寄存器

          MOV A,#00H ;設(shè)定工作模式

          MOVX @DfTR ,A

          MOV DPTR,#CR ;寫控制寄存器

          MOV A,#0EH ;開放中斷源

          MOVX @DPTR,A

          RET

          2.2.2 CAN接收與發(fā)送數(shù)據(jù)程序

          發(fā)送數(shù)據(jù)程序把數(shù)據(jù)存儲(chǔ)區(qū)中待發(fā)送的數(shù)據(jù)取出,組成數(shù)據(jù)幀,并將主機(jī)的ID地址填人幀頭,然后將數(shù)據(jù)幀發(fā)送到CAN 控制器的發(fā)送緩沖區(qū)。其數(shù)據(jù)幀形式如下:

          幀起始→仲裁場(chǎng)→控制場(chǎng)→數(shù)據(jù)場(chǎng)(8B)→CRC場(chǎng)→ACK場(chǎng)→幀結(jié)束。

          在接收到主機(jī)的發(fā)送請(qǐng)求后,發(fā)送程序啟動(dòng)發(fā)送命令。數(shù)據(jù)從CAN控制器發(fā)送到總線是由CAN控制器自動(dòng)完成的。數(shù)據(jù)從CAN總線到CAN控制器的接收緩沖區(qū)也是由CAN控制器自動(dòng)完成的。接收程序只需從接收緩沖區(qū)讀取數(shù)據(jù),并將其存儲(chǔ)在數(shù)據(jù)存儲(chǔ)區(qū)。接收和發(fā)送數(shù)據(jù)的中斷程序流程如圖5、圖6所示。

          圖5 接收數(shù)據(jù)的中斷程序流程 圖6 發(fā)送數(shù)據(jù)的中斷程序流程

          3 結(jié)語

          基于CAN總線的智能測(cè)溫系統(tǒng)具有測(cè)量范圍廣、精度高、環(huán)境適應(yīng)能力強(qiáng)等特點(diǎn)。該系統(tǒng)通過CAN適配器與計(jì)算機(jī)連接,可以方便地構(gòu)成分布式測(cè)控系統(tǒng)。已經(jīng)成功應(yīng)用于CNC精密成型磨削設(shè)備數(shù)控的研制項(xiàng)目中。此外,該智能測(cè)溫系統(tǒng)在電力、油田、樓宇、冶金等工業(yè)自動(dòng)化領(lǐng)域可具有廣泛的應(yīng)用前景。



          評(píng)論


          相關(guān)推薦

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

          關(guān)閉
          看屁屁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); })();