《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 通信與網(wǎng)絡(luò) > 設(shè)計(jì)應(yīng)用 > 基于SPI雙機(jī)通信的弧光保護(hù)系統(tǒng)
基于SPI雙機(jī)通信的弧光保護(hù)系統(tǒng)
2015年微型機(jī)與應(yīng)用第2期
涂永飛,,王名傳
(中國(guó)能源建設(shè)集團(tuán)鎮(zhèn)江華東電力設(shè)備制造廠(chǎng),,江蘇 鎮(zhèn)江 212017)
摘要: 針對(duì)弧光保護(hù)系統(tǒng)的實(shí)際需要,,設(shè)計(jì)了一種基于SPI的雙機(jī)通信系統(tǒng),。簡(jiǎn)要闡述了該系統(tǒng)的設(shè)計(jì)思路,,并給出了具體的實(shí)現(xiàn)方法,。實(shí)驗(yàn)表明,,采用該方法能夠滿(mǎn)足實(shí)際工程中的需求,,對(duì)于其他SPI的應(yīng)用也有很好的借鑒價(jià)值,。
Abstract:
Key words :

  摘  要: 針對(duì)弧光保護(hù)系統(tǒng)的實(shí)際需要,設(shè)計(jì)了一種基于SPI的雙機(jī)通信系統(tǒng),。簡(jiǎn)要闡述了該系統(tǒng)的設(shè)計(jì)思路,,并給出了具體的實(shí)現(xiàn)方法。實(shí)驗(yàn)表明,,采用該方法能夠滿(mǎn)足實(shí)際工程中的需求,,對(duì)于其他SPI的應(yīng)用也有很好的借鑒價(jià)值。

  關(guān)鍵詞: 弧光保護(hù),;SPI,;LPC1788;協(xié)議

0 引言

  在一些重要的用戶(hù)變電站和發(fā)電廠(chǎng)的廠(chǎng)用電系統(tǒng)中[1],,弧光短路是中,、低壓開(kāi)關(guān)柜內(nèi)部最嚴(yán)重的故障,由于電弧電阻的原因,,短路電流往往達(dá)不到速斷整定值而不能快速動(dòng)作切斷故障,,造成嚴(yán)重的后果。據(jù)統(tǒng)計(jì)資料表明,,近年來(lái),,每年每1 000臺(tái)開(kāi)關(guān)柜就有7臺(tái)遭到損壞,,故障率為0.7%,農(nóng)村配電網(wǎng)的概率更高,,達(dá)1.2%,。有的甚至發(fā)展成“火燒連營(yíng)”的事故,這些配電網(wǎng)事故處理不當(dāng)甚至?xí)U(kuò)大發(fā)展為輸電網(wǎng)事故,,造成重大的經(jīng)濟(jì)損失,。2010年,云南電網(wǎng)下發(fā)了《關(guān)于在中低壓開(kāi)關(guān)柜加裝電弧光保護(hù)的通知》,,要求在所有的35 kV和10 kV開(kāi)關(guān)柜中加裝電弧光保護(hù),,目前南方電網(wǎng)已在逐漸推廣。

  中國(guó)能源建設(shè)集團(tuán)華東電力設(shè)備制造廠(chǎng)研制的ZHG-1A型智能弧光保護(hù)系統(tǒng)采用紫外光弧光檢測(cè)和過(guò)電流檢測(cè)雙判據(jù)原理,,具有保護(hù)動(dòng)作速度快,、可靠性高等特點(diǎn)。它是一個(gè)模塊化系統(tǒng),,包括主控單元,、電流單元、弧光單元,,系統(tǒng)構(gòu)成示意圖如圖1所示,。

001.jpg

1 弧光保護(hù)系統(tǒng)主控系統(tǒng)通信結(jié)構(gòu)原理與設(shè)計(jì)

  主控單元是電弧光保護(hù)系統(tǒng)的核心部件,負(fù)責(zé)輸入量的采集,、測(cè)量,、計(jì)算及邏輯判斷,實(shí)現(xiàn)系統(tǒng)的各項(xiàng)保護(hù)邏輯,、與站內(nèi)監(jiān)控系統(tǒng)通信等功能,。主控系統(tǒng)采用DSP+雙ARM結(jié)構(gòu),其中一塊ARM(A片)采用NXP公司的LPC178x芯片負(fù)責(zé)與站內(nèi)系統(tǒng)通信,,另一塊ARM(B片)同樣采用LPC178x芯片負(fù)責(zé)液晶顯示與DSP通信,。在與站內(nèi)監(jiān)控系統(tǒng)通信時(shí),A片ARM要把相關(guān)數(shù)據(jù)通過(guò)B片ARM傳遞給DSP,,為此兩塊ARM之間要進(jìn)行通信,。主控系統(tǒng)通信結(jié)構(gòu)如圖2所示。

002.jpg

