新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于短距無(wú)線通信及CAN總線的照明光源控制研究

基于短距無(wú)線通信及CAN總線的照明光源控制研究

作者: 時(shí)間:2013-06-26 來(lái)源:網(wǎng)絡(luò) 收藏
挪威Nordic公司的nRF905芯片主要應(yīng)用于小面積區(qū)域.nRF905在無(wú)線數(shù)據(jù)通信.無(wú)線報(bào)警及安全系統(tǒng).無(wú)線監(jiān)測(cè).無(wú)線開鎖.家庭自動(dòng)化和玩具等諸多領(lǐng)域得到廣泛應(yīng)用.

  4.系統(tǒng)硬件4.1 nRF905通訊模塊nRF905與STC89C52單片機(jī)硬件接口如圖1所示.

  4.2 CAN控制收發(fā)器本方案用到的PCA82C250芯片是為CAN協(xié)議配置的物理總線接口,能夠?yàn)?a class="contentlabel" href="http://2s4d.com/news/listbylabel/label/CAN總線">CAN總線提供差動(dòng)發(fā)送能力,為SJA1000提供差動(dòng)接收能力.

  圖2為SJA1000與PAC82C250組成的硬件圖.

  5.系統(tǒng)軟件硬件操作需要通過(guò)軟件來(lái)實(shí)現(xiàn).軟件的基本操作包括初始化和常規(guī)服務(wù)兩部分.初始化服務(wù)包括SJA1000和nRF905兩個(gè)芯片的初始化,SJA1000發(fā)送和接收的配置,nRF905的發(fā)送和接收的配置;常規(guī)服務(wù)包括:基站.從站.無(wú)線終端節(jié)點(diǎn)之間的通信.

  5.1 操作初始化SJA1000芯片,配置SJA_MOD寄存器,進(jìn)入復(fù)位模式,確定驗(yàn)收濾波器模式;配置SJA_CDR0寄存器,選擇PeliCAN模式,禁止SJA1000的CLKOUT引腳;配置總線定時(shí)寄存器波特率設(shè)置為125Kbps,配置輸出控制寄存器為正常輸出模式,TX0為下拉,TX1為下拉;配置命令寄存器釋放接收緩沖器,配置驗(yàn)收濾波寄存器.

  5.2 無(wú)線數(shù)據(jù)操作初始化nRF905,nRF905所有配置都是通過(guò)SPI接口進(jìn)行,SPI接口由5個(gè)寄存器組成,只有在掉電模式和Standby模式是激活的.置高PWR_UP,置低TRX_CE使nRF905工作于Standby模式.SPI接口包括5個(gè)內(nèi)部寄存器:狀態(tài)寄存器.RF配置寄存器.發(fā)送地址寄存器.發(fā)送有效數(shù)據(jù)寄存器.接收有效數(shù)據(jù)寄存器.通過(guò)配置RF配置寄存器可使nRF905正常運(yùn)行.

  5.3 數(shù)據(jù)發(fā)送CAN發(fā)送:發(fā)送緩沖器配置分為描述符區(qū)和數(shù)據(jù)區(qū),描述符區(qū)第一個(gè)字節(jié)是幀信息字節(jié),它說(shuō)明了幀格式(標(biāo)準(zhǔn)幀格式或擴(kuò)展幀格式).遠(yuǎn)程或數(shù)據(jù)幀和數(shù)據(jù)長(zhǎng)度.標(biāo)準(zhǔn)幀格式有兩個(gè)字節(jié)的識(shí)別碼,擴(kuò)展幀格式有4個(gè)字節(jié)的識(shí)別碼,數(shù)據(jù)長(zhǎng)度最長(zhǎng)為8個(gè)字節(jié),發(fā)送緩沖器長(zhǎng)13個(gè)字節(jié).配置發(fā)送緩沖器工作在擴(kuò)展幀格式,發(fā)送數(shù)據(jù)幀,數(shù)據(jù)長(zhǎng)度為8個(gè)字節(jié),識(shí)別碼與下位機(jī)匹配,發(fā)送數(shù)據(jù)為nRF905無(wú)線接收的數(shù)據(jù).檢測(cè)狀態(tài)寄存器,接收狀態(tài)位為0.發(fā)送完成狀態(tài)位為1且發(fā)送緩沖器狀態(tài)位為1,則將發(fā)送緩沖器數(shù)據(jù)放入TX緩沖器,命令寄存器SJA_CMR發(fā)送請(qǐng)求位置1,發(fā)送數(shù)據(jù).

  5.4 CAM總線數(shù)據(jù)接收CAN接收:中斷寄存器SJA_IR接收中斷位置高,開始接收RX緩沖區(qū)數(shù)據(jù),將數(shù)據(jù)存入接收緩沖區(qū),存儲(chǔ)完成后接收緩沖器位置高釋放RX緩沖區(qū);釋放仲裁丟失捕捉寄存器和錯(cuò)誤捕捉寄存器.

  5.5 無(wú)線數(shù)據(jù)發(fā)送nRF905發(fā)送:TRX_CE=0,TXEN=0,nRF905處于SPI編程;CSN置低,SPI等待一條指令W_TX_PAYLOAD=“00100000”,寫TX有效數(shù)據(jù),寫操作從字節(jié)0開始;發(fā)送TX緩存存放數(shù)據(jù);CSN置高;CSN置低,SPI等待一條指令,W_TX_ADDRESS=“00100010”,寫TX地址,全部寫操作從字節(jié)0開始;發(fā)送TX緩存存放地址;CSN置高;TRX_CE置高開始發(fā)送;發(fā)送完成后TRX_CE置低.

  5.6 無(wú)線數(shù)據(jù)接收nRF905接收:TRX_CE=1,TXEN=0,nRF905 處于接收狀態(tài);DR=1TRX_CE==1TXEN==0是否為1,判斷是否有新數(shù)據(jù)傳入且數(shù)據(jù)接收完成,TRX_CE=0進(jìn)入Standby模式;CSN置低,SPI等待一條指令,R_RX_PAYLOAD=“00100100”,讀RX有效數(shù)據(jù),讀操作從字節(jié)0開始;CSN置高;TRX_CE=1.

  5.7 基站控制常規(guī)服務(wù)即無(wú)線通信基站工作包括:在完成對(duì)nRF905芯片的初始化后使TXEN和TRX_CE引腳置低,nRF905處于SPI編程,將nRF905所發(fā)地址及數(shù)據(jù)寫入緩存,置高TRX_CE和TXEN引腳,發(fā)送數(shù)據(jù),發(fā)送不成功則重新發(fā)送,如果成功,置低TRX_CE,等待下一個(gè)數(shù)據(jù)發(fā)送.

  6.系統(tǒng)測(cè)試將CAN收發(fā)器單片機(jī)的串行接口與PC機(jī)串口相連,利用PC機(jī)串口通信程序?qū)?shù)據(jù)通過(guò)串口發(fā)送給CAN接收器,實(shí)現(xiàn)CAN節(jié)點(diǎn)的收發(fā)數(shù)據(jù)測(cè)試.串行通信的參數(shù)設(shè)置為:串口端口號(hào):

  1;波特率:9 6 0 0 b p s;數(shù)據(jù)位:8位;停止位:1位.

  在使用串口時(shí)先要打開串口,然后將數(shù)據(jù)傳給CAN節(jié)點(diǎn)單片機(jī).發(fā)送數(shù)據(jù)中要包含無(wú)線控制器的下位機(jī)地址和其他控制信息,如在實(shí)驗(yàn)中使用的節(jié)點(diǎn)地址為0×00020406.其他控制數(shù)據(jù)為34.34對(duì)應(yīng)的二進(jìn)制數(shù)據(jù)為00110100.

  實(shí)驗(yàn)表明,本方案給出的無(wú)線與有線混合的網(wǎng)絡(luò)控制系統(tǒng)工作正常.

  無(wú)線通信基站發(fā)送0X34到無(wú)線通信從站,從站接收信號(hào)后通過(guò)C A N總線發(fā)送至終端節(jié)點(diǎn),終端節(jié)點(diǎn)接收并在數(shù)碼管顯示接收數(shù)據(jù),并控制下面LED燈相應(yīng)的暗滅,顯示正常發(fā)送RXOK信號(hào)通過(guò)CAN總線傳輸至無(wú)線通信從站,從站將信號(hào)發(fā)送至基站,基站接收信號(hào)并將數(shù)碼管置零,等待下一個(gè)發(fā)送信息.

  7.小結(jié)該系統(tǒng)能利用有線與無(wú)線網(wǎng)絡(luò)相結(jié)合完成對(duì)光源的控制,取得了較好的效果,綜合了有線和無(wú)線網(wǎng)絡(luò)的各自優(yōu)點(diǎn),使得網(wǎng)絡(luò)控制成本更低.網(wǎng)絡(luò)利用率更高.系統(tǒng)智能化更強(qiáng),便于網(wǎng)絡(luò)的管理和應(yīng)用,適合學(xué)校.家庭.政府.企業(yè)等場(chǎng)所應(yīng)用,該網(wǎng)絡(luò)結(jié)構(gòu)的應(yīng)用將具有可觀的社會(huì)效益和經(jīng)濟(jì)效益.

光控開關(guān)相關(guān)文章:光控開關(guān)原理
聲光控開關(guān)相關(guān)文章:聲光控開關(guān)原理

上一頁(yè) 1 2 下一頁(yè)

評(píng)論


相關(guān)推薦

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

關(guān)閉