873單片機(jī)以太網(wǎng)通信的方法,分別闡述了硬件及軟件設(shè)計(jì)方法。" />

色偷偷伊人-色偷偷综合-色无五月-色香蕉影院-色亚洲影院

PIC16F873基于ZNE-100T的以太網(wǎng)通信

所屬欄目:計(jì)算機(jī)網(wǎng)絡(luò)論文 發(fā)布日期:2010-10-19 16:42 熱度:

  摘要:本文介紹了一種采用ZNE-100T以太網(wǎng)串口數(shù)據(jù)轉(zhuǎn)換模塊實(shí)現(xiàn)PIC16F
  873單片機(jī)以太網(wǎng)通信的方法,分別闡述了硬件及軟件設(shè)計(jì)方法。
  關(guān)鍵詞:ZNE-100T,嵌入式以太網(wǎng)技術(shù),以太網(wǎng)通信
  0、引言
  近幾年來,嵌入式系統(tǒng)正在向網(wǎng)絡(luò)化發(fā)展,各種嵌入式設(shè)備接入因特網(wǎng)進(jìn)行信息發(fā)布、數(shù)據(jù)采集和遠(yuǎn)程控制,給人們的生活和工作帶來了很多便利。嵌入式以太網(wǎng)技術(shù)就是將嵌入式系統(tǒng)接入因特網(wǎng)進(jìn)行訪問的控制技術(shù)。
  在工業(yè)控制領(lǐng)域,嵌入式系統(tǒng)的典型應(yīng)用是:嵌入式系統(tǒng)作為下位機(jī)進(jìn)行數(shù)據(jù)采集和控制,PC作為上位機(jī)完成各種管理功能。
  目前常用的幾種網(wǎng)絡(luò)方案有:在單片機(jī)中實(shí)現(xiàn)網(wǎng)絡(luò)協(xié)議、采用嵌入式實(shí)時(shí)操作系統(tǒng)、采用網(wǎng)絡(luò)芯片或Inernet接入服務(wù)器等。筆者對(duì)以上三種常用方式進(jìn)行了對(duì)比,見表1所示。
  表1三種網(wǎng)絡(luò)方案的對(duì)比
   實(shí)現(xiàn)方法 優(yōu)點(diǎn) 缺點(diǎn) 典型芯片
  在單片機(jī)中實(shí)現(xiàn)網(wǎng)絡(luò)協(xié)議 單片機(jī)中軟件固化TCP/IP協(xié)議棧,再加以太網(wǎng)控制器實(shí)現(xiàn)CSMA/CD 硬件成本低 對(duì)單片機(jī)資源、容量等要求高;軟件設(shè)計(jì)復(fù)雜;開發(fā)難度大,周期長 MCU有Ubicom公司的SX52BD,
  NIC有Realtek公司的RTL8029
  采用嵌入式RTOS 高性能的嵌入式RTOS支持TCP/IP協(xié)議棧,外加以太網(wǎng)控制器 系統(tǒng)功能強(qiáng)大,開發(fā)者不必自己實(shí)現(xiàn)TCP/IP協(xié)議 開發(fā)成本大,嵌入式RTOS價(jià)格昂貴;對(duì)MCU的性能要求高 RTOS有VxWork、spSOS和WindowsCE等
  采用網(wǎng)絡(luò)芯片或Inernet接入服務(wù)器 硬件固化了網(wǎng)絡(luò)協(xié)議并提供網(wǎng)絡(luò)接口,獨(dú)立于MCU 開發(fā)者不必考慮網(wǎng)絡(luò)芯片的工作細(xì)節(jié) 并不支持所有的MCU;價(jià)格較貴 WIZnet的W3100A;廣東致遠(yuǎn)的ZNE系列
  1、ZNE-100T簡介
  ZNE-100T是一款由廣東致遠(yuǎn)公司生產(chǎn)的嵌入式以太網(wǎng)串口數(shù)據(jù)轉(zhuǎn)換模塊,內(nèi)部集成TCP/IP協(xié)議棧,用戶利用它可以輕松實(shí)現(xiàn)嵌入式設(shè)備的網(wǎng)絡(luò)功能,節(jié)省人力物力和開發(fā)時(shí)間,使產(chǎn)品更快的投入市場,增強(qiáng)競爭力。
  ZNE-100T的主要功能特點(diǎn)如下:
   內(nèi)部集成了TCP/IP協(xié)議棧,用戶利于它可以輕松完成嵌入式設(shè)備的網(wǎng)絡(luò)功能;
   ZNE-100T實(shí)現(xiàn)的功能是Serial(TTL)to10MEthernet,Serial最大波特率為115200bps,支持RS232/485/422等規(guī)范;
   可利用Webbrowser和Windowsutility輕松進(jìn)行設(shè)定;
   提供通用配置函數(shù)庫,方便用戶使用VC、VB、Delphi和C++Builder開發(fā)應(yīng)用程序;
   支持TCPServer,TCPClient,UDP,RealCOMdriver,GroupMode等作業(yè)模式;
   提供RealCOMdriver模式下的管理軟件,真正實(shí)現(xiàn)虛擬串口;
   提供5個(gè)可控制IO口,并提供相應(yīng)的DEMO;
   提供串口起始字節(jié)和結(jié)束字節(jié)分包功能;
   支持動(dòng)態(tài)(DHCP)或靜態(tài)獲取IP地址;
   尺寸小,只有44.5×31.7mm。
  2、硬件電路設(shè)計(jì)
  筆者利用ZNE-100T模塊在應(yīng)變測量中,使應(yīng)變測量系統(tǒng)的現(xiàn)場測量功能節(jié)點(diǎn)具備以太網(wǎng)傳輸功能,充分利用以太網(wǎng)較長的傳輸距離和較高的傳輸速度的優(yōu)點(diǎn)。
  ZNE-100T的引腳如圖1所示。
  表1.jpg
  圖1ZNE-100T模塊引腳圖
  應(yīng)變測量系統(tǒng)的現(xiàn)場測量功能節(jié)點(diǎn)的MCU采用微芯公司的PIC16F873單片機(jī)。由于是在一個(gè)系統(tǒng)內(nèi)部短距離進(jìn)行異步串行通信,MCU與ZNE之間可直接使用邏輯電平互聯(lián)。為保護(hù)ZNE-100T模塊內(nèi)的CPU,在通信引腳之間串一個(gè)的限流電阻。同時(shí)為了匹配ZNE-100T模塊與PIC16F873的電平,在TXD和RXD引腳上分別掛一個(gè)上拉電阻。
  表3.jpg
  圖2串行接口設(shè)計(jì)示意圖
  以太網(wǎng)信號(hào)ETX+、ETX-、ERX+、ERX-與外界通訊的接口采用的是RJ45連接器。由于ZNE系列模塊內(nèi)部都集成了網(wǎng)絡(luò)變壓器,因此可以直接將這幾個(gè)以太網(wǎng)引腳接到RJ45連接器上。
  3、以太網(wǎng)通信的軟件設(shè)計(jì)
  軟件部分的設(shè)計(jì)包括:ZNE-100T模塊的設(shè)置、PC機(jī)(遠(yuǎn)端測控終端)上應(yīng)用軟件的編寫、PIC16F873(現(xiàn)場測量功能節(jié)點(diǎn))中軟件的編寫。
  3.1、ZNE-100T的配置
  配置軟件是在工作前,根據(jù)實(shí)際應(yīng)用情況,在遠(yuǎn)端測控終端中即PC機(jī)中通過以太網(wǎng)對(duì)ZNE模塊進(jìn)行設(shè)置的軟件。利用VC++6.0結(jié)合MFC進(jìn)行編程。配置軟件要對(duì)以下幾個(gè)內(nèi)容進(jìn)行設(shè)定:串口配置,包括串口的波特率、校驗(yàn)位、數(shù)據(jù)位、停止位;工作模式配置,模塊具有TCPServer,TCPClient,UDP,RealCOM,Group組播,TCPAuto工作模式供選擇;目標(biāo)IP地址、目標(biāo)端口號(hào)的設(shè)置;幀起始字節(jié)和幀結(jié)束字節(jié)的設(shè)定。
  3.2、PC機(jī)(遠(yuǎn)端測控終端)上應(yīng)用軟件的編寫
  軟件可以在VC++6.0中開發(fā)的,并利用了Winsock進(jìn)行網(wǎng)絡(luò)編程。用戶界面如圖3所示。
  表4.jpg
  圖3上位機(jī)軟件運(yùn)行界面
  下面以發(fā)送控件對(duì)應(yīng)的函數(shù)為例,列舉程序代碼:
  voidCTesttransferDlg::OnButtonSend()
  {
   EnableSend(0);//設(shè)置對(duì)話框中的“發(fā)送”按鈕不可點(diǎn)
   UpdateData(TRUE);//將對(duì)話框的控件中的數(shù)據(jù)交換到變量中。
   LPTSTRpstr=m_strEditSend.GetBuffer(m_strEditSend.GetLength()+1);//把在對(duì)話框中輸入的數(shù)據(jù)放入緩沖中,并返回緩沖地址
   intres=m_sock.Send(pstr,m_strEditSend.GetLength()+1);//發(fā)送數(shù)據(jù),并返回布爾值表明是否成功
   if((res==SOCKET_ERROR&&m_sock.GetLastError()==WSAEWOULDBLOCK)||(res>0&&res<m_strEditSend.GetLength()+1))//如果OutputBuffer已滿即處于忙狀態(tài)或未完全發(fā)完
   {
    m_sock.SetResend((BYTE*)(pstr+((res==-1)?0:res)),
    (m_strEditSend.GetLength()+1)-((res==-1)?0:res));//重發(fā)或繼續(xù)發(fā)送
   }
  elseif(res==SOCKET_ERROR&&m_sock.GetLastError()!=
  WSAEWOULDBLOCK)//如果出現(xiàn)其他錯(cuò)誤
   {
    MessageBox("發(fā)送失敗");//出現(xiàn)提示框“發(fā)送失敗”
    EnableSend(1);//設(shè)置對(duì)話框中的“發(fā)送”按鈕可點(diǎn)
   }
   else//其余情況,即已發(fā)送成功
    EnableSend(1);//設(shè)置對(duì)話框中的“發(fā)送”按鈕可點(diǎn)
   m_strEditSend.ReleaseBuffer();//釋放緩沖
   UpdateData(FALSE);//將數(shù)據(jù)在對(duì)話框中對(duì)應(yīng)控件中顯示出來
  }
  
  3.3、PIC16F873(現(xiàn)場測量功能節(jié)點(diǎn))軟件的編寫
  利用PIC16F873的USART模塊發(fā)送和接收數(shù)據(jù)。PIC16F873的USART是其兩個(gè)串行I/O模塊之一(另一個(gè)是SSP模塊)。USART可以配置為全雙工異步系統(tǒng),也可配置為半雙工同步系統(tǒng),本系統(tǒng)中將其配置為全雙工異步模式。
  串口的發(fā)送和接收在函數(shù)usart_receive()和函數(shù)usart_send()中完成。
  函數(shù)usart_receive()在主函數(shù)中被調(diào)用,等待并接受從串口送來的控制命令,把接收到的數(shù)據(jù)保存在全局變量unsignedcharReceive[9]中。
  voidusart_receive(void)
  {
   CREN=1;//接收允許。
   for(k=0;k<20;k++)
    {
     while(1)//等待接受數(shù)據(jù)。
     {
      if(RCIF==1)break;  
     }
     Receive[k]=RCREG;//讀取數(shù)據(jù),同時(shí)清RCIF。
     if(Receive[k]='')break;//發(fā)現(xiàn)結(jié)束字符則停止接受。
   }
   CREN=0;//接收禁止。
  }
  函數(shù)usart_send()通過串口發(fā)送恢復(fù)命令、采樣結(jié)果等。它的函數(shù)帶有參數(shù),為待發(fā)送的字符串?dāng)?shù)組。
  voidusart_send(unsignedcharsend_string[20])
  {
   inti=0;
   TXEN=1;//發(fā)送允許。
   TXREG=0x01;//加幀起始字節(jié)0x01。
   while(1)//等待幀起始字節(jié)發(fā)送完成。
    {
     if(TXIF==1)break;
  } 
  while(1)//發(fā)送有效數(shù)據(jù),為參數(shù)中帶的字符串。
  {
    TXREG=send_string[i];
    while(1)
    {
     if(TXIF==1)break;//等待發(fā)送完成。
  }
    if(send_string[i]=='')break;//發(fā)現(xiàn)結(jié)束字符則停止發(fā)送。
    i++;//指向下一個(gè)字符。
  }
  ......;//求校驗(yàn)和,并發(fā)送
  ......;//發(fā)送幀結(jié)束字節(jié)0x03。
   TXEN=0;//發(fā)送禁止。
  }
  4、結(jié)論
  利用ZNE-100T實(shí)現(xiàn)基于PIC16F873的以太網(wǎng)通信具有工作穩(wěn)定可靠,使用方便簡單的優(yōu)點(diǎn),從而使應(yīng)變測量系統(tǒng)具備以太網(wǎng)傳輸功能,充分利用以太網(wǎng)較長的傳輸距離和較高的傳輸速度的優(yōu)點(diǎn)。
  
  
  參考文獻(xiàn):
  1孫曉云,劉東輝,劉朝英.接口與通信技術(shù)[M].第1版.北京:中國電力出版社,2007
  2羅軍舟,黎波濤,楊明,吳俊,黃俊.TCP/IP協(xié)議及網(wǎng)絡(luò)編程技術(shù)[M].第1版.北京:清華大學(xué)出版社,2004
  3王憲,白一彤.基于單片機(jī)89S51的以太網(wǎng)通信[J].2009全國計(jì)算機(jī)網(wǎng)絡(luò)與通信學(xué)術(shù)會(huì)議論文集,2009
  4鐘燕華.串行接口的Internet接入服務(wù)器的核心技術(shù)探討[J].寧波大紅鷹職業(yè)技術(shù)學(xué)院學(xué)報(bào),2007,1(26):26~34
  5廣州致遠(yuǎn)電子有限公司.ZNE-100TDatasheet.wwwembedcontrol.com,2006

  搜論文知識(shí)網(wǎng)致力于為需要刊登論文的人士提供相關(guān)服務(wù),提供迅速快捷的論文發(fā)表、寫作指導(dǎo)等服務(wù)。具體發(fā)表流程為:客戶咨詢→確定合作,客戶支付定金→文章發(fā)送并發(fā)表→客戶接收錄用通知,支付余款→雜志出版并寄送客戶→客戶確認(rèn)收到。鳴網(wǎng)系學(xué)術(shù)網(wǎng)站,對(duì)所投稿件無稿酬支付,謝絕非學(xué)術(shù)類稿件的投遞!