2 SPI通信設(shè)計(jì)與實(shí)現(xiàn)

  2.1 SPI硬件實(shí)現(xiàn)

  LPC178x/177x系列的SSP是一個(gè)同步串行端口(SSP)控制器[2],,可控制SPI,、4線(xiàn)SSI或Microwire總線(xiàn)的操作。SSP可以與總線(xiàn)上的多個(gè)主機(jī)或從機(jī)交互,。但在一次給定的數(shù)據(jù)傳輸過(guò)程中,,總線(xiàn)上只能有一個(gè)主機(jī)與一個(gè)從機(jī)進(jìn)行通信。數(shù)據(jù)傳輸原則上是全雙工模式,4~16位數(shù)據(jù)的幀由主機(jī)發(fā)送到從機(jī)或由從機(jī)發(fā)送到主機(jī),。SSP控制器共用以下4個(gè)管腳:

 ?。?)SCK:串行時(shí)鐘管腳,用來(lái)同步數(shù)據(jù)傳輸?shù)臅r(shí)鐘信號(hào),。它由主機(jī)驅(qū)動(dòng),,從機(jī)接收。無(wú)論主機(jī)往從機(jī)寫(xiě)數(shù)據(jù)還是從從機(jī)讀數(shù)據(jù),,它的時(shí)鐘信號(hào)都是由主機(jī)的SCK管腳產(chǎn)生,,從機(jī)不產(chǎn)生時(shí)鐘信號(hào)。

 ?。?)SSEL:幀同步/從機(jī)選擇管腳,,當(dāng)作主機(jī)時(shí)此管腳可作為普通的I/O使用;當(dāng)作從機(jī)時(shí)此管腳不可用作普通I/O口,,只作為SSP的從機(jī)選擇,。主機(jī)其他的普通I/O管腳也可與從機(jī)的SSEL管腳相連,用作從機(jī)的片選,。

 ?。?)MISO:主機(jī)輸入從機(jī)輸出。MISO信號(hào)使串行數(shù)據(jù)從從機(jī)傳輸?shù)街鳈C(jī),。

 ?。?)MOSI:MOSI信號(hào)使串行數(shù)據(jù)從主機(jī)傳輸?shù)綇臋C(jī)。

  另外,,本系統(tǒng)在兩片ARM之間預(yù)留了兩根聯(lián)絡(luò)線(xiàn),以便通信不穩(wěn)定時(shí)便于調(diào)整,。

  2.2 SPI軟件實(shí)現(xiàn)

  在雙機(jī)通信過(guò)程中,,主機(jī)發(fā)送采用查詢(xún)方式,從機(jī)接收采用中斷方式,。主機(jī)發(fā)送數(shù)據(jù)的同時(shí)也在接收數(shù)據(jù),,從機(jī)接收數(shù)據(jù)的同時(shí)也在發(fā)送數(shù)據(jù)。通過(guò)配置SSP寄存器,,選擇SPI模式,、設(shè)置數(shù)據(jù)長(zhǎng)度和通信速率。由于設(shè)置從機(jī)接收到第4個(gè)數(shù)據(jù)時(shí)FIFO產(chǎn)生一次接收中斷,,因此,,主機(jī)每次發(fā)送一組40個(gè)數(shù)據(jù),從機(jī)只取前37個(gè)數(shù)據(jù)為有效數(shù)據(jù),,后3個(gè)數(shù)據(jù)接收但作為假數(shù)據(jù)不用,;主機(jī)接收的前4個(gè)數(shù)據(jù)也為假數(shù)據(jù)不用,后36個(gè)數(shù)據(jù)為有效數(shù)據(jù),。當(dāng)一組數(shù)據(jù)接收完成時(shí),,調(diào)用數(shù)據(jù)處理函數(shù)進(jìn)行處理,。主機(jī)SPI流程圖如圖3所示。

003.jpg

  在SPI通信中,,主機(jī)向從機(jī)發(fā)送數(shù)據(jù),,如何判斷數(shù)據(jù)發(fā)送正確及接收完成SPI協(xié)議本身并未提供任何規(guī)范。在設(shè)計(jì)中,,固定數(shù)據(jù)發(fā)送的個(gè)數(shù),,定義表1所示的SPI數(shù)據(jù)幀結(jié)構(gòu),可以很好地解決這個(gè)問(wèn)題[3],。

