基于WiFi無(wú)線(xiàn)網(wǎng)絡(luò )的嵌入式打印終端的設計
無(wú)線(xiàn)網(wǎng)卡的移植
本文引用地址:http://dyxdggzs.com/article/114734.htm嵌入式打印終端與服務(wù)器之間的網(wǎng)絡(luò )通信,主要是無(wú)線(xiàn)網(wǎng)卡與服務(wù)器端的無(wú)線(xiàn)路由之間的通信。Linux內核驅動(dòng)豐富,包含了多種型號的USB無(wú)線(xiàn)網(wǎng)卡驅動(dòng),用戶(hù)可以選擇合適無(wú)線(xiàn)網(wǎng)卡型號。本嵌入式打印終端系統中采用Linux-2.6.32.2內核。為了加載無(wú)線(xiàn)網(wǎng)卡驅動(dòng),我們在內核所在的目錄運行make menuconfig,進(jìn)入內核的配置主菜單。進(jìn)行如下選擇:networking support→wireless→Generic IEEE 802.11 Networking Stack(mac80211),這樣就選擇了無(wú)線(xiàn)網(wǎng)卡的協(xié)議類(lèi)型,然后退回到內核配置主菜單,選擇device drivers,通過(guò)device drivers-->netword device support-->wireless LAN,選擇Wireless LAN(IEEE 802.11)子項,并進(jìn)入就可以看到已經(jīng)配置了以芯片廠(chǎng)商為分類(lèi)方式的常見(jiàn)的各種USB無(wú)線(xiàn)網(wǎng)卡類(lèi)型,我們可以選擇我們需要的USB無(wú)線(xiàn)網(wǎng)卡類(lèi)型。我們重新編譯內核,然后下載到程序存儲芯片中重啟,就可以在啟動(dòng)信息中看到無(wú)線(xiàn)網(wǎng)卡已被識別。通過(guò)正確配置無(wú)線(xiàn)網(wǎng)卡,就可以實(shí)現無(wú)線(xiàn)網(wǎng)卡與無(wú)線(xiàn)路由的無(wú)線(xiàn)連接了,連接信息如圖3所示。如果無(wú)線(xiàn)路由連接網(wǎng)絡(luò ),嵌入式打印終端通過(guò)無(wú)線(xiàn)網(wǎng)卡連接上網(wǎng),那么它發(fā)揮作用的空間也就更大。
服務(wù)器網(wǎng)絡(luò )通信的實(shí)現
服務(wù)器網(wǎng)絡(luò )通信主要是實(shí)現對打印終端發(fā)出的信號進(jìn)行偵聽(tīng),如果打印終端有連接信號發(fā)出,則與之連接,然后按照終端的要求實(shí)現數據接收、查詢(xún)以及發(fā)送,具體步驟如下。
(1)建立socket。分三步進(jìn)行:首先,要定義服務(wù)器的端口和最大連接數;其次,填充服務(wù)器的IP地址和端口號;最后,建立一個(gè)TCPsocket,如下所示:
server=socket(AF_INET,SOCK_
STREAM,0);//定義為局域網(wǎng),
套接字為流格式
if(server==INVALID_SOCKET)
//需要錯誤檢查
{
printf(create server error!n’);
exit(1);
}
(2)綁定IP,即綁定服務(wù)器的IP地址和端口號,以便接收打印終端的連接要求。
(3)監聽(tīng)打印終端的請求。如果打印終端無(wú)連接,則進(jìn)入等待狀態(tài),即無(wú)限循環(huán)狀態(tài),如果有連接,則建立連接并執行accept。
linux操作系統文章專(zhuān)題:linux操作系統詳解(linux不再難懂)
linux操作系統文章專(zhuān)題:linux操作系統詳解(linux不再難懂)linux相關(guān)文章:linux教程
電能表相關(guān)文章:電能表原理 調光開(kāi)關(guān)相關(guān)文章:調光開(kāi)關(guān)原理 三維掃描儀相關(guān)文章:三維掃描儀原理
評論