搜档网
当前位置:搜档网 › LINUX下安装无线网卡驱动程序

LINUX下安装无线网卡驱动程序

LINUX下安装无线网卡驱动程序
LINUX下安装无线网卡驱动程序

1.1下载驱动程序

一、首先弄清楚当前使用的是什么版本的Linux,如:Redhat9.0、Freda core5等。Linux用的是什么版本的内核,可以用uname –a得知内核版本号。

二、使用的是什么接口类型的无线网卡,常见的接口类型有PCI (台式机)、Cardbus/PCMCIA(笔记本)、USB(台式机、笔

记本)等。

三、无线网卡使用的是哪一种类型的芯片,判断方法如下,到相

关网站下载与其相对应的驱动程序。常用的无线网卡驱动及其支

持的芯片类型和接口类型如下表1所示。

PCMCIA卡:将无线网卡插入笔记本电脑中,用命令lspci可以看到芯片类型,如:

Realtek Semiconductor Co.. Ltd, RTL8180L802.11b MAC (rev 20)

其中RTL8180L即为网卡芯片类型,用参数v可以看到更详细的信

息。

USB卡:用命令lsusb可以看到芯片类型(fc5没有此命令)。通过其它方法查找。

驱动程序芯片类型接口类型官方网站下载页

Linux-wlan-ng Prism2/2.5/3 Cardbus/PCI/USB https://www.sodocs.net/doc/4b18142795.html,/download.shtml Madwifi Atheros系列Cardbus/PCI https://www.sodocs.net/doc/4b18142795.html,/

islsm ISL38XX USB/PCI http://jbnote.free.fr/prism54usb/index.html

表1:网卡驱动程序有关信息

1.2驱动程序的安装

每款驱动的安装方法各不相同,阅读INSTALL文档,获得驱动程

序的具体安装方法及系统内核要求。阅读驱动程序附带的

README文档,获得有关此驱动的详细信息,如驱动所支持的网

络模式、接口类型、所包含的模块的功能及无线网卡的配置等。

下面是安装网卡驱动程序的一般步骤:

编译网卡驱动程序

#make

安装驱动程序模块

#make install

加载模块

#modprobe 主模块名

安装好驱动后插入无线

网卡,命令iwconfig可以查看驱动是否加载成功,如果出现新的设备名,则说明驱动已经装上并且能够识别出无线网卡。

#iwconfig

1.3无线网卡的配置

可以分别通过‘网络配置’界面和命令对无线网卡进行配置,

如IP地址、网络模式、ESSID和速率等。

可视化配置无线网卡,方法如下所示:

首先用编辑工具编辑文件/etc/modprobe.conf,添加下面行以实现

界面配置。

alias 设备名驱动模块名(加到/etc/modprobe.conf)

重起笔记本电脑后加载驱动模块,打开桌面﹥管理﹥网络,在

“网络配置”界面中,如果在设备栏里没有类型为

“Wireless”的设备,新建一个。点击“新建”,创建一个设

备类型为‘无线连接’的设备,选择刚装好的无线网卡,最后对

该无线网卡进行初始化配置,其所对应的脚本文件为

/etc/sysconfig/network-script/ifcfg-设备名

也可以使用命令进行配置,命令有ifconfig、iwconfig、iwlist等,具

体用法参见第4节或使用命令man查看详细信息。

2内核编译与安装

如果驱动程序要求的内核选项没有打开,则需要进行内核的配

置。使用命令进入内核源代码目录, 命令make mrproper确保源代

码目录下没有不正确的.o文件以及文件的互相依赖。

接下来的内核配置过程比较烦琐,但是配置的适当与否与日后Linux的运行直接相关,有必要了解一下一些主要的且经常用到的选项的设置。

配置内核可以根据需要与爱好使用下面命令中的一个:

#make config (基于文本的最为传统的配置界面)

#make menuconfig (基于文本选单的配置界面)

#make xconfig (基于图形窗口模式的配置界面)

#make oldconfig (如果只想在原来内核配置的基础上修改一些小地方,会省去不少麻烦)

进行配置时,大部分选项可以使用其缺省值,只有小部分需要根据驱动程序的需要进行选择。

选择相应的配置时,有三种选择,它们分别代表的含义如下:

“Y”-将该功能编译进内核

“N”-不将该功能编译进内核

“M”-将该功能编译成可以在需要时动态插入到内核中的模块。

将与核心其它部分关系较远且不经常使用的部分功能代码编译成为可加载模块,有利于减小内核的长度,减小内核消耗的内存。

2.1 2.6系列内核源代码安装及编译步骤

对于Fedora Core 系列来说,内核源码是放在/usr/src/redhat/BUILD/ 目录中,如果系统中该目录没有内容,则说明没有安装内核的源码包,可从https://www.sodocs.net/doc/4b18142795.html,下载对应的源码包。

如果下载的是rpm包,可通过以下命令来安装:

#rpm -i kernel-2.6.16-1.2096_FC5.src.rpm

#cd /usr/src/redhat/SPECS

#rpmbuild -bp --target i686 kernel-2.6.spec

#cd ../BUILD

#cd kernel*/linux*

现在就是内核的代码所在的目录(linux-2.6.16.i686)。

如果下的是.tar.bz2或.tar.gz,只要把下载下来的文件移到/usr/src 目录中解压,然后进入解压的目录根据需要进行配置。

2.6系列内核编译安装十分简单,只需以下3个命令即可,并自动完成对启动引导装载器GRUB的配置,非常方便。

# make 编译内核

#make modules_install 安装模块

#make install 安装内核、修改GRUB配置文件

重启计算机后选Fedora Core (2.6.16-prep)以新编译的内核进入Linux操作系统。

2.2 2.4系列内核源代码安装及编译步骤

如果驱动要求的内核版本较高,需要升级,可从https://www.sodocs.net/doc/4b18142795.html,上下载相应的内核版本进行编译安装。2.4 系列内核编译所使用的命令较多,最后还需要手动修改启动引导装载器GRUB的配置文件,添加新编译的内核映像文件作为新的启动选项。

将源代码包移动到/usr/src中解压:

# tar vxfj linux-2.4.26.tar.bz2

# ln –s linux2.4.26 linux

# cd /usr/src/linux

配置和编译内核:

# cp /boot/config-2.4.20-8 .config

# make menuconfig

# make dep

# make clean

# make bzImage

安装模块:

# make modules

# make modules_install

启动新选项:

# cp arch/i386/boot/bzImage /boot/vmlinuz-2.4.26

# cp .config /boot/config-2.4.26

# cp System.map /boot/System.map-2.4.26

# mkinitrd /boot/initrd-2.4.26.img 2.4.26

# cd /boot

# rm -f System.map vmlinuz

# ln -s System.map-2.4.26 System.map

# ln -s vmlinuz-2.4.26 vmlinuz

# cd grub

# vi grub.conf

# reboot