文章標(biāo)題:PIC16F873基于ZNE-100T的以太網(wǎng)通信

轉(zhuǎn)載請(qǐng)注明來自:http://www.anghan.cn/fblw/dianxin/wangluo/4639.html

相關(guān)問題解答

SCI服務(wù)

搜論文知識(shí)網(wǎng) 冀ICP備15021333號(hào)-3

主站蜘蛛池模板: www.成年人视频 | 99re在线精品视频 | 国产精品深夜福利免费观看 | 日韩综合区 | 99久久99久久精品免费看蜜桃 | 可以免费看的黄色网址 | 97国内精品久久久久久久影视 | 日韩精品福利在线 | www.国产一区二区 | 青青草青青操 | 在线国产播放 | a久久久久一级毛片护士免费 | 一个色综合亚洲色综合 | 欧美人伦禁忌dvd | 男女一级做片a性视频 | 男女毛片免费视频看 | 综合网视频 | 亚洲精品一区二三区在线观看 | 国内主播大秀福利视频在线看 | 大色香蕉色视频大全 | 人妖另类xx00视频 | 免费黄色欧美视频 | 中文字幕第2页 | 亚洲欧美日韩国产精品 | 日韩免费高清一级毛片 | 性做久久久久久久免费观看 | 成人免费专区 | 日韩一区二区三区在线播放 | 国模私拍高清大胆专业网站 | 亚洲成人黄色网址 | 特黄特黄特色大片免费观看 | 91手机在线视频观看 | 一级做a爰片欧美一区 | 操操综合网 | 亚洲视频在线精品 | 柠檬福利视频在线观看 | 欧美3d人妖交 | 欧美精品在线看 | 播播网手机在线播放 | 中文字幕在线永久视频 | 欧美精品一区二区三区免费观看 |