999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

家校通網絡控制器的通信技術

2008-04-12 00:00:00楊慶江張廣璐
現代電子技術 2008年1期

摘 要:針對家校通網絡控制器的功能需求,提出一種串口與網絡結合的通信技術。首先描述了網絡控制器的硬件平臺和基于TCP/IP協議之上的應用層協議,然后著重討論了網絡通信技術和串口通信技術,在通信過程中,采用主從應答方式以提高數據傳輸的有效性,減少數據沖突現象的發生,最后通過現場測試到的數據對該通信技術的可行性與穩定性進行說明與分析。

關鍵詞:網絡控制器;通信協議;Rabbit2000單片機;套接字;串口通信

中圖分類號:TN91 文獻標識碼:B

文章編號:1004373X(2008)0105403

Communication Technology of Jia-xiao-tong Network Controller

WEI Zi,YANG Qingjiang,ZHANG Guanglu

(Heilongjiang Institute of Science and Technology,Harbin,150027,China)



Abstract:For the function demand of the network controller in Jia-xiao-tong system,the paper proposes a communication technology of combining serial-port with network.Firstly,it describes the network controller′s hardware platform and the application-layer protocol based on TCP/IP protocol stack.Then,it mainly discusses the communication network technology and the communication serial technology.The polling scheme is applied to improve data transfer effectiveness and reduce data collision.Finally,it explains and analyzes the communication technology′s feasibility and stability through filed test data.

Keywords:network controller;communication protocol;Rabbit2000 single chip;socket;serial communication



1 引 言

隨著TCP/IP等網絡通信的出現,將串口通信與網絡通信相結合的趨勢越來越明顯,這是保護使用者既往投資和整體利益的一種有效辦法。本文所討論的通信技術就是將串口與網絡通信相結合并在實際應用中取得良好效果的一種通信解決方案。

“家校通”是利用現代信息技術實現家庭與學校實時溝通的教育網絡平臺,其組成部分為:家校互聯卡、讀卡器、無線網關、網絡控制器、短信發射接收機。網絡控制器的主要功能是通過無線網關從讀卡器獲取信息,并與互聯網服務平臺進行網絡通信,是家校通系統的核心。

2 網絡控制器的硬件平臺

根據網絡控制器的功能要求,考慮整體的性能、價格方面,CPU采用Rabbit2000單片機,他是Z-World公司特別為中小型控制器而設計的高性能8位微處理器。編譯環境為Dynamic C,提供Socket級TCP/IP編程。網絡控制器的硬件結構如圖1所示。

3 應用層通信協議

3.1 網絡控制器與讀卡器的串口通信協議

網絡控制器與讀卡器的通信主要通過異步串行RS 485接口,基于通用串行通信RS 485數據傳輸單元(字節格式)有不帶校驗位的10 b和帶奇偶校驗位的11 b兩種數據格式。為了提高數據傳送的效率和可靠性,采用無奇偶校驗位的10 b數據格式,并由BBC校驗生成校驗碼與數據一起發送。

開始標志讀卡器地址信息長度命令和參數校驗

2 B1 B2 B14 B1 B

(3)命令字:

A1:從讀卡器讀取一條記錄。

A2:控制器正確接收記錄信息后,返回更新記錄的讀地址命令,使地址指針指向下一條記錄。

A4:設置校正讀卡器時間。

A6:測試控制器與讀卡是否正常通信。

3.2 網絡控制器與服務平臺的網絡通信協議

網絡協議通常分不同的層次進行開發,每一層分別負責不同的通信功能。TCP/IP通常是一個4層協議,包括數據鏈路層、網絡層(含IP協議)、傳輸層(含TCP協議)和應用層。本網絡協議就是基于TCP/IP協議之上的應用層協議,采用請求應答的通信模式。考慮到協議的可靠性和實現的方便性,數據采用ASCII碼表示。

(1)報文組成

4 通信技術

控制器建立socket連接后,向服務器發送連接請求和數據傳輸,并實時判斷連接的有效性,在有效連接的狀態下,實現控制器、服務器、讀卡器三者的正常通訊,程序流程如圖2所示。