选择相对快速并且具有权威性的站点下载最新的内核源代码包,例如条件允许的话可以到下面的站点下载:

ftp://https://www.sodocs.net/doc/4b18142795.html,/pub/linux/kernel

国内Linux用户可以到下面的站点下载:

https://www.sodocs.net/doc/4b18142795.html,

https://www.sodocs.net/doc/4b18142795.html,

Linux系统的核心代码存放于目录/usr/src/linux,实际上,该目录是一个链接,指向当前所用的核心版本的目录,例如如果当前使用的版本是x.y.z,则该核心的实际目录应该是:/usr/src/linux-x.y.z。而新下载的内核中的目录是linux,这样,直接在/usr/src下解包会导致原来的内核目录被覆盖。所以稳妥的做法是,首先删除链接linux,然后解包、更名、重新链接。

在解包前要确认在/usr/src目录下没有叫linux的目录,或者不再想保留该目录。

3三款无线网卡驱动的安装与配置过程

3.1TL-WN510G无线网卡、SMC EZ Connect? 802.11g Wireless Cardbus

Adapter无线网卡

这两款无线网卡使用的芯片类型相同(AR5212),以TL-WN510G介绍Cardbus 接口无线网卡驱动程序安装的步骤。

下载驱动程序

插上网卡后,通过下面的命令来查看无线的主芯片信息。

#lspci –v

运行此命令后,显示如下信息:

07:00.0 Ethernet controller: Atheros Communications, Inc. AR5212 Multiprotocol

MAC/baseband processor(rev 01)

Subsystem: Atheros Communications, Inc. Unknown device 1052

Flags: medium devsel, IRQ 11

Memory at 38000000 (32-bit, non-prefetchable)[disable][size=64K]

Capabilities: [44] Power Management version 2

可以看出,网卡的芯片类型为AR5212,是Atheros系列中的一款。从表1中得知驱动程序Madwifi支持该芯片类型的网卡。到https://www.sodocs.net/doc/4b18142795.html, 下载最新的源代码,一般名称为madwifi-ng-current.tar.gz。

安装驱动程序

解压后阅读里面的READER和INSTALL文档来获取帮助信息。

从README文档中得知,该驱动程序支持PCI、miniPCI 、Cardbus的设备类型,驱动的主模块为ath_pci,各种型号所支持的协议以及无线网卡的详细配置。

从INSTALL文档中得知,该驱动的系统要求为要有内核源代码,内核配置选项CONFIG_SYSCTL、CONFIG_CRYPTO要打开(可通过查看文件

/boot/config-2.6.15-1.2054_FC5来查找选项是否打开),要使用相同版本的编译器编译内核和驱动程序等。

在Feroda core下没有找到内核源码,到网上下载相应的内核源码。采用前面所述方法对内核源码进行配置,打开所需的选项,然后编译、安装内核模块。

配置好内核后,依据INSTALL里的流程安装驱动程序:

运行下面的命令来编译和安装驱动,选项KERNELPATH为内核源码的路径#make KERNELPATH=/usr/src/*

#make install

编译成功后可运行下面的命令来加载网卡设备

#modprobe ath_pci

没有错误提示,表明已经成功安装并加载上了驱动程序。

插入无线网卡后运行命令

#iwconfig

出现新的设备名ath0,即驱动识别出了网卡设备,驱动程序安装成功。

配置无线网卡

1.命令行配置

使用下面的命令激活无线网卡和配置其IP地址

#ifconfig ath0 up

激活网卡后,可通过命令ifconfig配置网卡的IP地址

#ifconfig ath0 192.168.0.11 netmask 255.255.255.0

通过命令iwconfig配置无线网卡,其它参数用默认即可,或用man iwconfig 查看详细配置信息。

#iwconfig ath0 essid mywlan

#iwconfig ath0 mode Master

#iwconfig ath0 rate 11M

其它的命令还有iwlist可查看无线网卡的状态信息(命令iwlist查看更多选项)。

#iwlist ath0 mode

#iwlist ath0 channel

2.可视化配置

用“网络配置”界面配置网卡,首先在/etc/modprobe.conf文件中添加以下命令行,这样便可在系统启动时自动创建模式为station的设备ath0。

alias ath0 ath_pci

options ath_pci autocreate=sta

如果要以ap作为默认模式启动,把sta改为Master。

重起系统后在设备栏中新建设备名为ath0的设备并按照以上参数进行初始化设置,以后就可以在“网络配置”里激活网卡设备和编辑该无线网卡设备。

3.2SMC EZ Connect? 802.11g Wireless USB 2.0

Adapter

下载驱动程序

从网卡背面铭牌上知道这款USB无线网卡的型号为:SMC2862W-G,通过上网查资料得知此网卡所对应的驱动程序为ISL38XX,到以下网址下载最新的源码包:http://jbnote.free.fr/prism54usb/index.html。此驱动包括两部分:code 和firmware。其中code为驱动程序,firmware为传送到USB设备的处理有关802.11协议的固件。

编译内核,打开以下选项:CONFIG_I82365,CONFIG_NET_WIRELESS, CONFIG_FW_LOADER, CONFIG_CRC32 和CONFIG_CRC_CCITT

安装驱动程序

解压下载下来的源码包

#tar –xzvf islsm-workbench-latest.tar.tar

运行以下命令编译安装驱动程序

#make driver

#make install

装好驱动后,把下载的firmware即下载下来的后缀名为.arm的文件移动到目录/lib/firmware中,并改名为isl3887usb_bare。使用以下命令把驱动模块装进内核中

#make load

卸载驱动模块命令为

#make unload

装载驱动后插入无线网卡,运行命令

#iwconfig

出现以下信息,其中设备名为eth0的网卡设备即是驱动识别出来的无线网卡,

驱动程序安装成功。

对网卡进行配置

1.命令行配置

使用下面的命令激活无线网卡和配置其IP地址

#ifconfig eth0 up

激活网卡后,可通过命令ifconfig配置网卡的IP地址

#ifconfig eth0 192.168.0.11 netmask 255.255.255.0

通过命令iwconfig配置无线网卡,其它参数用默认即可,或用man iwconfig查看详细配置信息。

#iwconfig eth0 essid mywlan

#iwconfig eth0 mode Ad-Hoc

#iwconfig eth0 rate 11M

其它的命令还有iwlist可查看无线网卡的状态信息(命令iwlist –h查看更多选项)。#iwlist eth0 mode

#iwlist eth0 channel

2.可视化配置

首先编辑以下命令行在/etc/modprobe.conf文件中

alias eth0 islusb

重起系统后在设备栏中新建设备名为eth0的设备并安装以上参数进行初始

化设置,以后只要点击“编辑”就可以对该无线网卡设备进行修改。

在编译过程中遇到*/Islsm_usb.c 错误:初始值设定项里有未知的字段…owner?解决办法是:修改该文件所使用的头文件linux/usb.h,在结构体usb_driver 里添加字段owner,该文件放在内核源码下include/linux文件夹内。添加内容如下所示:struct module *owner

