【物联网】QCA4010开发环境搭建(二)(解决WIN10下不能驱动问题)

  1. 云栖社区>
  2. 博客>
  3. 正文

【物联网】QCA4010开发环境搭建(二)(解决WIN10下不能驱动问题)

沧海一笑dj 2016-01-20 10:05:00 浏览3456
展开阅读全文

更多资料,请参考:中电港论坛 http://bbs.cecport.com/forum.php?mod=forumdisplay&fid=64&page=1

感谢中电港,低价QCA4010开发板入手,终于腾出时间来研究一下这个高大上的开发板

4010与4004一样,内部集成了Tensilica Xtensa处理器,主频可达130MHz。Xtensa处理器是Tensilica公司推出的一个可自由装组、可弹性扩张,并可以自动合成的处理器核心,它的指令集构架 (ISA) 拥有专利权,32位处理器的结构特色是有一套专门为嵌入式系统设计、精简而高效能的16与24位指令集。如要更进一步了解 Xtensa 处理器的功能,请访问该公司的官网。

开发板提供的资料不多,仅有的一些资料也是分散得很,得自己爬论坛一个一个的找。经过几天的摸索,终于把开发环境搭建好了。

开发环境的搭建包括两个方面的内容,第一是ART工具的使用环境准备,第二是编译环境的准备。

ART工具的全称是Qualcomm Atheros Radio Tool 2 for Internet of Everything的简称,实际上这就是个测试与烧录固件的程序。当然这个工具还有其它的一些功能, 如读取及修改硬件的一些工作参数。ART只能在WINDOWS下执行,而且似乎只能在WIN7下正常工作。不过WIN10良好的兼容性,使得我们也可以在WIN10下工作,下面会介绍具体的使用方法。

编译用的工具链则是基于LINUX系统的,所以还得准备一个LINUX系统。

我的建议是在WINDOWS下安装一个LINUX虚拟机,这样二者就兼顾了。

本文在WINDOWS 10下,使用VBOX搭建了一个UBUNTU来配合使用。

一、 ART工具准备

先从这里下载ART工具的最新版,http://bbs.cecport.com/forum.php?mod=viewthread&tid=299&extra=page%3D1
解压缩,得到如下目录结构

├─bin
├─command
│  ├─common
│  │  ├─calibrationMemory
│  │  └─summary
│  ├─refDesigns
│  │  ├─AR6004
│  │  ├─DV144
│  │  ├─SP141
│  │  ├─SP143
│  │  ├─SP144
│  │  ├─SP241
│  │  └─SP242
│  ├─test_bt
│  ├─test_rx
│  │  └─rate
│  ├─test_setup
│  │  └─regression
│  └─test_tx
│      └─Rate
├─driver
│  ├─boardData
│  ├─Firmware
│  │  └─AR6006
│  ├─win7
│  │  ├─USB
│  │  └─USB_64bit
│  │      └─SP242
│  └─winxp
│      ├─SDIO
│      └─USB
├─log
├─report
├─support
│  └─EepromUtil
└─tcmd
    ├─ath6kl_driver
    └─athtestcmd

要注意的是BIN和DRIVER文件夹,BIN包括一些执行的程序,DRIVER是驱动程序。别的东西暂时不用管,用到的时候再来研究。

先将开发板上HOST0的跳线跳到如图所示位置

 

然后用USB线连接到PC机,此时,系统会发现硬件,但是驱动不会成功,因为这个驱动不是通用的,WIN10是找不到的,注意上面的ART工具目录下有个DRIVER文件夹,不过只有WIN7和WINXP的驱动。没关系,WIN7的驱动WIN10也是可以用的。不过在安装驱动之前,先要将WIN10的硬件驱动签名禁用。怎么禁用WIN10的硬件驱动签名,请自行GOOGLE。重启系统且禁用硬件驱动签名后,打开设备管理器,安装设备驱动程序。出现下面的画面,就表示驱动成功了!

 

