zoukankan      html  css  js  c++  java
  • 6.4客流量统计

    本设计利用w800设计出一款可以实时监控公共场所的人流量系统.其中w800提供混杂接收模式接收数据包,并对其解析,筛选得到周围打开Wi-Fi功能设备发送的Probe Request帧,通过对接收到的Probe Request帧分析和汇总,得到周围区域内的设备使用量(人流量)。
    w800可进入该sniffer模式,接收空中的 IEEE802.11包,获取周围设备MAC信息,从而估算客流量。

    static void sniffer_callback(struct ieee80211_hdr *hdr, u32 data_len,struct tls_wifi_ext_t *ext)
    {
    if((ieee80211_is_mgmt(hdr->frame_control) != 0))
    {
    static u8 last_sa_addr_data[6] = {0};
    static u8 last_da_addr_data[6] = {0};
    u8 *curr_sa_addr_data = NULL;
    u8 *curr_da_addr_data = NULL;

        u8 data_diff = FALSE;
    
    
        char addr[] = "00:00:00:00:00:00";
        curr_sa_addr_data = ieee80211_get_SA(hdr);
        curr_da_addr_data = ieee80211_get_DA(hdr);
    
        for(int i=0; i< 6; i++)
        {
            if(*(curr_sa_addr_data + i) != *(last_sa_addr_data +i))
            {
                data_diff = TRUE;
                if(data_diff ==TRUE)
                {
                	count++;
                	 tls_os_time_delay(8000);
                	data_diff = FALSE;
    
                }
    
    
                break;
            }
    
            if(*(curr_da_addr_data + i) != *(last_da_addr_data +i))
            {
            	data_diff = TRUE;
    
                break;
            }
        }
    
        if((data_diff) && ((hdr->frame_control & IEEE80211_FCTL_RETRY) == 0))
        {
    
            memcpy((u8 *)last_sa_addr_data, curr_sa_addr_data, 6);
            memcpy((u8 *)last_da_addr_data, curr_da_addr_data, 6);
    
            sprintf(addr, "%02X:%02X:%02X:%02X:%02X:%02X", *curr_sa_addr_data, *(curr_sa_addr_data+1), *(curr_sa_addr_data+2), *(curr_sa_addr_data+3), *(curr_sa_addr_data+4), *(curr_sa_addr_data+5));
            printf("%s|", addr);
            printf("count:
    %d
    ", count);
    
        }
    }
    

    }
    编译程序,下载到开发板,客流统计信息将显示到显示屏

  • 相关阅读:
    java保留字
    12个不可不知的Sublime Text应用技巧和诀窍
    人生准则
    基于Android 的蓝牙A2DP 功能的实现
    蓝牙协议栈详解
    我的2015计划
    今日学习
    滤波器介绍
    STLINK V2安装使用详解
    javascript闭包
  • 原文地址:https://www.cnblogs.com/doiting/p/14109300.html
Copyright © 2011-2022 走看看