本教程基于 ALINX 開發(fā)板 Z19-P , 實現(xiàn) WIFI 無線通信的功能,WIFI 模塊使用 USB WIFIrtl8188cu。
特別提醒,本教程 Z19-P 所使用的 Linux環(huán)境是按照教程“ Xilinx 開發(fā)環(huán)境安裝教程”搭建的,請先按該教程搭建開發(fā)板的 Linux 開發(fā)環(huán)境。
1、創(chuàng)建工程
創(chuàng)建工程可以參考教程“ zynqMPSOC Linux 開發(fā)教程基礎(chǔ)篇”的第一章,創(chuàng)建一個基礎(chǔ)的 petalinux 工程,并完成設(shè)備樹修改,離線編譯配置。(如果不需要改動內(nèi)核,離線內(nèi)核源碼和 uboot 源碼可以不用配置)
2、配置工程
配置 sd 卡根文件系統(tǒng)
進入 config 配置界面,命令:petalinux-config
在 Image Packaging Configuration 下修改根文件系統(tǒng)類型為 EXT4 類型,設(shè)備節(jié)點為/dev/mmcblk1p2
配置內(nèi)核
進入內(nèi)核配置界面,命令:petalinux-config -c kernel
在 Device Drivers -> Network device support -> Wireless LAN -> Realtek rtlwifi family of devices 路徑下配置 rtl8188cu 驅(qū)動:Realtek RTL8192CU/RTL8188CU USB Wireless Network Adapter
保存配置,退出
配置文件系統(tǒng)
進入文件系統(tǒng)配置界面,命令:petalinux-config -c rootfs
在 Filesystem Packages -> network -> wpa-supplicant 路徑下配置 wpa-supplicant 和 wpa-supplicant-cli 工具,該工具用于配置 wifi
在 Petalinux Package Groups -> packagegroup-petalinux-benchmarks 路徑下配置 packagegroup-petalinux-benchmarks ,這是一個工具包,里面包含了 iperf3 工具
保存配置,退出
3、制作啟動鏡像
編譯工程,生成啟動鏡像
編譯工程,命令:petalinux-build
生成 BOOT.BIN ,命令:petalinux-package --boot --u-boot --fsbl --force
將 petalinux 工程中的 boot.scr BOOT.BIN image.ub 拷貝到 sd 卡 BOOT 分區(qū)(FAT32),將 rootfs.tar.gz 解壓到 sd 卡 ROOTFS 分區(qū)( EXT4 )
將 sd 卡插入開發(fā)板,usbwifi 接到 usb 接口,撥碼為 sd 模式,上電啟動
4、配置 wifi
系統(tǒng)啟動后在串口終端登錄賬戶(默認用戶名和密碼都為 root )
修改 wpa 網(wǎng)絡(luò)配置文件 wpa_supplicant.conf ,命令:vi /etc/wpa_supplicant.conf
在 network 里添加 wifi 名稱和密碼,ssid 設(shè)置 wifi 名稱,psk 設(shè)置 wifi 的登陸密碼(注意,等號兩端不能有空格),注意,本款 usbwifi 支持的頻率為 2.4GHz ,5G 網(wǎng)點是無法連接的
使用 wpa_supplicant 工具連接 wifi,命令:wpa_supplicant -i wlan0 -c /etc/wpa_supplicant.conf &
使用 dhcp 服務(wù)分配 ip 地址,命令: udhcpc -i wlan0
5、測速
iperf3 測試,windows 中打開命令行窗口,切換到 iperf3.exe 所在目錄,運行 iperf3 服務(wù)端,命令:
iperf3.exe -s
在開發(fā)板串口終端運行 iperf3 客戶端,命令:iperf3 -c 主機ip地址
6、tcp 通信收發(fā)測試
在主機上運行 socket 通信程序的服務(wù)端: ./tcp_serv 9190 (端口號自定,非 0~1023 即可)
在開發(fā)板上配置好 usbwifi 后,運行 socket 通信程序的客戶端:./tclnt 192.168.8.114 9190 ( ip 地址為服務(wù)端主機 ip 地址,端口號為服務(wù)端指定的端口號)
此時可以輸入想要發(fā)送的信息,服務(wù)端會在收到信息后顯示并返回給客戶端
開發(fā)板(客戶端):
主機端(服務(wù)端):
注意:
在完成傳輸測試后,需要在客戶端輸入 q 結(jié)束傳輸連接(如果直接取消客戶端程序,會導(dǎo)致服務(wù)端的對應(yīng)端口被占用)
服務(wù)端在接收 5 次客戶端的連接請求后會自動關(guān)閉(即客戶端程序運行 5 次,一次連接可以發(fā)送的信息次數(shù)不限,一次發(fā)送不超過 1k 字節(jié))
-
Linux
+關(guān)注
關(guān)注
87文章
11304瀏覽量
209497 -
無線通信
+關(guān)注
關(guān)注
58文章
4570瀏覽量
143538 -
WIFI
+關(guān)注
關(guān)注
81文章
5297瀏覽量
203716 -
開發(fā)板
+關(guān)注
關(guān)注
25文章
5050瀏覽量
97471 -
開發(fā)環(huán)境
+關(guān)注
關(guān)注
1文章
225瀏覽量
16617
原文標(biāo)題:【ALINX 教程分享】基于 Z19-P 開發(fā)板實現(xiàn) WIFI 無線通信的功能
文章出處:【微信號:ALINX,微信公眾號:ALINX】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論