WIFI信号加强方法

WIFI无线信号不是“崂山道士”,穿墙能力差。在笔者所在的学生宿舍,随着位置的变化,甚至会频繁掉线、上网不稳定;在自己家里房间不同,信号强度也会不一样。可是有时候网络布局不是说改就改的,那么应该如何提高WIFI网络的稳定性和速度呢? 1、采用设备支持的最高速度设置 进入路由器设置界面,设置WIFI的参数。把无线网络的速度设置为网络设备支持的最高速度,也就是说如果设备支持802.11N就设置为802.11N,如果支持802.11G就设置为802.11G,尽量不设置成802.11g+a/b这种形式。 2、设置MIMO增强模式 如果无线路由器支持MIMO增强模式,也请在设置界面勾选这个选项,然后把“带宽”设置为“20/40MHZ”(选最高设置)。不过并非所有支持MIMO的路由器都有这个选项,如果看不到这个选项,就设置一下带宽就好了。 3、启用QOS控制 如果看到802.11e/***QOS这个选项,则可以考虑启用。在局域网中,如果下载的同学、使用PPS看网络电视的朋友、使用P2P程序的同学太多的话,即使信号良好,下载、上网同样会很卡,启用QOS控制会好过很多。 4、管理本本无线网卡 现在很多笔记本都是802.11N无线网卡了,配合802.11N的无线路由器理论上能达到300M 的网速,但是有时候网卡还需要进行设置。在开始菜单的“计算机”上点击右键选择“管理”。如果是XP则可以在桌面“我的电脑”上点击右键,选择“管理”。 5、检查802.11N是否启用 在管理界面找到设备管理器,并找到无线网卡。看看属性中的“高级”选项卡,检查802.11N 模式是否已经设置为“已启用”。同时,设置“吞吐量增强”为“启用”,并将信道设置为“自动”或者最高数值的设置值。 后记:需要注意的是,无线网卡要和无线路由器相匹配才能获得最好的效果,例如802.11N 的网卡需要搭配802.11N的路由器才能发挥最大效果。顺带提一下,还有一种128M的Super-G规格,在老网卡和路由器上可能会碰到,这种规格比较挑,除了路由器和网卡都支持这种规格外,还建议无线路由器和网卡都是一个品牌的产品。

关于锐捷路由器配置命令

关于锐捷路由器配置命令,这些命令可能用的都不是很多,但是对于网络安全和性能来说很重要。 1. #Exit返回上一级操作模式 2. #del flash:config.text删除配置文件(交换机及1700系列路由器) 3. #erase startup-config删除配置文件(2500系列路由器) 4. #write memory 或copy running-config startup-config 保存配置 5. #Configure terminal 进入全局配置模式 6. (config)# hostname routerA配置设备名称为routerA 7.(config)#banner motd &配置每日提示信息&为终止符 8. (config)# enable secret star或者:enable password star 9.设置路由器的特权模式密码为star;secret 指密码以非明文显示, password指密码以明文显示 10.锐捷路由器配置命令之查看信息 11. #show running-config 查看当前生效的配置信息 12. #show interface fastethernet 0/3查看F0/3端口信息 13. #show interface serial 1/2 查看S1/2端口信息 14. #show ip interface brief 查看端口信息 15. #show version查看版本信息 16.#show running-config 查看当前生效的配置信息 17. #show controllers serial 1/2 查看该端口信息 , 用于R2501 18. #show ip route 查看路由表信息 19. #show access-lists 1查看标准访问控制列表1的配置信息 20.锐捷路由器配置命令之远程登陆(telnet) 21. (config)# line vty 0 4 进入线路0~4的配置模式, 4为连续线路最后一位的编号,线路为0~4 22. (conifg-line)#login 23. (config-line)#password star配置远程登陆密码为star 24. (config-line)#end返回上层 25. 锐捷路由器配置命令之端口的基本配置 26. (config)#Interface fastethernet 0/3 进入F0/3的端口配置模式 27. (config)#interface range fa 0/1-2进入F01至F0/2的端口配置模式 28. (config-if)#speed 10 配置端口速率为10M,可选10,100,auto 29. (config-if)#duplex full配置端口为全双工模式, 可选full(全双工),half(半双式),auto(自适应) 30. (config-if)#no shutdown 开启该端口 31. (config)# interface serial 1/2 进入端口S1/2的配置模式 32. (config-if)# ip address 1.1.1.1 255.255.255.0 配置端口IP及掩码 33.(config-if)# clock rate 64000 配置时钟频率(单位为K , 仅用于DCE端) 34.(config-if)# bandwidth 512 配置端口带宽速率为512KB(单位为KB) 35. (config-if)# no shutdown 开启该端口 36. (config-if)#encapsulation PPP 定义封装类型为PPP,可选项: 37. Frame-relay 帧中继 38. Hdlc 高级数据链路控制协议 39. lapb X.25的二层协议

Linux驱动程序工作原理简介

Linux驱动程序工作原理简介 一、linux驱动程序的数据结构 (1) 二、设备节点如何产生? (2) 三、应用程序是如何访问设备驱动程序的? (2) 四、为什么要有设备文件系统? (3) 五、设备文件系统如何实现? (4) 六、如何使用设备文件系统? (4) 七、具体设备驱动程序分析 (5) 1、驱动程序初始化时,要注册设备节点,创建子设备文件 (5) 2、驱动程序卸载时要注销设备节点,删除设备文件 (7) 参考书目 (8) 一、linux驱动程序的数据结构 设备驱动程序实质上是提供一组供应用程序操作设备的接口函数。 各种设备由于功能不同,驱动程序提供的函数接口也不相同,但linux为了能够统一管理,规定了linux下设备驱动程序必须使用统一的接口函数file_operations 。 所以,一种设备的驱动程序主要内容就是提供这样的一组file_operations 接口函数。 那么,linux是如何管理种类繁多的设备驱动程序呢? linux下设备大体分为块设备和字符设备两类。 内核中用2个全局数组存放这2类驱动程序。 #define MAX_CHRDEV 255 #define MAX_BLKDEV 255 struct device_struct { const char * name; struct file_operations * fops; }; static struct device_struct chrdevs[MAX_CHRDEV]; static struct { const char *name; struct block_device_operations *bdops; } blkdevs[MAX_BLKDEV]; //此处说明一下,struct block_device_operations是块设备驱动程序内部的接口函数,上层文件系统还是通过struct file_operations访问的。

Linux设备驱动程序举例

Linux设备驱动程序设计实例2007-03-03 23:09 Linux系统中,设备驱动程序是操作系统内核的重要组成部分,在与硬件设备之间 建立了标准的抽象接口。通过这个接口,用户可以像处理普通文件一样,对硬件设 备进行打开(open)、关闭(close)、读写(read/write)等操作。通过分析和设计设 备驱动程序,可以深入理解Linux系统和进行系统开发。本文通过一个简单的例子 来说明设备驱动程序的设计。 1、程序清单 //MyDev.c 2000年2月7日编写 #ifndef __KERNEL__ #define __KERNEL__//按内核模块编译 #endif #ifndef MODULE #define MODULE//设备驱动程序模块编译 #endif #define DEVICE_NAME "MyDev" #define OPENSPK 1 #define CLOSESPK 2 //必要的头文件 #include //同kernel.h,最基本的内核模块头文件 #include //同module.h,最基本的内核模块头文件 #include //这里包含了进行正确性检查的宏 #include //文件系统所必需的头文件 #include //这里包含了内核空间与用户空间进行数据交换时的函数宏 #include //I/O访问 int my_major=0; //主设备号 static int Device_Open=0; static char Message[]="This is from device driver"; char *Message_Ptr; int my_open(struct inode *inode, struct file *file) {//每当应用程序用open打开设备时,此函数被调用 printk ("\ndevice_open(%p,%p)\n", inode, file); if (Device_Open) return -EBUSY;//同时只能由一个应用程序打开 Device_Open++; MOD_INC_USE_COUNT;//设备打开期间禁止卸载 return 0; } static void my_release(struct inode *inode, struct file *file)

无线网卡模拟AP功能设置指南

无线网卡模拟AP功能设置指南 本文适用于无线网卡:MW150U 4.0、MW150U 6.0、MW150UM 1.0、MW150US 1.0、MW300U 2.0、MW3030U1.0 无线AP可以为传统的有线局域网提供无线扩展接入,而一般的无线网卡只能作为客户端连接到无线AP。我司部分无线网卡具有模拟AP功能,不单可以作为无线客户端连接上无线网络,也可以切换为模拟AP,供其他无线客户端连接。其典型应用场景如下: 在没有无线路由器的情况下,电脑通过有线连接到宽带线路已经可以上网。电脑上安装具有模拟AP 功能的无线网卡,并设置共享可以访问互联网的网络连接,模拟AP与可以访问互联网的网络连接就虚拟出一个“无线路由器”。其他的无线设备如笔记本、手机、PAD等就可以无线连接上模拟AP共享上网了。 下面以MW300U为例介绍模拟AP功能以及虚拟无线路由器的设置方法,如下图所示。

步骤一安装无线网卡驱动和客户端软件,安装完成之后,如下图所示。 步骤二启用模拟AP功能。 1. 选择客户端软件中的“高级”选项。

2. SoftAP模式,选择“开”,提示“确认打开SoftAP模式”,点击“确认”。会显示“正在设置SoftAP模式,请稍后”,然后会提示“正在设置SoftAP模式成功”。 3. 配置模拟AP参数,如下图所示,本例中我们通过“本地连接”上网,配置完成之后点击“应用”。

Internet连接共享:当电脑上存在多个网络连接时,选择用于连接到互联网的网络连接,本例中以“本地连接”为例,选择本地连接对应的网卡作为“虚拟无线路由器”的WAN接口。 网络名称:网卡工作在SoftAP模式时发出来的无线网络名称(SSID),即无线设备搜索到模拟AP的无线网络名称。 安全模式:模拟AP的无线加密类型,推荐选择WPA2-PSK。 密码类型:无线网络的加密算法,推荐选择AES。 安全密钥:连接模拟AP时需要输入的无线网络密码。 IP地址:无线网卡的IP地址,在开启SoftAP模式时,自动生成,保持默认即可。 设置好上面的参数之后,点击“应用”。接着右键点击桌面“网上邻居”选择“属性”,打开“网络连接”,可以看到“本地连接”已经共享。 步骤三无线连接到SoftAP。电脑搜索无线网络,选中“SoftAP”,输入前面设置的“安全密钥”。

制作超强的无线网卡天线-最远30公里

最远30公里!-制作超强的无线网卡天线 无线路由器越来越普及,引出的讨论也越来越多。特别是信号强度,接收性的问题相当值得注意。而大家最经常想到、比较可行的办法就是采用增益天线。因此,编者特收集 整理相关制作天线的例子,从国内外、从低端到终极,以一种比较客观的角度,展示天线制作 的技巧方法、天线的作用有多大、能达到什么样的效果。 初学者型奶粉罐天线 一、选型 先上网收集天线资料,看到很多国外的天线DIYER做出来的WIFI天线真是五花八门!有螺旋天线、有八木天线、有菱形天线、有栅网天线、还有罐头天线......让人看得眼花缭乱。经过再 三筛选,最终把制作目标锁定在罐头天线上。选择它为DIY对象主要是因为这种天线取材方便、效率高!十分适合初学者制作。 二、制作 圆筒天线之所以取材方便,是由于人人家里必定有铁罐、金属筒之类的东西。笔者就是随便拿 了一个奶粉罐制作的。 下面是参照外国WIFI网站的图片而画的制作图。 各数据如下: 中心频点=2.445G 圆筒直径=127mm 圆筒长度=111mm 振子长度=31mm 振子距圆筒底部边距=37mm 从图片可以看出,馈线的屏蔽网连接金属圆筒,信号通过圆筒反射到振子上,当然振子就是馈 线的芯线了,芯线与金属筒是绝缘的,这点必须注意! 1001下载乐园 https://www.sodocs.net/doc/4b18142795.html,

在参照外国爱好者制作WIFI天线的同时,笔者加入了自己的想法:很多爱好者都喜欢在圆筒加装N座或BNC座,然后在馈线的连接处做对应的N头或BNC头,用于连接。但笔者觉得虽然该方法对使用十分方便,但同时也对信号造成了损耗(估计1-2DBI),尤其在2.4G的频段更加明显!因此,mr7决定把屏蔽网直接焊在圆筒上(焊接前先把外壳打磨光滑),而作为振子的芯线则保留其原来的泡沫绝缘。这样一来把损耗减到最低。有点专线专用的味道了! 建议大家最好在焊接前找根直径稍比馈线粗一点的小铜管和热缩套管,先把铜管套在馈线上,然后跟屏蔽网一起焊牢在金属圆筒的外壳上,然后用热风筒把热缩套管来回吹多次,把馈线固定在铜管上,这样一来可以很好的减低由于调节天线时给馈线和振子带来的影响! 馈线笔者是选用双屏蔽的RG-58电缆,接头是SMA母头,用于接在WIFI的AP上面。一般来说馈线直径越粗越好,而且长度要尽量短,不然馈线过长所造成的损耗比天线增益还大,失去

linux wifi命令

linux wifi命令 modprobe <相应的无线网卡驱动> //你的udev如果正确识别的话,这步可以免去 iwconfig //查看无线网卡设备名称,常见的无线网卡的标识可能为ra0、ath0、wlan0等,但是一般不会是eth0; ifconfig <无线网卡名称> up //启动这个无线网卡eg:ifconfig ath0 up iwlist ath0 scan | less //查看可接入的无线热点 下面的不翻译了,自己看吧很简单的(其实下面这些步骤都可以用networkmanage这个图形化软件实现): Specify the id of the wireless network with iwconfig essid "". Or, if using WEP; iwconfig essid "" key (give the essid (the 'network name') of the network in quotes), e.g.: # iwconfig ath0 essid "linksys" key 0241baf34c If your WEP key is ASCII, prefix with s:, e.g.: # iwconfig ath0 essid linksys key s:mywepkey 对于应用更为广泛的开放式WEP加密,应该是如下命令: # iwconfig ath0 essid linksys open key s:mywepkey Request an IP address with dhcpcd . e.g.: # dhcpcd ath0 Ensure you can route: $ ping -c 3 https://www.sodocs.net/doc/4b18142795.html, 使用iwconfig命令 搜索无线网iwlist wlan0 scan 记下essid 连接无密码的无线网iwconfig wlan0 essid ChinaNet其中ChinaNet是搜索到的无线网essid 连接有密码的无线网iwconfig wlan0 essid ChinaNet key xxxx其中xxxx是密码 启用无线网卡ifconfig wlan0 up 通过dhcp获取IP dhclient wlan0或dhcpcd wlan0

无线网卡天线做法

首先是在自己家里找材料:炒菜锅的锅盖一个、USB无线网卡一个(不是无线上网卡)、USB谨慎延长线一条(2m)。有了合适的材料就好办了,接下来任务是测量锅盖的各项参数,直径0.25m,锅的深度0.05m。好了有这几项参数即可,下面计算得出抛物面的焦点:F=D×D/16H =0.25×0.25/16×0.05=0.078.也就是说抛物面的焦点是从锅盖把处向外量8厘米。OK!接下来的任务就简单了,拆开USB无线网卡,然后接到USB网卡的天线触点,然后记住位置,让这个点正好在刚刚量好的抛物面焦点处。用自己能做到的方法把它固定在那里。家里正好有一个擦玻璃的杆,杆头可以前后转270度,左右转360度。哈同志们知道我要做什么了吧。对了用他来做天线的调整支架。OK!全部过程就这么简单。架好天线,接到电脑上,哈信号强度达到50%,连接品质达到65%,真是爽啊!数码像机没在这边,改天拿回来拍一下给大家看看。 漏勺变无线网卡增益天线 如果无线路由器或无线AP不适合加装增益天线,那么我们该如何增加无线信号的传输距离和效率呢?显然,只有给无线网卡增加增益天线了。下面笔者以USB无线网卡为基础元件,介绍一下如何制作无线网卡增益天线。 关键词:抛物面、焦点、支架 制作材料:金属抛物面、USB无线网卡 辅助工具:手锯、尖头钳子、橡胶管、USB连接线、尺子、计算器、纸、笔 第一步,寻找材料 首先寻找有规则抛物面的金属器具,那么你会想到什么呢?很快你就会想到家里的铁锅,但是铁锅质量较重且不适合固定和安装,也不美观。好在,我们的祖先在千年以前就为我们发明了制作增益天线的好物件“漏勺”(图3),是不是有点疑问?马上你就知道它除了可以用来捞饺子和面条,还能用来制作增益天线。

Linux设备驱动程序学习(18)-USB 驱动程序(三)

Linux设备驱动程序学习(18)-USB 驱动程序(三) (2009-07-14 11:45) 分类:Linux设备驱动程序 USB urb (USB request block) 内核使用2.6.29.4 USB 设备驱动代码通过urb和所有的 USB 设备通讯。urb用 struct urb 结构描述(include/linux/usb.h )。 urb以一种异步的方式同一个特定USB设备的特定端点发送或接受数据。一个USB 设备驱动可根据驱动的需要,分配多个 urb 给一个端点或重用单个 urb 给多个不同的端点。设备中的每个端点都处理一个 urb 队列, 所以多个 urb 可在队列清空之前被发送到相同的端点。 一个 urb 的典型生命循环如下: (1)被创建; (2)被分配给一个特定 USB 设备的特定端点; (3)被提交给 USB 核心; (4)被 USB 核心提交给特定设备的特定 USB 主机控制器驱动; (5)被 USB 主机控制器驱动处理, 并传送到设备; (6)以上操作完成后,USB主机控制器驱动通知 USB 设备驱动。 urb 也可被提交它的驱动在任何时间取消;如果设备被移除,urb 可以被USB 核心取消。urb 被动态创建并包含一个内部引用计数,使它们可以在最后一个用户释放它们时被自动释放。 struct urb

struct list_head urb_list;/* list head for use by the urb's * current owner */ struct list_head anchor_list;/* the URB may be anchored */ struct usb_anchor *anchor; struct usb_device *dev;/* 指向这个 urb 要发送的目标 struct usb_device 的指针,这个变量必须在这个 urb 被发送到 USB 核心之前被USB 驱动初始化.*/ struct usb_host_endpoint *ep;/* (internal) pointer to endpoint */ unsigned int pipe;/* 这个 urb 所要发送到的特定struct usb_device 的端点消息,这个变量必须在这个 urb 被发送到 USB 核心之前被 USB 驱动初始化.必须由下面的函数生成*/ int status;/*当 urb开始由 USB 核心处理或处理结束, 这个变量被设置为 urb 的当前状态. USB 驱动可安全访问这个变量的唯一时间是在 urb 结束处理例程函数中. 这个限制是为防止竞态. 对于等时 urb, 在这个变量中成功值(0)只表示这个 urb 是否已被去链. 为获得等时 urb 的详细状态, 应当检查 iso_frame_desc 变量. */ unsigned int transfer_flags;/* 传输设置*/ void*transfer_buffer;/* 指向用于发送数据到设备(OUT urb)或者从设备接收数据(IN urb)的缓冲区指针。为了主机控制器驱动正确访问这个缓冲, 它必须使用 kmalloc 调用来创建, 不是在堆栈或者静态内存中。对控制端点, 这个缓冲区用于数据中转*/ dma_addr_t transfer_dma;/* 用于以 DMA 方式传送数据到 USB 设备的缓冲区*/ int transfer_buffer_length;/* transfer_buffer 或者 transfer_dma 变量指向的缓冲区大小。如果这是 0, 传送缓冲没有被 USB 核心所使用。对于一个 OUT 端点, 如果这个端点大小比这个变量指定的值小, 对这个USB 设备的传输将被分成更小的块,以正确地传送数据。这种大的传送以连续的 USB 帧进行。在一个 urb 中提交一个大块数据, 并且使 USB 主机控制器去划分为更小的块, 比以连续地顺序发送小缓冲的速度快得多*/

