[原创]基于Zybo SDIO WiFi模块调试

采用的是RTL8189 SDIO 模块,介绍如下

The Realtek RTL8189ES-VB-CG is a highly integrated single-chip 802.11n Wireless LAN (WLAN) network SDIO interface (SDIO 1.1/ 2.0/ 3.0 compliant) controller. It is a WLAN MAC, a 1T1R capable WLAN baseband, and WLAN RF in a single chip. The RTL8189ES-VB provides a complete solution for a high-throughput performance integrated wireless LAN device.
The RTL8189ES-VB WLAN baseband implements Orthogonal Frequency Division Multiplexing (OFDM) with 1 transmit and 1 receive path and is compatible with the IEEE 802.11n specification. Features include one spatial stream transmission, short guard interval (GI) of 400ns, spatial spreading, and transmission over 20MHz and 40MHz bandwidth.
For legacy compatibility, Direct Sequence Spread Spectrum (DSSS), Complementary Code Keying (CCK) and OFDM baseband processing are included to support all IEEE 802.11b and 802.11g data rates. Differential phase shift keying modulation schemes, DBPSK and DQPSK with data scrambling capability, are available, and CCK provides support for legacy data rates, with long or short preamble. The high-speed FFT/IFFT paths, combined with BPSK, QPSK, 16QAM, and 64QAM modulation of the individual subcarriers and rate compatible punctured convolutional coding with coding rate of 1/2, 2/3, 3/4, and 5/6, provide higher data rates of 54Mbps and 150Mbps for IEEE 802.11g and 802.11n OFDM respectively.
The RTL8189ES-VB WLAN Controller builds in an enhanced signal detector, an adaptive frequency domain equalizer, and a soft-decision Viterbi decoder to alleviate severe multi-path effects and mutual interference in the reception of multiple streams. Robust interference detection and suppression are provided to protect against Bluetooth, cordless phone, and microwave oven interference.
Efficient IQ-imbalance, DC offset, phase noise, frequency offset, and timing offset compensations are provided for the radio frequency front-end. Selectable digital transmit and receive FIR filters are provided to meet transmit spectrum mask requirements and to reject adjacent channel interference, respectively.
The RTL8189ES-VB WLAN Controller supports fast receiver Automatic Gain Control (AGC) with synchronous and asynchronous control loops among antennas, antenna diversity functions, and adaptive transmit power control function to obtain the better performance in the analog portions of the transceiver.
The RTL8189ES-VB WLAN MAC supports 802.11e for multimedia applications, 802.11i for security, and 802.11n for enhanced MAC protocol efficiency. Using packet aggregation techniques such as A-MPDU with BA and A-MSDU, protocol efficiency is significantly improved. Power saving mechanisms such as Legacy Power Save, and U-APSD, reduce the power wasted during idle time, and compensates for the extra power required to transmit OFDM. The RTL8189ES-VB provides simple legacy and 20MHz/40MHz co-existence mechanisms to ensure backward and network compatibility.

wpa & hostapd工具,解压驱动wpa工具

