WiFi方案可以用市面上已經非常成熟的RTL8192EU方案,一個USB WiFi模塊,幾十塊錢就能買到,網上也可以下載各種Linux內核版本適配的源碼。
下載RTL8192EU源碼,打開Makefile文件:
修改I386_PC選項的架構和內核源碼位置:
ifeq ($(CONFIG_PLATFORM_I386_PC), y)
EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
EXTRA_CFLAGS += -DCONFIG_IOCTL_CFG80211 - DRTW_USE_CFG80211_STA_EVENT
SUBARCH := $(shell uname -m | sed -e s/i.86/i386/)
ARCH ?=ARM64
KVER:= $(shell uname -r)
KSRC := /home/OK8MP-linux-kernel/
MODDESTDIR := /home/OK8MP-linux- kernel/drivers/net/wireless/
INSTALL_PREFIX :=
STAGINGMODDIR := /home/OK8MP-linux- kernel/drivers/staging
endif
編譯生成8192eu.ko文件,直接insmod即可。但是只有這個ko文件是不夠的,因為這個ko驅動還會調用/lib/firmware/rtlwifi下的固件文件,名為rtl8192eu_nic.bin,必須要有這個文件,不然的話驅動是無法正常加載的:
加載成功之后,使用ifconfig命令可以查看正確加載的網卡設備:
然后使用networkmanager軟件可以管理連接WiFi熱點:
nmcli dev wifi connect "xxx" password "xxx"
在xxx處填入熱點名稱和密碼即可。然后是開機自啟動加載WiFi驅動,這個也很簡單,在/etc/下新建一個名為autorun.sh的shell腳本:
#!/bin/sh
insmod /home/rtl8192eu-linux-driver-realtek-4.4.x/8192eu.ko
然后在/usr/lib/systemd/system/目錄下新建autorun.service文件:
[Unit]
Description=autorun
After=basic.service X.service thermal-zone-init.service
[Service]
ExecStart=/etc/autorun.sh
[Install]
WantedBy=multi-user.target
輸入命令:
systemctl -f enable /lib/systemd/system/autorun.service
chmod 777 /etc/autorun.sh
這樣就能在開機的時候自動運行insmod命令。
審核編輯:符乾江
-
單片機
+關注
關注
6043文章
44622瀏覽量
638518 -
嵌入式
+關注
關注
5092文章
19177瀏覽量
307647 -
編程
+關注
關注
88文章
3637瀏覽量
93980
發布評論請先 登錄
相關推薦
評論