电脑自带无线网卡发射wifi信号的方法

电脑自带无线网卡发射wifi信号的方法 这里给大家一个笔记本等电脑自带无线网卡如何发射wifi信号的教程,需要win7系统。首先,先确认你的网卡是这几种型号,在设备管理器里查看,设备管理器在我的电脑右键管理,然后你就会看到了。 目前支持的设备有: Atheros AR5005GS (as in the TP-Link TL-WN651G) Atheros AR5007EG with 8.0.0.238 firmware Broadcom 4310-series (in many Dell laptops) D-link AirPlus G DWL-G510 Wireless PCI Adapter (driver version 3.0.1.0) Intel 5100/5300 (with latest drivers from Intel's site, version 13.0.0.107, 64bit systems only) Ralink RT2870 (in many 802.11n USB dongles) Realtek RTL8187SE (with the drivers that came with Windows 7) Realtek RTL8192u with 1370(Beta) 基本上你的网卡标有AP发射的都可以。 打开开始菜单附件的命令提示符,右键用管理员权限打开。 然后输入如下内容(建议直接复制过去右键黏贴) netsh wlan set hostednetwork mode=allow ssid="Win7 AP" key=12345678

linux驱动程序的编写

linux驱动程序的编写 一、实验目的 1.掌握linux驱动程序的编写方法 2.掌握驱动程序动态模块的调试方法 3.掌握驱动程序填加到内核的方法 二、实验内容 1. 学习linux驱动程序的编写流程 2. 学习驱动程序动态模块的调试方法 3. 学习驱动程序填加到内核的流程 三、实验设备 PentiumII以上的PC机,LINUX操作系统,EL-ARM860实验箱 四、linux的驱动程序的编写 嵌入式应用对成本和实时性比较敏感,而对linux的应用主要体现在对硬件的驱动程序的编写和上层应用程序的开发上。 嵌入式linux驱动程序的基本结构和标准Linux的结构基本一致,也支持模块化模式,所以,大部分驱动程序编成模块化形式,而且,要求可以在不同的体系结构上安装。linux是可以支持模块化模式的,但由于嵌入式应用是针对具体的应用,所以,一般不采用该模式,而是把驱动程序直接编译进内核之中。但是这种模式是调试驱动模块的极佳方法。 系统调用是操作系统内核和应用程序之间的接口,设备驱动程序是操作系统内核和机器硬件之间的接口。设备驱动程序为应用程序屏蔽了硬件的细节,这样在应用程序看来,硬件设备只是一个设备文件,应用程序可以像操作普通文件一样对硬件设备进行操作。同时,设备驱动程序是内核的一部分,它完成以下的功能:对设备初始化和释放;把数据从内核传送到硬件和从硬件读取数据;读取应用程序传送给设备文件的数据和回送应用程序请求的数据;检测和处理设备出现的错误。在linux操作系统下有字符设备和块设备,网络设备三类主要的设备文件类型。 字符设备和块设备的主要区别是:在对字符设备发出读写请求时,实际的硬件I/O一般就紧接着发生了;块设备利用一块系统内存作为缓冲区,当用户进程对设备请求满足用户要求时,就返回请求的数据。块设备是主要针对磁盘等慢速设备设计的,以免耗费过多的CPU时间来等待。 1 字符设备驱动结构 Linux字符设备驱动的关键数据结构是cdev和file_operations结构体。

自制无线网卡高增益天线(3)——usb天线加强

自制无线网卡高增益天线()——usb加强 天线 一、选型 先上网收集天线资料,看到很多国外的天线DIYER做出来的WIFI 天线真是五花八门!有螺旋天线、有八木天线、有菱形天线、有栅网天线、还有罐头天线......让人看得眼花缭乱。经过再三筛选,最终把制作目标锁定在罐头天线上。选择它为DIY对象主要是因为这种天线取材方便、效率高!十分适合初学者制作。 二、制作 圆筒天线之所以取材方便,是由于人人家里必定有铁罐、金属筒之类的东西。笔者就是随便拿了一个奶粉罐制作的。 下面是参照外国WIFI网站的图片而画的制作图。 各数据如下: 中心频点=2.445G 圆筒直径=127mm 圆筒长度=111mm 振子长度=31mm 振子距圆筒底部边距=37mm

从图片可以看出,馈线的屏蔽网连接金属圆筒,信号通过圆筒反射到振子上,当然振子就是馈线的芯线了,芯线与金属筒是绝缘的,这点必须注意! 在参照外国爱好者制作WIFI天线的同时,笔者加入了自己的想法:很多爱好者都喜欢在圆筒加装N座或BNC座,然后在馈线的连接处做对应的N头或BNC头,用于连接。但笔者觉得虽然该方法对使用十分方便,但同时也对信号造成了损耗(估计1-2DBI),尤其在2.4G的频段更加明显!因此,mr7决定把屏蔽网直接焊在圆筒上(焊接前先把外壳打磨光滑),而作为振子的芯线则保留其原来的泡沫绝缘。这样一来把损耗减到最低。有点专线专用的味道了! 建议大家最好在焊接前找根直径稍比馈线粗一点的小铜管和热 缩套管,先把铜管套在馈线上,然后跟屏蔽网一起焊牢在金属圆筒的外壳上,然后用热风筒把热缩套管来回吹多次,把馈线固定在铜管上,这样一来可以很好的减低由于调节天线时给馈线和振子带来的影响!

从零开始搭建Linux驱动开发环境

参考: 韦东山视频第10课第一节内核启动流程分析之编译体验 第11课第三节构建根文件系统之busybox 第11课第四节构建根文件系统之构建根文件系统韦东山书籍《嵌入式linux应用开发完全手册》 其他《linux设备驱动程序》第三版 平台: JZ2440、mini2440或TQ2440 交叉网线和miniUSB PC机(windows系统和Vmware下的ubuntu12.04) 一、交叉编译环境的选型 具体的安装交叉编译工具,网上很多资料都有,我的那篇《arm-linux- gcc交叉环境相关知识》也有介绍,这里我只是想提示大家:构建跟文件系统中所用到的lib库一定要是本系统Ubuntu中的交叉编译环境arm-linux- gcc中的。即如果电脑ubuntu中的交叉编译环境为arm-linux-

二、主机、开发板和虚拟机要三者互通 w IP v2.0》一文中有详细的操作步骤,不再赘述。 linux 2.6.22.6_jz2440.patch组合而来,具体操作: 1. 解压缩内核和其补丁包 tar xjvf linux-2.6.22.6.tar.bz2 # 解压内核 tar xjvf linux-2.6.22.6_jz2440.tar.bz2 # 解压补丁

cd linux_2.6.22.6 patch –p1 < ../linux-2.6.22.6_jz2440.patch 3. 配置 在内核目录下执行make 2410_defconfig生成配置菜单,至于怎么配置,《嵌入式linux应用开发完全手册》有详细介绍。 4. 生成uImage make uImage 四、移植busybox 在我们的根文件系统中的/bin和/sbin目录下有各种命令的应用程序,而这些程序在嵌入式系统中都是通过busybox来构建的,每一个命令实际上都是一个指向bu sybox的链接,busybox通过传入的参数来决定进行何种命令操作。 1)配置busybox 解压busybox-1.7.0,然后进入该目录,使用make menuconfig进行配置。这里我们这配置两项 一是在编译选项选择动态库编译,当然你也可以选择静态,不过那样构建的根文件系统会比动态编译的的大。 ->Busybox Settings ->Build Options