004.jpg

  表1中,,起始字節(jié)表明一幀傳輸?shù)拈_(kāi)始,這里定義為0XFF,;標(biāo)志字節(jié)表明此次傳輸?shù)臄?shù)據(jù)類(lèi)型,,根據(jù)特定的應(yīng)用類(lèi)型作具體的規(guī)定;數(shù)據(jù)長(zhǎng)度表明此次傳輸?shù)臄?shù)據(jù)長(zhǎng)度,,用字節(jié)數(shù)表示,;應(yīng)用服務(wù)數(shù)據(jù)為所要傳輸?shù)木唧w應(yīng)用數(shù)據(jù)。

  當(dāng)所有數(shù)據(jù)接收完成時(shí),,根據(jù)SPI軟件協(xié)議,,標(biāo)志字節(jié)為0XAA表明此組數(shù)據(jù)為偽數(shù)據(jù),可以不作處理,,直接丟棄,。當(dāng)起始字節(jié)不是0XFF時(shí),即表示此組數(shù)據(jù)接收數(shù)據(jù)有誤,。在通信中,,主機(jī)每隔一段時(shí)間向從機(jī)發(fā)送數(shù)據(jù),從機(jī)根據(jù)標(biāo)志字節(jié)判定是控制命令還是運(yùn)行狀態(tài)數(shù)據(jù)[4],。當(dāng)從機(jī)接收的是控制命令時(shí),,從機(jī)等待主機(jī)下一幀數(shù)據(jù)發(fā)送的同時(shí),把相應(yīng)的數(shù)據(jù)發(fā)給主機(jī),。

  下面給出從機(jī)的SSP1口初始化和SSP1的收發(fā)函數(shù)代碼,。

  (1)SSP1口初始化代碼

  void Slave_SSP1Init(void)

  {uint8_t i,;

  uint8_t uiDummy=uiDummy=0,;

  LPC_SC->PCONP|=(0x1<<10);

  LPC_IOCON->P0_7 &=~0x07,;//SSP CLK

  LPC_IOCON->P0_7|=0x02,;

  LPC_IOCON->P0_6&=~0x07;

  LPC_IOCON->P0_6|=0x02;

  LPC_IOCON->P0_8&=~0x07,;

  LPC_IOCON->P0_8|=0x02,;//SSP MISO

  LPC_IOCON->P0_9&=~0x07;

  LPC_IOCON->P0_9|=0x02,;//SSP MOSI

  LPC_SSP1->CR0=0x07<<0|//數(shù)據(jù)長(zhǎng)度為8位

  0x00<<4|//幀格式為SPI

  0x00<<6|//CPOL為0

  0x01<<7|//CPHA為1

  0x1D<<8,;

  LPC_SSP1->CPSR=0x2;//時(shí)鐘預(yù)分頻

  for(i=0,;i<8,;i++)

  {//清0接收FIFO

  uiDummy=LPC_SSP1->DR;

  }

  //從機(jī)模式

  if(LPC_SSP1->CR1&SSPCR1_SSE)

  {LPC_SSP1->CR1&=~SSPCR1_SSE,;}

  LPC_SSP1->CR1=SSPCR1_MS,;

  LPC_SSP1->CR1|=SSPCR1_SSE;

  LPC_SSP1->IMSC=0x04,;

  NVIC_EnableIRQ(SSP1_IRQn),;

  NVIC_SetPriority(SSP1_IRQn,4),;

  return,;

  }

  (2)SSP1收發(fā)函數(shù)代碼

  uint8_t SSP1RWFrames(Chip_SSP_DATA_SETUP_T *xf_setup)

  {

  uint8_t rdat,;

  uint8_t i,,uiDummy;

  LPC_SSP1->ICR=0x03,;while((LPC_SSP1->SR&(SSPSR_RNE))!=SSPSR_RNE),;*(xf_setup->rx_data+xf_setup->rx_cnt)=

  LPC_SSP1->DR;

  xf_setup->rx_cnt++,;

  while((LPC_SSP1->SR&(SSPSR_TNF|SSPSR_BSY))!=SSPSR_TNF),;LPC_SSP1->DR=*(xf_setup->tx_data+xf_setup->tx_cnt);

  xf_setup->tx_cnt++,;

  …

  }

3 結(jié)論

  本設(shè)計(jì)中,,兩個(gè)ARM的主頻都為100 MHz,,使用公共外設(shè)PCLK時(shí)鐘,,通過(guò)SSP時(shí)鐘分頻器產(chǎn)生SPCLK時(shí)鐘。在實(shí)驗(yàn)中也考慮過(guò)其他方案,,由于SPI的接收中斷處理方式且又要實(shí)現(xiàn)主從機(jī)收發(fā)同時(shí),,發(fā)現(xiàn)本方案可行。目前測(cè)試結(jié)果表明,,SPI能很好地滿(mǎn)足它們之間高速的雙向數(shù)據(jù)傳輸要求,,其最高傳輸速率可達(dá)5 Mb/s,解決了實(shí)際應(yīng)用中的雙機(jī)如何可靠通信等問(wèn)題,已成功應(yīng)用于弧光保護(hù)系統(tǒng),,也可用于其他需要雙機(jī)通信的場(chǎng)合,。

參考文獻(xiàn)

  [1] 李從飛,陳凡,,魯雅斌,,等.DPR360ARC弧光保護(hù)系統(tǒng)設(shè)計(jì)[J].電力系統(tǒng)保護(hù)與控制,2010,,38(12):125-128.

  [2] NXP.LPC178x/7x用戶(hù)手冊(cè)[EB/OL].[2011-07-06].http://www.cn.nxp.com/documents/other/LPC177x-178x_UM_Simp CHN.pdf.

  [3] 王杰,,王小鵬,趙國(guó)輝.采用SPI接口實(shí)現(xiàn)雙DSP雙向通信和同步[J].微型機(jī)與應(yīng)用,,2010,,29(24):96-98.

  [4] 高振,羅秋鳳.SPI接口與CRC算法在雙DSP數(shù)據(jù)通信中的應(yīng)用[J].電子產(chǎn)品世界,,2011,,18(1):46-49.


此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載,。