4.1 網絡通信技術的實現

socket初始化: 首先要對RTL8019AS的控制寄存器進行初始化配置,Dynamic C已將這部分配置封裝成函數放入REALTEK.LIB庫中,應用時只需調用相關函數。之后再調用函數庫dcrtcp.lib中的幾個簡單函數可完成socket的初始化,以下是程序的主體框架。

#define TCPCONFIG1

#memmapxmem

#usedcrtcp.lib

main()

{ 

sock[CD#*2]init( );

while(ifpending(IF[CD#*2]DEFAULT)==IP[CD#*2]COMING[CD#*2]UP)

tcp[CD#*2]tick(NULL); 

tcp[CD#*2]open(socket,0,destIP,sockport,1); 

…… ……

}

在建立TCP的連接中,Dynamic C有兩種方法打開TCP socket:一種是被動的方式,調用函數tcp[CD#*2]listen(),等待客戶端進行連接;一種是主動的方式,調用函數tcp[CD#*2]open(),根據相應的參數(IP地址和端口號)主動連接到服務器端。本通信技術采用的就是主動方式(作為客戶端)。

Socket數據的發送與接收:數據發送調用sock[CD#*2]write(socket,str[CD#*2]send,str[CD#*2]send[CD#*2]len)。在讀取socket緩沖區數時,先判斷緩沖區中是否有數據,有數據再進行讀操用,同時有超時設置。

start[CD#*2]time=SEC[CD#*2]TIMER;

/*SEC[CD#*2]TIMER為秒級系統時間*/

end[CD#*2]time=start[CD#*2]time;

while((end[CD#*2]time

!recv[CD#*2]count)/*READ[CD#*2]TIME為設定的等待時間*/

{

str[CD#*2]recvbuf[CD#*2]len=sock[CD#*2]bytesready(socket);

/*判斷socket讀緩沖區是否有數據*/

if(str[CD#*2]recvbuf[CD#*2]len>0)

recv[CD#*2]count=sock[CD#*2]read(socket,str[CD#*2]recvbuf,

str[CD#*2]recvbuf[CD#*2]len); /*讀socket*/

}

if(revc[CD#*2]count) 

{…… ……}

/*拆分接收到的命令字,讀取有效信息*/

else 

break;

4.2 串口通信技術的實現

主要包含3個步驟:命令字的組合,設置串口D,通過設置Rabbit2000的PE3來控制數據的發送與接收。以A6命令為例,程序主體框架如下:

command[0]=0xA6;/*A6命令*/

create[CD#*2]command(addr,command,pack);

/*組合命令字*/

serDopen(9600);/*9600為波特率*/

send[CD#*2]command(command,returnlen);/*發送數據*/

read[CD#*2]command(readbuf,sizeof(readbuf),10);

/*接收數據*/

void send[CD#*2]command(char *pack,int len)

{ 

int i;

WrPortI(PEDR, PEDRShadow,0x08);

WrPortI(PEB3R,NULL,0);

for(i=0;i

serDputc(pack[i]); 

}

int read[CD#*2]command(char *buf,int len,int time)

{ 

int i[CD#*2]return;

WrPortI(PEB3R,NULL,1<<3);

i[CD#*2]return=serDread(buf,len,time);

return i[CD#*2]return;

}

5 數據采集與分析

網絡控制器聯網正常運行時,向服務器發送的一包測試記錄數據為:

對數據包進行分析:0244為數據包的總長度,01為協議版本號,02為命令字,000003為序列號,21000102*****為設備號,09為數據包中的刷卡記錄總數,0080D122為測試卡號,07070414152715為刷卡時間(順序為年周月日時分秒),03為狀態。

采集從服務器返回的命令:001501020000031,其中

列號,1為正確接收。返回命令格式符合協議要求,內容正確。

網絡控制器向讀卡器發送的命令(以A6為例): aa ff 01 00 03 a6 41 41 f1,其中aa ff表示本命令為控制器發給讀卡器,01為讀卡器地址,00 03為數據長度,a6為命令字,41 41為測試數據,f1為校驗位。

采集從讀卡器返回的命令:bb ff 01 00 02 41 41 47 d1 22 07 07 04 14 15 42 17 1 6b 00 00 00,其中bb ff表示本命令為讀卡器發給控制器,01為讀卡器地址,00 02為數據長度,41 41為測試數據,47為校驗位,之后的為無效數據。

6 結 語

基于Rabbit2000實現串口與網絡結合的通信技術可以實時、準確地對數據進行處理、發送與接收。由采集到的數據表明數據收發的正確性,證明了本通信技術的可行性與可靠性。本通信技術已在家校通系統中取得了良好的通信效果,并可應用于其他數據傳輸系統中,具有廣泛的發展前景。

參 考 文 獻

[1]Z-World Inc.Rabbit2000 Microprocessor Designer′s Hand-book,2003.

[2]Z-WorldInc.Dynamic C TCP/IP User′s Manual,2003.

[3]林麗,朱宏.基于Rabbit2000的網絡通信技術[J].福建電腦,2005(4):45-46.

作者簡介 魏 紫 女,1982年出生,遼寧沈陽人,碩士研究生。主要從事電力電子技術與電子信息通信方向的研究。

注:“本文中所涉及到的圖表、注解、公式等內容請以PDF格式閱讀原文。”

主站蜘蛛池模板: 波多野结衣中文字幕久久| 日韩最新中文字幕| 狠狠色婷婷丁香综合久久韩国| 免费 国产 无码久久久| 国产女人18毛片水真多1| 青草91视频免费观看| 亚洲an第二区国产精品| 91九色国产在线| 热re99久久精品国99热| 国产成人资源| 超清无码一区二区三区| 亚洲IV视频免费在线光看| 丁香亚洲综合五月天婷婷| 999精品在线视频| 日韩欧美国产精品| 国产无码精品在线播放 | 9啪在线视频| 国产日韩精品一区在线不卡| 中文字幕久久亚洲一区| 69av免费视频| 91人妻在线视频| 婷婷午夜影院| 综合网天天| 这里只有精品在线播放| 高潮爽到爆的喷水女主播视频| 日本高清视频在线www色| 国内精品久久人妻无码大片高| 91精品视频在线播放| 日韩精品久久久久久久电影蜜臀| 欧美亚洲一区二区三区在线| 97精品伊人久久大香线蕉| 日韩A∨精品日韩精品无码| 亚洲精品日产AⅤ| 欧美日韩国产系列在线观看| 香蕉网久久| 乱系列中文字幕在线视频 | 国产成人资源| 在线欧美日韩| 国产精品无码影视久久久久久久| 免费亚洲成人| 欧美日本视频在线观看| 91在线播放免费不卡无毒| 日韩毛片免费| 制服丝袜 91视频| 国产精品成人第一区| 国产精品久久久久久久久久98| 亚洲国产在一区二区三区| 国产精品人人做人人爽人人添| 伊人蕉久影院| 在线无码私拍| 在线免费a视频| 成人国产精品视频频| 欧洲极品无码一区二区三区| 在线观看国产精品第一区免费| 久久特级毛片| 亚洲精品中文字幕午夜| 国产伦精品一区二区三区视频优播| 毛片一级在线| 国产黄色片在线看| 亚洲三级视频在线观看| 国产主播在线一区| 久草性视频| 青青草原国产一区二区| 99久久精品久久久久久婷婷| 亚洲制服丝袜第一页| 国产剧情一区二区| 中文字幕在线观看日本| 久久这里只有精品66| 国产成人亚洲无吗淙合青草| 99ri精品视频在线观看播放| 国产精品福利尤物youwu| 五月天久久婷婷| 91丨九色丨首页在线播放| 国产女人爽到高潮的免费视频| 国产aaaaa一级毛片| 国产亚洲精品91| 蝌蚪国产精品视频第一页| 亚洲人成网站观看在线观看| 亚洲AⅤ无码国产精品| 免费jizz在线播放| 欧美狠狠干| 国产偷国产偷在线高清|