无线网卡上不了网常见问题及解决方法

无线网卡上不了网常见问题及解决方法 (1)安装问题 (2)1.使用无线上网业务需要安装软件吗?到哪里可以得到这些软件? (1)无线上网卡”包装内物品齐全 若客户的“无线上网卡”包装内物品齐全,建议使用“无线上网卡”包装内的“无线上网卡驱动程序盘”以及“安装步骤说明书”进行正确安装。(2)用户的无线上网卡驱动程序丢失 acerun: yes"> 若用户的上网卡驱动程序丢失,建议用户登录无线上网卡厂家网站进行程序下载,并按照正规安装步骤进行安装。常规性的安装问题还可以登录相关厂商网址进行查询。 2.如果用户的无线上网卡在自己的笔记本电脑上不能使用,但在其他笔记本电脑上正常工作正常。 原因有两个: (1)无线上网卡没有插好; (2)无线上网卡驱动程序有问题。 解决办法:

(1)将无线上网卡重新插入自己的笔记本电脑; (2)删除无线上网卡驱动程序,并重新安装驱动程序。安装步骤见本节第一条。 3.可以通话、发短信息,但是连接图标灰色,无法连接上网。 无线上网卡驱动驱动程序没有安装好,请删除以前的驱动程序,按照该上网卡的《无线上网卡安装和使用指南》重新安装客户端软件,并重新插入无线上网卡,拨号即可上网。 4.为什么打开拨号应用程序,提示“无法找到PCMCIA卡”? 首先请确认您的无线网卡是否安装到位,无线网卡的工作指示灯是否正常。然后在控制面版中的确良设备管理器中查看相关的属性是否有异常,如有设备异常请安装相应的驱动,建议更新网卡驱动或卸载后重新安装,并重启电脑。 5.怎样正确拔出无线上网卡? 如果您需要将无线上网卡从计算机拔出,请利用Windows系统中安全删除硬件的功能停止无线上网卡后再拔卡。可参照以下步骤操作:(1)断开上网连接; (2)双击计算机屏幕右下角的“安全删除硬件”图标,系统弹出“安全删除硬件设备”界面;