下面来测试ART工具,试着烧写一个固件文件。打开BIN目录下,依次找到下面三个文件,

 

依次在各文件上右击,更改程序的兼容性设置,如下图所示

 

都设置好之后,双击artgui.exe,启动。出现如下画面

 

点击LOAD CARD,会发现加载成功。如下图

 

下载测试用的固件文件,  raw_flashimage_AR401X_REV6_IOT_hostless_unidev_dualband.zip (179.72 KB, 下载次数: 0) 

将下载好的测试用固件解压,放到BIN目录下

打开ARTGUI菜单TOOLS/SEND CMD命令,在弹出的对话框中输入"xp file=raw_flashimage_AR401X_REV6_IOT_hostless_unidev_dualband.bin"。点击OK,开始烧写。

烧写成功后,会出现如下信息,

 

如果连接了串口,终端会出现类似信息。注意先要将HOST0的跳线复位,然后可能需要复位开发板。

PUTTY串口设置能让信息如下

 

 

第一步工作就算完成了。

二、LINUX编译环境

需要注意的官方的工具链是32位的,在UBUNTU14 X64下是没有办法运行的,不得已,再装个UBUNTU14 X86 LTS版。

1. 将工具包 cad_kf_RD2012_4.tar.gz 解压在Linux系统根目录
cd  /
tar xvzf cad_kf_RD2012_4.tar.gz 
注意:需解压至根目录,因为脚本里使用的绝对路径

2. 单机版license安装
将 license.dat 文件拷贝至/cad/tensilica目录下。
编译代码时需使用license,与电脑MAC地址绑定

3. 解压SDK
tar xvzf qca4010-tx-1-0_qca_odm_ext.tar.gz
得到qca4010-tx-1-0_qca_odm_ext.git目录
修改sdkenv.sh脚本,添加工具链定义:

  1. XTENSA_CORE=KF1_prod_rel_2012_4
  2. XTENSA_TOOLS_ROOT=/cad/tensilica/xtensa/XtDevTools/install/tools/RD-2012.4-linux/XtensaTools
  3. XTENSA_ROOT=/cad/tensilica/chips/kingfisher/RD-2012.4-linux/${XTENSA_CORE}
  4. XTENSA_SYSTEM=${XTENSA_ROOT}/config
  5. LM_LICENSE_FILE=/cad/tensilica/license.dat
  6. PATH=${PATH}:${XTENSA_TOOLS_ROOT}/bin
  7. export LM_LICENSE_FILE XTENSA_TOOLS_ROOT XTENSA_ROOT XTENSA_SYSTEM XTENSA_CORE PATH
  8. export XTENSA_PREFER_LICENSE=XT-GENERIC
复制代码


4. 编译demo
source sdkenv.sh; make -C demo/sdk_shell
注意:需修改MAC地址为: 00:0c:29:01:02:03,如 ifconfig eth0 hw ether 00:0c:29:01:02:03

5. 复制配置文件,并用qonstruct工具生成可烧录bin文件
cp ./tool/tunable/tunable_input_sp24X_hostless_4bitflash.txt ./tool/tunable/tunable_input.txt
./tool/qonstruct.sh --qons ./tool/tunable/
在bin目录下生成烧录用bin文件:
raw_flashimage_AR401X_REV6_IOT_hostless_unidev_dualband.bin

呼,大功告成!

上一张编译成功后的图片。

 

现在可以将这个BIN文件用上面介绍的方法刷入到QCA4010中去了。

总结几点,要想在WIN10下成功使用开发板,注意以下几点:

1. 安装WINDOWS驱动时,先禁用驱动签名,然后再安装驱动
2. 将几个重要的文件兼容性模式指定为WINDOWS 7
3. 最好在UBUNTU X86下编译固件

接下来才是正式体验QCA4010的强大时候!

网友评论

登录后评论
0/500
评论
沧海一笑dj
+ 关注