嵌入式網(wǎng)絡(luò)撥號(hào)功能設(shè)計(jì)與實(shí)現(xiàn)
3 網(wǎng)絡(luò)撥號(hào)設(shè)計(jì)實(shí)現(xiàn)
本文選用嵌入式Linux操作系統(tǒng),因?yàn)長(zhǎng)inux自帶TCP/IP協(xié)議,所以該系統(tǒng)省去了TCP/IP協(xié)議的移植。當(dāng)系統(tǒng)上電后,首先啟動(dòng)Linux系統(tǒng),建立主任務(wù),進(jìn)行串口和GPRS模塊的初始化,然后通過串口信號(hào)線驅(qū)動(dòng)Q2403A串口,通過AT指令集進(jìn)行一系列串口參數(shù)設(shè)置,并附著與GPRS網(wǎng)絡(luò),撥號(hào)到GGSN,新建PPP任務(wù)進(jìn)行數(shù)據(jù)鏈路層和網(wǎng)絡(luò)層的協(xié)商,得到IP地址,完成上網(wǎng)過程。本文采用Qt作為網(wǎng)絡(luò)撥號(hào)功能程序開發(fā)的基礎(chǔ)。同時(shí)在功能架構(gòu)設(shè)計(jì)方面,為了使程序更加合理,將網(wǎng)絡(luò)撥號(hào)分成兩部分,即網(wǎng)絡(luò)(network.h和network.cpp)和撥號(hào)(dailup.cp-p)。它們之間的調(diào)用由network.h完成。關(guān)系類圖如圖2所示。本文引用地址:http://m.butianyuan.cn/article/150808.htm
(1)network.h頭文件定義了撥號(hào)請(qǐng)求結(jié)果和網(wǎng)絡(luò)狀態(tài)。
①請(qǐng)求結(jié)果定義如下:
②狀態(tài)定義如下:
(2)network.cpp由類NetworkServer和Network組成,說明如下:
第一:類Network主要成員函數(shù):
①成員函數(shù):choices
功能:得到所有網(wǎng)絡(luò)服務(wù)配置。
原型:static QStringList choices(QListBox*=0,const QString&dir=QString::null)
②成員函數(shù):createServer
功能:創(chuàng)建NetworkServer實(shí)例,為qpe使用。
原型:static void createServer(QObject*parent)
③成員函數(shù):serviceName
功能:通過網(wǎng)絡(luò)服務(wù)配置文件得到網(wǎng)絡(luò)服務(wù)名。
原型:static QString serviceName(const QString&service)
④成員函數(shù):serviceType
功能:通過服務(wù)配置文件得到網(wǎng)絡(luò)服務(wù)類型。正常為“dialup”。
原型:static QString serviceType(const QString&service)
評(píng)論