教您使用无线路由器如何提高无线信号强度

教您使用无线路由器如何提高无线信号强度 随着我国无线网的发展,很多的家庭都开始使用无线路由器,但是信号弱用户很头疼的一个问题,这里就给您作出分析。无线信号强弱是广大用户所关心的,谁都希望自己家的无线路由器网络信号能够覆盖到房间的每个角落,特别是希望无线上网的地方。 否则使用起来根本不能够算是真正意义的无线。然而事与愿违很多朋友都在买回无线路由器后非常扫兴,绝大多数都是因为无线信号无法覆盖到理想位置而放弃无线路由器应用,等于是花无线路由器的钱买回了一个宽带有线路由器。不过任何事情都是有技巧的,今天就请各位跟随笔者一起软硬兼施提高无线信号强度。 软件入手提高无线信号强度: 软件入手是不需要付出更多金钱的,我们可以零消费零距离的提高无线信号覆盖范围和信号强度。 方法一:修改信号发射频段 一般来说无线路由器默认的无线信号发射所使用的频段很容易和其他同类产品产生冲突,所以在信号不好的情况下我们可以尝试修改信号发射频段,笔者的经验是最后一个或者第一个频段是最好的,很难有冲突发生,而频段6干扰最厉害,因为很多产品默认发身频段都是6。 方法二:取消加密以及DHCP自动分配地址 虽然很多文章都说了加密或者采用DHCP自动分配网络参数是不影响无线传输速度的,但是笔者发现在实际使用过程中如果觉得无线信号不好或者覆盖范围不够广的话,依然可以尝试降低加密级别或者取消加密验证,并且关闭DHCP自动分配地址的功能而采取手工设置IP等信息,往往可以有效的提高无线信号接受强度,解决无线路由器信号弱的问题。 方法三:合理摆放设备位置 很多用户在无线设备摆放上不太讲究,经常把无线设备放到书房或阳台这种比较偏的位置,实际上无线设备发射出的信号是以圆圈形式发散的,所以其传输最大距离是其半径,因此我们应该尽量将无线设备放到家中的中间位置,这样可以最大限度的提高无线信号对家中各个房间的覆盖率和强度,解决信号弱的问题。

