dsPIC3F3013的CAN息線數(shù)據(jù)采集系統(tǒng)
Sallen Key濾波器的幅頻特性顯示,當(dāng)品質(zhì)因數(shù)在0.7~0.9之間時(shí),頻率特性達(dá)到最佳。本Q值選定為0.8。
使用dsPIC30F3013的12位ADC模塊進(jìn)行數(shù)據(jù)采集。對(duì)3路環(huán)境信號(hào)進(jìn)行循環(huán)掃描,每完成12個(gè)采樣/轉(zhuǎn)換過程產(chǎn)生一個(gè)中斷。中斷過程中完成4次平均值數(shù)字濾波及相應(yīng)參數(shù)的格式調(diào)整,然后,通過SPI接口傳送到CAN協(xié)議控制器。
1.2 CAN總線接口電路部分
CAN總線接口電路如圖3所示。本文引用地址:http://www.ex-cimer.com/article/163565.htm
CAN協(xié)議控制器采用Microchip公司生產(chǎn)的MCP2515。MCP2515是帶有SPI接口的獨(dú)立CAN控制器,它完全支持CAN V2.0B技術(shù)規(guī)范,通信速率為1 Mb/s,包括2個(gè)接收緩沖器、6個(gè)29位驗(yàn)收濾波寄存器、2個(gè)29位驗(yàn)收屏蔽寄存器、3個(gè)具有優(yōu)先級(jí)設(shè)定及發(fā)送中止的發(fā)送緩沖器、高速SPI接口(10 MHz)。
MCP2515與MCU的接口可以靈活配置。可通過引腳(如TXORTS)與MCU的數(shù)字I/O腳直接相連,利用數(shù)字I/O的讀寫功能控制MCP2515 的狀態(tài);也可以直接使用MCP2515的SPI指令集來實(shí)現(xiàn)所有的功能。用于控制MCP2515的SPI指令集如表1所列。
dsPIC30F3013通過SPI接口與MCP2515進(jìn)行通信,dsPIC30F3013的SPI模塊工作在主控模式,MCP2515工作在從動(dòng)模式。dsPIC30F3013通過調(diào)用SPI指令來訪問MCP2515的內(nèi)部寄存器。
MCP2551是一個(gè)可容錯(cuò)的高速CAN收發(fā)器,它完全符合ISO-11898標(biāo)準(zhǔn),包括能滿足24 V電壓要求。它的工作速率可高達(dá)1 Mb/s。
2 軟件設(shè)計(jì)
dsPIC30F3013作為控制核心,它承擔(dān)著數(shù)據(jù)采集處理和CAN通信的任務(wù)。數(shù)據(jù)采集部分的工作流程如圖4所示。
dsPIC30F3013的12位ADC模塊包含一塊ADCBUFO至ADCBUFF的16字雙口只讀緩沖區(qū),對(duì)ADC轉(zhuǎn)換結(jié)果進(jìn)行緩沖。本應(yīng)用采樣3路信號(hào),并用掃描輸入,經(jīng)過12次ADC轉(zhuǎn)換后,每次轉(zhuǎn)換的數(shù)據(jù)依次寫入ADCBUF0至ADCBUFB。即代號(hào)為0、3、6、9的AD-CBUF中存放的是同一個(gè)信號(hào)的不同時(shí)間的采樣值,將這4個(gè)緩沖器的結(jié)果相加,然后再右移2位,即可實(shí)現(xiàn)該信號(hào)的4次平均值數(shù)字濾波。其他兩個(gè)信號(hào)存放在與之相關(guān)的 ADCBUF中,處理方法與此相同。
評(píng)論