完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
` AM335x AM335x处理器采用系列化,从高端过渡到低端,满足不同行业客户的各种功能需求,达到性价比最优的微妙平衡。有AM3359/AM3358/AM3357/AM3356/AM3354等多款配置参数各不相同的处理器,且系列 处理器管脚PIN对PIN兼容,方便客户进行产品升级公开资料最全的一款芯片,方便工程师学习及进行产品设计。 系统支持丰富,支持WINCE、LINUX、Android三种主流嵌入式操作系统;支持裸机操作,可通过StarterWare做到无需操作系统,开发人员便可像对微控制器编程那样对处理器进行编程。集成2个MAC,双千兆网络。拥有CAN、PROFIBUS、RS485等多种主流工业总线,应用领域广泛。品质稳定,定位工业控制MCU,适应各种残酷工业环境;超长供货周期,保证客户产品寿命。 这次使用的是深圳盈鹏飞嵌入式公司基于AM335x打造的双网络,6串口的嵌入式开发板(([url=]EVB-T335[/url]))。核心板采用的AM335x处理器,最高运行1GHz,邮票孔设计,超小体积,EtherCat.PROFINET工业总线,支持Linux3.14/Wince7.0系统! 从官网上找了两张开发板和核心板的高清图 EVB-T335开发板
EVB-T335_En.pdf
(1.26 MB, 下载次数: 5
)
核心板
CoM-T335_cn.pdf
(2.58 MB, 下载次数: 3
)
前面已经介绍完AM335x和([url=]EVB-T335[/url])开发板,下面开始软件部分! 本文描述如何在AM335x开发板上移植无线网卡驱动及其使用。关于开发板支持哪些u***-wifi设备,取决于该设备使用哪种类型芯片组,每种芯片组都有与之对应的linux驱动,而在([url=]EVB-T335[/url])的3.14.43内核源码中,已经支持了许多常用的芯片组驱动,具体请用户在menuconfig中自行查看。本文以使用EDUP公司的EP-N8531、TP-LINK公司的TL-WN823N为例,说明u***-wifi移植和使用方法。其中,EP-N8531使用的芯片组分别为RT5370,使用的驱动为rt2800u***;TL-WN823N使用的芯片组为RTL8192CU,驱动为rtl8192cu。 内核驱动模块和编译 a、配置内核支持cfg80211(802.11n协议) Networking support ---> -*- Wireless ---> --- Wireless <*> cfg80211 - wireless configuration API enable powersave by default cfg80211 wireless extensionscompatibility <*> Generic IEEE 802.11 Networking Stack(mac80211) Minstrel Minstrel 802.11n support b、配置内核支持RTL8192CU(本文为将驱动编译成模块的形式,如需编译进内核,请自行修改) DeviceDrivers ---> Network device support ---> Wireless LAN ---> c、配置内核支持RT5370(本文为将驱动编译成模块的形式,如需编译进内核,请自行修改) DeviceDrivers ---> Network device support ---> Wireless LAN ---> <*> Ralink driver support ---> rt2800u*** - Include support for rt53xxdevices (EXPERIMENTAL) 配置完成后,保存退出。然后重新编译内核和内核模块(如已将驱动编译进内核,则无需编译内核模块): 编译内核 $ make ARCH=armCROSS_COMPILE=arm-linux-gnueabihf- LOADADDR=0x80008000 uImage 编译内核模块: $ make ARCH=armCROSS_COMPILE=arm-linux-gnueabihf- modules 安装内核模块: $ make ARCH=armINSTALL_MOD_PATH= path to root of filesystem为模块安装的目录,例如/home/alex/evbt335/kernel/modules为笔者的安装路径,相应命令如下所示: $ make ARCH=armINSTALL_MOD_PATH=/home/alex/evbt335/kernel/modulesmodules_install 将编译好的内核烧录到开发板,并将安装好的驱动模块目录/home/alex/evbt335/kernel/modules/lib/modules 复制到开发板的/lib/目录下。 下载固件 每个u***-wifi设备驱动都需要相应的固件,其中,RT5370需要的固件为rt2870.bin;RTL8192CU所需固件为rtl8192cufw_TMSC.bin和rtl8192cufw.bin ,其他wifi模块可根据实际模块加载过程中打印输出为准;(在启用设备时,系统会打印出需要的固件,下文会讲到) Linux系统所需的固件包可在linux系统下通过如下命令下载: $ gitclone git://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git 下载后可在该固件包里找到rt2870.bin、rtl8192cufw_TMSC.bin和rtl8192cufw.bin文件。将rt2870.bin文件拷贝到([url=]EVB-T335[/url])的/lib/firmware/rtlwifi/目录下(使用EP-N8531的情况下),将rtl8192cufw_TMSC.bin 和rtl8192cufw.bin文件拷贝到([url=]EVB-T335[/url])的/lib/firmware/rtlwifi/(使用TL-WN823N的情况下)。(注:用户需根据实际情况将所需的固件拷贝到相应的目录下)。 USB-wifi的使用 经上述步骤将所需的内核和驱动模块以及固件程序烧录到([url=]EVB-T335[/url]),待系统启动后,将u***-wifi设备插入([url=]EVB-T335[/url]),系统会识别到设备并自动安装相应驱动模块。由于EP-N8531和TL-WN823N在([url=]EVB-T335[/url])上的使用方法一致,因此,接下来仅以EP-N8531为例进行使用说明。EP-N8531插入([url=]EVB-T335[/url])后系统打印出如下信息: 此时,系统会自动加载rt2800u***的驱动模块,输入lsmod命令可查看: 注:如果系统没有自动加载,则可以输入modprobert2800u***命令进行手动加载。 并且生成了wlan0网口,输入ifconfig -a可查看: 驱动模块加载成功后,需要使用wpa_supplicant 工具连接wifi网络。具体使用步骤如下: 创建wpa_supplicant.conf配置文件 在/etc/目录下创建wpa_supplicant.conf文件: # WPA-PSK/TKIP ctrl_interface=/var/run/wpa_supplicant network={ ssid="artcor" //Wifi账号 key_mgmt=WPA-PSK //请无论你是使用WPA-PSK,WPA2-PSK,都请在这里输入 WPA-PSK。这 在wpa_supplicant看来WPA-PSK,WPA2-PSK都是 WPA-PSK,改成WPA2-PSK,它会不认识。 proto=WPA RSN //一般这样写可以兼容WPA和WPA2 CCMP和TKIP proto=RSN #Robust SecurityNetwork:强健安全网络,表示这个网络配 置比 WEP模式要更安全。 pairwise=CCMPTKIP //关键点,wpa_supplicant目前还不认AES的加密标准,因此即使你在 此输入AES也没有用,自行web到路由器上改成CCMP TKIP psk="82523090" //Wifi密码 } (注:请根据路由器实际配置修改,可参考附录1) 连接无线wifi a、由于EVBT-335使用了双网络,为避免冲突,可以先关闭eth0和eth1: #ifconfigeth0 down #ifconfigeth1 down b、设置默认路由网关(一般为路由器IP,笔者的路由器IP为192.168.0.1): #routeadd default gw 192.168.0.1 设置wlan0的IP(注:请根据路由器实际情况设置,需与路由器IP在同一网段): #ifconfigwlan0 192.168.0.222 up 注:此时可看到此时加载了rt2870.bin的固件) c、连接无线wifi #wpa_supplicant-iwlan0 -c /etc/wpa_supplicant.conf -B d、查看连接状况: #iwconfig 可见wlan0已经连接上了账号为‘artcor’的wifi。 e、测试,ping路由IP: # ping192.168.0.1 -I wlan0 可看到顺利ping通路由IP,至此,EP-N8531可以正常使用。 问题1:如何卸载驱动模块 ([url=]EVB-T335[/url])系统会自动加载u***-wifi所需的驱动模块,如需卸载rt2800u***模块,可使用如下命令: #modporbe –rt2800u*** 若要手动加载驱动模块,由依赖模块较多,请尽量不要使用insmod命令,推荐使用modprobe 命令,该命令可自动加载该模块所需的其他依赖模块。 问题2:可以ping通路由但是ping不通外网 解决办法: routeadd default gw 192.168.0.1 ` |
|
相关推荐
|
|
飞凌嵌入式ElfBoard ELF 1板卡-CAN编程示例之开发板测试
852 浏览 0 评论
该问题是用APP给芯海科技的CST92F25芯片发指令是出现的
2844 浏览 1 评论
867 浏览 0 评论
1710 浏览 1 评论
2758 浏览 1 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-27 08:02 , Processed in 0.558919 second(s), Total 43, Slave 34 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号