无线路由器信号增强设置方法

网络信号的使用并不像我们设置的结果一样,那么我们对于修改信号通道对于网络有何影响呢?下面文章就详细的为我们说明一下。 在实际使用的时候,我们也常常发现无线信号的覆盖范围并不如产品说明上的那样好,不免令人失望。因为在实际使用的时候,信号会受到环境等一些客观因素的影响而出现衰减,这是无法避免的。当然,对于信号的衰减,我们也并不是束手无策,在使用的时候,可以通过一些技巧,尽量将信号衰减降到最低。 一、合理摆放无线路由器的位置 由于无线信号在穿越障碍物后,尤其是在穿越金属后,信号会大幅衰减。而在我们家庭的房子里,有很多钢筋混凝土墙,所以我们在摆放无线路由器的时候,应该使信号尽量少穿越墙壁。 我们一般很少会在厨房或餐厅里上网,而书房和卧室是我们平时经常上网的地方,所以我们在选择无线路由器的摆放位置的时候,可以选择离厨房和餐厅远一些地方,而尽量靠近书房和卧室。 书房外墙处是摆放无线路由器的理想位置,这样摆放能够使客厅,书房,主卧,次卧都有一个比较好无线信号。当然,不同家庭结构都不一样,大家应该视具体情况而定。一般来说,无线网卡的客户端都具备信号强度的检测能力,大家拿笔记本在房间各处查看信号强度,从而选择一个最佳的摆放点。另外也可以安装Network Stumbler软件来检测信号的强度。 二、修改信号频道减少干扰 我们在无线路由器的配置界面里,会看到无线信道的选项。一般来说,54M的无线信道有11个,依次是信道1到信道11。当有多个无线信号在使用同一个无线信号频道的话,就会出现信号干扰。 很多用户在购买无线路由器使用后,并未对无线信号频道能进行修改,这样大家使用的都是路由器默认配置时的信道,这样就很容易发生信道的干扰。如果附近有邻居使用的信道跟我们的一样,那么,我们双方的无线信号都会受到影响。 我们同样可以使用Network Stumbler软件来进行扫描,看看附近都存在哪些无线信号,使用的是哪个信道。然后对我们自己的无线信道进行修改,避免与其他信道重复。 另外大家要注意的是,一个频道的信号会同时干扰与其相邻的两个频道,即频道6的信号会影响到频道5和频道7,所以我们在设置无线信道的时候,应该尽量使自己的信道离其他信号频道两个以上。