[#127#16:44:45 FPGADeveloper@ubuntu ~/Public_Tools]$tar zxvf *.tar.gz
wpa_supplicant_hostapd-0.8_rtw_r7475.20130812/
wpa_supplicant_hostapd-0.8_rtw_r7475.20130812/wpa_supplicant/
wpa_supplicant_hostapd-0.8_rtw_r7475.20130812/wpa_supplicant/ChangeLog
wpa_supplicant_hostapd-0.8_rtw_r7475.20130812/wpa_supplicant/defconfig
wpa_supplicant_hostapd-0.8_rtw_r7475.20130812/wpa_supplicant/wpa_passphrase.c
wpa_supplicant_hostapd-0.8_rtw_r7475.20130812/wpa_supplicant/main_winsvc.c
wpa_supplicant_hostapd-0.8_rtw_r7475.20130812/wpa_supplicant/README-WPS
wpa_supplicant_hostapd-0.8_rtw_r7475.20130812/wpa_supplicant/main.c
wpa_supplicant_hostapd-0.8_rtw_r7475.20130812/wpa_supplicant/notify.h
wpa_supplicant_hostapd-0.8_rtw_r7475.20130812/wpa_supplicant/config_ssid.h
wpa_supplicant_hostapd-0.8_rtw_r7475.20130812/wpa_supplicant/ctrl_iface_udp.c
wpa_supplicant_hostapd-0.8_rtw_r7475.20130812/wpa_supplicant/wpa_supplicant.c
wpa_supplicant_hostapd-0.8_rtw_r7475.20130812/wpa_supplicant/config_none.c
wpa_supplicant_hostapd-0.8_rtw_r7475.20130812/wpa_supplicant/ctrl_iface_named_pipe.c
wpa_supplicant_hostapd-0.8_rtw_r7475.20130812/wpa_supplicant/win_if_list.c
wpa_supplicant_hostapd-0.8_rtw_r7475.20130812/wpa_supplicant/pf/
wpa_supplicant_hostapd-0.8_rtw_r7475.20130812/wpa_supplicant/pf/wpa_supplicant.PRI
wpa_supplicant_hostapd-0.8_rtw_r7475.20130812/wpa_supplicant/pf/wpa_supplicant.IAD
wpa_supplicant_hostapd-0.8_rtw_r7475.20130812/wpa_supplicant/pf/wpa_supplicant.IMB
wpa_supplicant_hostapd-0.8_rtw_r7475.20130812/wpa_supplicant/pf/wpa_supplicant.SearchResults
wpa_supplicant_hostapd-0.8_rtw_r7475.20130812/wpa_supplicant/pf/wpa_supplicant.IAB
wpa_supplicant_hostapd-0.8_rtw_r7475.20130812/wpa_supplicant/pf/wpa_supplicant.WK3
wpa_supplicant_hostapd-0.8_rtw_r7475.20130812/wpa_supplicant/pf/wpa_supplicant.PO
wpa_supplicant_hostapd-0.8_rtw_r7475.20130812/wpa_supplicant/pf/wpa_supplicant.PFI
wpa_supplicant_hostapd-0.8_rtw_r7475.20130812/wpa_supplicant/pf/wpa_supplicant.PS
wpa_supplicant_hostapd-0.8_rtw_r7475.20130812/wpa_supplicant/pf/wpa_supplicant.IMD
wpa_supplicant_hostapd-0.8_rtw_r7475.20130812/wpa_supplicant/pf/wpa_supplicant.PR
....
[#133#16:46:41 FPGADeveloper@ubuntu ~/Public_Tools/wpa_supplicant_hostapd-0.8_rtw_r7475.20130812]$cd wpa_supplicant/
[#135#16:46:44 FPGADeveloper@ubuntu ~/Public_Tools/wpa_supplicant_hostapd-0.8_rtw_r7475.20130812/wpa_supplicant]$make CC=arm-xilinx-linux-gnueabi-gcc
CC config.c
CC notify.c
CC bss.c
CC eap_register.c
CC ../src/utils/common.c
CC ../src/utils/wpa_debug.c
CC ../src/utils/wpabuf.c
CC ../src/utils/os_unix.c
CC ../src/utils/eloop.c
CC config_file.c
CC ../src/rsn_supp/wpa.c
CC ../src/rsn_supp/preauth.c
CC ../src/rsn_supp/pmksa_cache.c
...

  [原创]基于Zybo SDIO WiFi模块调试

编译hostapd工具,目录切换至hostapd下

[#140#16:47:33 FPGADeveloper@ubuntu ~/Public_Tools/wpa_supplicant_hostapd-0.8_rtw_r7475.20130812/hostapd]$ls
Android.mk config_file.h dump_state.c eap_testing.txt hostapd.accept hostapd.deny hostapd.vlan Makefile src
bsd_hostapd.conf ctrl_iface.c dump_state.h hlr_auc_gw.c hostapd_cli.1 hostapd.eap_user hostapd.wpa_psk nt_password_hash.c wired.conf
ChangeLog ctrl_iface.h eap_register.c hlr_auc_gw.milenage_db hostapd_cli.c hostapd.radius_clients logwatch README
config_file.c defconfig eap_register.h hostapd.8 hostapd.conf hostapd.sim_db main.c README-WPS
[#141#16:47:33 FPGADeveloper@ubuntu ~/Public_Tools/wpa_supplicant_hostapd-0.8_rtw_r7475.20130812/hostapd]$make CC=arm-xilinx-linux-gnueabi-gcc
make[1]: Entering directory `/home/hsfpga2016/Public_Tools/wpa_supplicant_hostapd-0.8_rtw_r7475.20130812/src/drivers'
rm -f *~ *.o *.d
rm -f build.wpa_supplicant build.hostapd
make[1]: Leaving directory `/home/hsfpga2016/Public_Tools/wpa_supplicant_hostapd-0.8_rtw_r7475.20130812/src/drivers'
CC main.c
CC config_file.c
CC ../src/ap/hostapd.c
../src/ap/wpa_auth_glue.c: In function 'hostapd_wpa_auth_send_ether':
../src/ap/wpa_auth_glue.c:351:6: warning: variable 'ret' set but not used [-Wunused-but-set-variable]
CC ../src/ap/wpa_auth_glue.c
CC ../src/ap/drv_callbacks.c
CC ../src/ap/ap_drv_ops.c
CC ../src/ap/utils.c
CC ../src/ap/authsrv.c
CC ../src/ap/ieee802_1x.c
CC ../src/ap/ap_config.c
CC ../src/ap/ieee802_11_auth.c
CC ../src/ap/sta_info.c
CC ../src/ap/wpa_auth.c
CC ../src/ap/tkip_countermeasures.c
CC ../src/ap/ap_mlme.c
CC ../src/ap/wpa_auth_ie.c
CC ../src/ap/preauth_auth.c
CC ../src/ap/pmksa_cache_auth.c
CC ../src/drivers/drivers.c

  [原创]基于Zybo SDIO WiFi模块调试

安装驱动

zynq> insmod wlan.ko
[ 269.010636] RTL871X: module init start
[ 269.014319] RTL871X: rtl8189es v4.3.18.2_17395.20160422
[ 269.019606] RTL871X: build time: Sep 3 2016 11:00:52
[ 269.025371] RTL871X: CHIP TYPE: RTL8188E
[ 269.029669] RTL871X: rtw_hal_config_rftype RF_Type is 3 TotalTxPath is 1
[ 269.036382] RTL871X: Chip Version Info: CHIP_8188E_Normal_Chip_TSMC_D_CUT_1T1R_RomVer(0)
[ 269.044674] RTL871X: EEPROM type is E-FUSE
[ 269.048742] RTL871X: =>_CardEnable
[ 269.058738] RTL871X: SetHwReg8188E: bMacPwrCtrlOn=1
[ 269.063536] RTL871X: <=_CardEnable
[ 269.066989] RTL871X: _ReadPROMContent: 9346CR=0x20, Boot from EFUSE, Autoload OK
[ 269.074684] RTL871X: =>_InitPowerOn_8188ES
[ 269.078743] RTL871X: =>_CardEnable
[ 269.082086] RTL871X: =>_CardEnable bMacPwrCtrlOn == _TRUE do nothing !!
[ 269.088736] RTL871X: <=_CardEnable
[ 269.092601] RTL871X: <=_InitPowerOn_8188ES
[ 269.096754] bFWReady == _FALSE call reset 8051...
[ 269.102229] RTL871X: =====> _8051Reset88E(): 8051 reset success .
[ 269.125363] RTL871X: efuse_read_phymap_from_txpktbuf bcnhead:0
[ 269.132490] RTL871X: efuse_read_phymap_from_txpktbuf len:162, lenbak:162, aaa:162, aaabak:162
[ 269.152826] RTL871X: efuse_read_phymap_from_txpktbuf read count:160
[ 269.159319] RTL871X: EEPROM ID=0x8129
[ 269.162902] RTL871X: Hal_ReadPowerSavingMode88E...bHWPwrPindetect(0)-bHWPowerdown(0) ,bSupportRemoteWakeup(0)
[ 269.172900] RTL871X: ### PS params=> power_mgnt(0),usbss_enable(0) ###
[ 269.179476] RTL871X: ======= Path 0, Channel 2 =======
...
...
[ 269.815533] RTL871X: rtw_ndev_init(wlan0) if1 mac_addr=a0:f4:59:dc:ed:ce
[ 269.862445] RTL871X: module init ret=0

  

如果在运行log中,未出现上述过程,需要检测卡槽是否松动。

将SD转接板插入SD插槽,待Kernel加载完成,系统识别到外设,并在Term中出现下述log,如下所示:

zynq> ifconfig wlan0 up
[ 1436.394536] RTL871X: +871x_drv - drv_open, bup=0
[ 1436.399204] RTL871X: +rtl8188es_hal_init
[ 1436.403113] RTL871X: FW does not exit before power on!!
[ 1436.408283] RTL871X: =>_InitPowerOn_8188ES
[ 1436.412335] RTL871X: =>_CardEnable
[ 1436.415723] RTL871X: =>_CardEnable bMacPwrCtrlOn == _TRUE do nothing !!
[ 1436.422350] RTL871X: <=_CardEnable
[ 1436.426032] RTL871X: <=_InitPowerOn_8188ES
[ 1436.430409] RTL871X: PowerOnCheck: val_mix:0x0000063f, res:0x0000063f
[ 1436.436771] RTL871X: PowerOnCheck: 0x100 the result of cmd52 and cmd53 is the same.
[ 1436.444666] RTL871X: PowerOnCheck: 0x1B8 test Pass.
[ 1436.449490] RTL871X: Power on ok!
[ 1436.453190] RTL871X: _init_available_page_threshold(): Enable Tx FIFO Page Threshold H:0x4f4f,N:0x4f4f,L:0x5454
[ 1436.463677] RTL871X: rtl8188e_FirmwareDownload fw:NIC, size: 15028
[ 1436.469801] RTL871X: rtl8188e_FirmwareDownload: fw_ver=17 fw_subver=0000 sig=0x88e1, Month=15, Date=19, Hour=94, Minute=3a
[ 1436.864571] RTL871X: polling_fwdl_chksum: Checksum report OK! (1, 0ms), REG_MCUFWDL:0x00030005
[ 1436.874118] RTL871X: =====> _8051Reset88E(): 8051 reset success .
[ 1436.880334] RTL871X: _FWFreeToGo: Polling FW ready OK! (1, 10ms), REG_MCUFWDL:0x000300c6
[ 1436.888365] RTL871X: FWDL success. write_fw:1, 410ms
[ 1437.177802] ==> rtl8188e_iol_efuse_patch
[ 1437.238397] RTL871X: HalDetectPwrDownMode(): PDN=0
[ 1437.243109] RTL871X: Set RF Chip ID to RF_6052 and RF type to 3.
[ 1437.305829] RTL871X: pDM_Odm TxPowerTrackControl = 1
[ 1437.504182] RTL871X: DISABLE_BB_RF=0
[ 1437.507714] RTL871X: IS_HARDWARE_TYPE_8188ES=1
[ 1437.512321] RTL871X: -rtl8188es_hal_init
[ 1437.516165] RTL871X: rtl8188es_hal_init in 1110ms
[ 1437.526000] RTL871X: wlan0Port-0 set opmode = 2
[ 1437.531190] RTL871X: Using the default RF gain.
[ 1437.535645] RTL871X: MAC Address = a0:f4:59:dc:ed:ce
[ 1437.541007] RTL871X: start rtl8188es_xmit_thread
[ 1437.545645] RTL871X: -871x_drv - drv_open, bup=1

  

SD相关驱动后续将加载驱动,运行相关命令,将模块配置成STA模式。

zynq> iwlist wlan0 channel
wlan0 13 channels in total; available frequencies :
Channel 01 : 2.412 GHz
Channel 02 : 2.417 GHz
Channel 03 : 2.422 GHz
Channel 04 : 2.427 GHz
Channel 05 : 2.432 GHz
Channel 06 : 2.437 GHz
Channel 07 : 2.442 GHz
Channel 08 : 2.447 GHz
Channel 09 : 2.452 GHz
Channel 10 : 2.457 GHz
Channel 11 : 2.462 GHz
Channel 12 : 2.467 GHz
Channel 13 : 2.472 GHz
Current Frequency:2.412 GHz (Channel 1)
zynq> iwlist wlan0 rate
wlan0 4 available bit-rates :
1 Mb/s
2 Mb/s
5.5 Mb/s
11 Mb/s

  

zynq> iwconfig wlan0 mode Managed
[ 3142.219190] RTL871X: set_mode = IW_MODE_INFRA
[ 3142.223694] RTL871X: wlan0Port-0 set opmode = 2

  

由于此网络没有加密,可以采用iwconfig进行通讯

zynq> iwlist wlan0 scan
[ 2987.294841] RTL871X: SetHwReg8188E:(HW_VAR_CHECK_TXBUF)TXBUF Empty(1) in 0 ms
[ 2988.612835] RTL871X: survey done event(2e) band:0 for wlan0
[ 2988.618369] RTL871X: rtw_indicate_scan_done(wlan0)
wlan0 Scan completed :
Cell 01 - Address: 0C:**:68:3D:5E:2D
ESSID:"Zynq_WiFi"
Protocol:IEEE 802.11bgn
Mode:Master
Frequency:2.412 GHz (Channel 1)
Encryption key:on
Bit Rates:150 Mb/s
Extra:rsn_ie=30140100000fac040100000fac040100000fac020000
IE: IEEE 802.11i/WPA2 Version 1
Group Cipher : CCMP
Pairwise Ciphers (1) : CCMP
Authentication Suites (1) : PSK
Quality=100/100 Signal level=100/100
Extra:fm=0003

  

zynq> iwconfig wlan0 essid "zynqWiFi"
[ 3375.114669] RTL871X: =>rtw_wx_set_essid
[ 3375.118625] RTL871X: ssid=zynqWiFi, len=8
[ 3375.122581] RTL871X: set ssid [zynqWiFi] fw_state=0x00000008
[ 3375.128229] RTL871X: Set SSID under fw_state=0x00000008
[ 3375.133420] RTL871X: [by_bssid:0][assoc_ssid:zynqWiFi][to_roam:0] new candidate: zynqWiFi(98:fa:e3:fe:5d:38, ch6) rssi:-46
[ 3375.144455] RTL871X: rtw_select_and_join_from_scanned_queue: candidate: zynqWiFi(98:fa:e3:fe:5d:38, ch:6)
[ 3375.153996] RTL871X: link to new AP
[ 3375.157476] RTL871X: [HT] HAL Support STBC = 0x01
[ 3375.162140] RTL871X: [HT] Declare supporting RX STBC_1R
[ 3375.167398] RTL871X: rtw_chk_start_clnt_join(wlan0) req: 6,0,0
[ 3375.167404] RTL871X: <=rtw_wx_set_essid, ret 0
[ 3375.179041] RTL871X: rtw_chk_start_clnt_join(wlan0) union: 6,0,0
[ 3375.234515] RTL871X: OnBeacon: beacon keys ready
[ 3375.239071] RTL871X: link to new AP
[ 3375.242525] RTL871X: start auth
[ 3375.245654] RTL871X: issue_auth
[ 3375.253414] RTL871X: OnAuthClient
[ 3375.256644] RTL871X: auth success, start assoc
[ 3375.261105] RTL871X: network.SupportedRates[0]=82
...
[ 3375.312718] RTL871X: network.SupportedRates[11]=6C
[ 3375.317508] RTL871X: bssrate_len = 12
[ 3375.338755] RTL871X: OnAssocRsp
[ 3375.341825] RTL871X: report_join_res(1)
[ 3375.345636] RTL871X: rtw_joinbss_update_network
[ 3375.350173] RTL871X: +rtw_update_ht_cap()
[ 3375.354173] RTL871X: rtw_alloc_macid(wlan0) if1, hwaddr:98:fa:e3:fe:5d:38 macid:0
[ 3375.361623] RTL871X: rtw_joinbss_update_stainfo
[ 3375.366128] RTL871X: supp_mcs_set = ff, 00, 00, rf_type=3, tx_ra_bitmap=00000000000fffff
[ 3375.374208] RTL871X: ### Set STA_(0) info ###
[ 3375.378548] RTL871X: assoc success
[ 3375.381991] RTL871X: HW_VAR_BASIC_RATE: 0x15f -> 0x15f -> 0x15f
[ 3375.388334] RTL871X: WMM(0): 0, a42b
[ 3375.391935] RTL871X: WMM(1): 0, a44f
[ 3375.395538] RTL871X: WMM(2): 0, 5e4322
[ 3375.399338] RTL871X: WMM(3): 0, 2f3222
[ 3375.403008] RTL871X: wmm_para_seq(0): 0
...
[ 3375.414464] RTL871X: wmm_para_seq(3): 3
[ 3375.418305] RTL871X: HTOnAssocRsp
[ 3375.421902] RTL871X: ODM_Get_Rate_Bitmap ==> rssi_level:0x00, WirelessMode:0x0b, rate_bitmap:0x000ff005
[ 3375.431237] RTL871X: UpdateHalRAMask8188E => mac_id:0, rate_id:0, networkType:0x0b, mask:0x000fffff
[ 3375.431237] ==> rssi_level:0, rate_bitmap:0x000ff005
[ 3375.445391] RTL871X: ### MacID(31),Set Max Tx RPT MID(32)
[ 3375.450815] RTL871X: ### rtl8188e_set_FwMediaStatus_cmd: MStatus=1 MACID=0
[ 3375.458304] RTL871X: SetHwReg8188E(wlan0): [HW_VAR_MACID_WAKEUP] macid=0, org reg_0x48c=0x00000000
[ 3375.467788] RTL871X: rtl8188e_set_FwJoinBssReport_cmd mstatus(1)
[ 3375.474167] RTL871X: rtw_hal_set_fw_rsvd_page wowlan_in_resume: 0
[ 3375.480215] RTL871X: rtw_hal_set_fw_rsvd_page PageSize: 128, RsvdPageNUm: 8
[ 3375.487148] RTL871X: LocPsPoll: 2
[ 3375.490424] RTL871X: LocNullData: 3
[ 3375.493896] RTL871X: LocQosNull: 4
[ 3375.497522] RTL871X: rtw_hal_set_fw_rsvd_page: Set RSVD page location to Fw ,TotalPacketLen(570), TotalPageNum(5)
[ 3375.507722] RTL871X: RsvdPageLoc: ProbeRsp=0 PsPoll=2 Null=3 QoSNull=4 BTNull=0
[ 3375.515371] RTL871X: wlan0: 1 DL RSVD page success! DLBcnCount:1, poll:1
[ 3375.522298] RTL871X: Set RSVD page location to Fw.
[ 3375.532040] RTL871X: =>mlmeext_joinbss_event_callback - End to Connection without 4-way
[ 3375.546082] RTL871X: ODM_Get_Rate_Bitmap ==> rssi_level:0x01, WirelessMode:0x0b, rate_bitmap:0x000f0000
[ 3375.555436] RTL871X: UpdateHalRAMask8188E => mac_id:0, rate_id:0, networkType:0x0b, mask:0x000fffff
[ 3375.555436] ==> rssi_level:1, rate_bitmap:0x000f0000
[ 3389.537443] RTL871X: SetHwReg8188E(wlan0): [HW_VAR_MACID_WAKEUP] macid=0, org reg_0x48c=0x00000000

  

  

zynq> udhcpc -i wlan0
udhcpc (v1.20.1) started
Sending discover...
Sending select for 192.168.43.103...
Lease of 192.168.43.103 obtained, lease time 3600
deleting routers
route: SIOCDELRT: No such process
adding dns 192.168.43.1

  

zynq> iwconfig
[ 3423.674137] RTL871X: rtw_wx_get_rts, rts_thresh=2347
[ 3423.679071] RTL871X: rtw_wx_get_frag, frag_len=2346
wlan0 IEEE 802.11bgn ESSID:"zynqWiFi" Nickname:"<WIFI@REALTEK>"
Mode:Managed Frequency:2.437 GHz Access Point: 98:FA:E3:FE:5D:38
Bit Rate:72.2 Mb/s Sensitivity:0/0
Retry:off RTS thr:off Fragment thr:off
Encryption key:off
Power Management:off
Link Quality=100/100 Signal level=100/100 Noise level=0/100
Rx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0
Tx excessive retries:0 Invalid misc:0 Missed beacon:0 lo no wireless extensions. eth0 no wireless extensions.

  

至此可以访问外网

zynq> ping baidu.com
PING baidu.com (220.181.57.217): 56 data bytes
64 bytes from 220.181.57.217: seq=0 ttl=52 time=232.920 ms
64 bytes from 220.181.57.217: seq=1 ttl=52 time=168.322 ms
64 bytes from 220.181.57.217: seq=2 ttl=52 time=114.563 ms
64 bytes from 220.181.57.217: seq=3 ttl=52 time=140.901 ms
...
64 bytes from 220.181.57.217: seq=221 ttl=52 time=97.628 ms
64 bytes from 220.181.57.217: seq=222 ttl=52 time=95.745 ms
^C
--- baidu.com ping statistics ---
223 packets transmitted, 223 packets received, 0% packet loss
round-trip min/avg/max = 89.159/144.236/474.732 ms
zynq> ifconfig
wlan0 Link encap:Ethernet HWaddr A0:F4:59:DC:ED:CE
inet addr:192.168.43.103 Bcast:192.168.43.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:258 errors:0 dropped:4 overruns:0 frame:0
TX packets:245 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:29216 (28.5 KiB) TX bytes:28404 (27.7 KiB)

  

上一篇:zoj1610(线段树)


下一篇:js .map方法