dsPIC3F3013的CAN息線數(shù)據(jù)采集系統(tǒng)
MCP2515的SPI接口支持0,0和1,1運(yùn)行模式。外部數(shù)據(jù)和命令通過(guò)SI引腳傳送到器件中,且數(shù)據(jù)在SCK時(shí)鐘信號(hào)的上升沿傳送進(jìn)去,在SCK的下降沿通過(guò)SO引腳傳送出去。CS片選引腳設(shè)置為低電平后,MCP2515希望收到的第一個(gè)字節(jié)是指令/命令字節(jié),這就要求在調(diào)用一個(gè)命令時(shí),要先把CS 引腳拉升為高電平然后再降低為低電平。使用裝載TX緩沖器指令,取消了一般寫(xiě)命令所需的8位地址,只需選擇地址指針設(shè)置的6個(gè)地址之一,便可快速地將數(shù)據(jù)寫(xiě)入發(fā)送緩沖器。
下面以MCP2515的裝載TX緩沖器為例來(lái)說(shuō)明數(shù)據(jù)的發(fā)送過(guò)程。裝載TX緩沖器的時(shí)序如圖5所示。本應(yīng)用有3路信號(hào),每一路信號(hào)都要求精確到小數(shù)點(diǎn)后2 位,所以經(jīng)過(guò)處理后的數(shù)據(jù)格式使用浮點(diǎn)型。一個(gè)浮點(diǎn)數(shù)需要占用4字節(jié),為了使監(jiān)控中心易于管理,用包含4字節(jié)數(shù)據(jù)長(zhǎng)度的標(biāo)準(zhǔn)數(shù)據(jù)幀來(lái)發(fā)送數(shù)據(jù)。現(xiàn)以裝載 TX緩沖器0為例說(shuō)明一次數(shù)據(jù)發(fā)送操作,如圖6所示。本文引用地址:http://m.butianyuan.cn/article/163565.htm
dsPIC30F3013的SPI模塊在數(shù)據(jù)發(fā)送和接收時(shí)有8位和16位兩種工作模式可選。MCP2515的SPI指令、內(nèi)部寄存器地址及數(shù)據(jù)都是8位的,所以在初始化SPI模塊時(shí),清零MODE16(SPI1CON10>),將通信數(shù)據(jù)配置為8位寬度。
結(jié) 語(yǔ)
本文介紹了一種以Microchip公司dsPIC30F3013為控制核心,以MCP2515為CAN控制器和以MCP2551作為CAN收發(fā)器的數(shù)據(jù)采集系統(tǒng)。該系統(tǒng)與傳感器組成一個(gè)CAN節(jié)點(diǎn),有效地改善了工控系統(tǒng)中監(jiān)控部分線路布局范圍廣、布線凌亂、抗干擾能力差的現(xiàn)狀,同時(shí),使整個(gè)監(jiān)控系統(tǒng)更易于擴(kuò)展。實(shí)踐證明,這種設(shè)計(jì)是可靠的、高性能的。只是系統(tǒng)工作在多雷電地區(qū)時(shí),可能會(huì)發(fā)生雷擊事故,在后續(xù)設(shè)計(jì)中會(huì)使用高速光電耦合器在CAN控制器與 CAN收發(fā)器之間做隔離。
評(píng)論