有线网卡和无线网卡上网优先级切换的设置技巧

有线网卡和无线网卡同时上网优先级切换的设置技巧其实windows所有连接只有一个是目前活动的连接,即有优先权的, 修改优先权在: 网络连接 ---- 资源管理器----高级菜单 --- 高级设置 在这里可以向中向下修改所有网络连接的优先顺序 另一个有意思的问题是都连接上时如何查看当然用的是哪个连接,是有这种可能的, 比如有个无线连接先连上就在用迅雷下载时插上了有线网线 根据优先权网络连接应该马上切换,但有时系统没及时反应过来时,就会问是在用哪个连接了 办法很多的, netstat -an,会马上显示local address,看下ip就知道了 pathpingip,第一个就会显示本地哪个网卡的地址 办法还有很多,,,, 当然以上办法对查得本地地址后,还要用ipconfig /all查看地址对应的网卡即可,,, 另,,,以上是多接口的情况, 还有一种优先情况是无线网络连接多ap时的情况,,,这里也有优先权的问题,,,在无线连接里就可以修改 扩充的问题来了,,,想同时用两个连接呢???? 像服务器接双网关做路由时, 这里就要说明以上所指的接口的优先权是由路由决定的,接口只是路由选择的出口 所以,仅看连接的优先顺序是没用的,还是pathping才能很好的反应路由抉择的情况 另,双网关还可以桥接在一起,做负载平衡等,,,,,,,,, ============================================================= 注意:这里的172.16.x.x 和192.168.1.X 和你的局域网环境有关,可以命令行下ipconfig /all 查看 局域网有线连接(网段172.16.X.X,不提供接入internet服务),WIFI连接(网段192.168.1.X,可连接互联网)。 如果同时连接有线网卡和无线网卡,因为有线网卡的优先级较高,故仅有线局域网能正常工作,无线网卡可连接但却无法传送数据。要改变这种情况,需要

无线网卡信号增强增益天线改装diy的诸多方法

无线网卡信号增强增益天线改装diy的诸多方法! 计算机,电子,时尚发烧友 计算机,电子,时尚等诸多元素感兴趣的朋友,可以来交流…… 2007-10-17 09:23 无线网卡信号增强,增益天线改装、diy的诸多方法!数十倍的提高信号…… 网络收集,非原创! 以下是我花了很大力气从多处收集来的DIY 2.4G WIFI 天线的方案,集中在 这里,供网友学习,制作。我在本论坛上提过很多问题,也从回帖里学到了很多的东西,以此帖向各位网友表示感谢! 无线路由器越来越普及,引出的讨论也越来越多。特别是信号强度,接收性的问题相当值得注意。而大家最经常想到、比较可行的办法就是采用增益天线。因此,编者特收集整理相关制作天线的例子,从国内外、从低端到终极,以一种比较客观的角度,展示天线制作的技巧方法、天线的作用有多大、能达到什么样的效果。 初学者型奶粉罐天线 一、选型 先上网收集天线资料,看到很多国外的天线DIYER做出来的WIFI天线真是五花八门!有螺旋天线、有八木天线、有菱形天线、有栅网天线、还有罐头天线......让人看得眼花缭乱。经过再三筛选,最终把制作目标锁定在罐头天线上。选择它为DIY对象主要是因为这种天线取材方便、效率高!十分适合初学者制作。 二、制作 圆筒天线之所以取材方便,是由于人人家里必定有铁罐、金属筒之类的东西。笔者就是随便拿了一个奶粉罐制作的。 下面是参照外国WIFI网站的图片而画的制作图。 各数据如下:

中心频点=2.445G 圆筒直径=127mm 圆筒长度=111mm 振子长度=31mm 振子距圆筒底部边距=37mm 从图片可以看出,馈线的屏蔽网连接金属圆筒,信号通过圆筒反射到振子上,当然振子就是馈线的芯线了,芯线与金属筒是绝缘的,这点必须注意! 在参照外国爱好者制作WIFI天线的同时,笔者加入了自己的想法:很多爱好者都喜欢在圆筒加装N座或BNC座,然后在馈线的连接处做对应的N头或BNC 头,用于连接。但笔者觉得虽然该方法对使用十分方便,但同时也对信号造成了损耗(估计1-2DBI),尤其在2.4G的频段更加明显!因此,mr7决定把屏蔽网直接焊在圆筒上(焊接前先把外壳打磨光滑),而作为振子的芯线则保留其原来的泡沫绝缘。这样一来把损耗减到最低。有点专线专用的味道了! 建议大家最好在焊接前找根直径稍比馈线粗一点的小铜管和热缩套管,先把铜管套在馈线上,然后跟屏蔽网一起焊牢在金属圆筒的外壳上,然后用热风筒把热缩套管来回吹多次,把馈线固定在铜管上,这样一来可以很好的减低由于调节天线时给馈线和振子带来的影响!

Linux设备驱动程序简介

第一章Linux设备驱动程序简介 Linux Kernel 系统架构图 一、驱动程序的特点 ?是应用和硬件设备之间的一个软件层。 ?这个软件层一般在内核中实现 ?设备驱动程序的作用在于提供机制,而不是提供策略,编写访问硬件的内核代码时不要给用户强加任何策略 o机制:驱动程序能实现什么功能。 o策略:用户如何使用这些功能。 二、设备驱动分类和内核模块 ?设备驱动类型。Linux 系统将设备驱动分成三种类型 o字符设备 o块设备 o网络设备 ?内核模块:内核模块是内核提供的一种可以动态加载功能单元来扩展内核功能的机制,类似于软件中的插件机制。这种功能单元叫内核模块。 ?通常为每个驱动创建一个不同的模块,而不在一个模块中实现多个设备驱动,从而实现良好的伸缩性和扩展性。 三、字符设备 ?字符设备是个能够象字节流<比如文件)一样访问的设备,由字符设备驱动程序来实现这种特性。通过/dev下的字符设备文件来访问。字符设备驱动程序通常至少需要实现 open、close、read 和 write 等系统调用 所对应的对该硬件进行操作的功能函数。 ?应用程序调用system call<系统调用),例如:read、write,将会导致操作系统执行上层功能组件的代码,这些代码会处理内核的一些内部 事务,为操作硬件做好准备,然后就会调用驱动程序中实现的对硬件进 行物理操作的函数,从而完成对硬件的驱动,然后返回操作系统上层功 能组件的代码,做好内核内部的善后事务,最后返回应用程序。 ?由于应用程序必须使用/dev目录下的设备文件<参见open调用的第1个参数),所以该设备文件必须事先创建。谁创建设备文件呢? ?大多数字符设备是个只能顺序访问的数据通道,不能前后移动访问指针,这点和文件不同。比如串口驱动,只能顺序的读写设备。然而,也 存在和数据区或者文件特性类似的字符设备,访问它们时可前后移动访

相关主题