【物联网】QCA4010开发环境搭建(二)(解决WIN10下不能驱动问题)
发布日期:2021-06-29 20:56:37 浏览次数:2 分类:技术文章

本文共 3320 字,大约阅读时间需要 11 分钟。

更多资料,请参考:中电港论坛 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工具的最新版,

解压缩,得到如下目录结构


├─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,会发现加载成功。如下图


 


下载测试用的固件文件, 
 
 (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的强大时候!

转载地址:https://dengjin.blog.csdn.net/article/details/50546575 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:【物联网】OpenWrt编译出现Unable to find remote helper for 'https'问题
下一篇:【ARM】Uboot代码分析

发表评论

最新留言

很好
[***.229.124.182]2024年04月16日 07时57分32秒