新闻  |   论坛  |   博客  |   在线研讨会
XR-21A、XR-22AWiFi系列模组基于Linux开发环境搭建指导
机芯智能 | 2020-05-19 17:16:19    阅读:389   发布文章

1、前言

我司研发出的XR-21A、XR-22A WiFi模组深受到各位嵌入式开发爱好者的喜爱,本文主要介绍 XR-21A、XR-22A WiFi模组的开发环境搭建,编译以及烧录。
2、模组简介XR-21A、XR-22A WiFi模组核心处理器XR808在较小尺寸封装中集成了ARM Cortex-M4F微型控制器,支持从32KHz到160MHz的时钟速率,支持IEEE802.11 b/g/n模式,拥有较丰富的外设接口和GPIO数量,芯片集成较大的SRAM,并且支持XIP模式,具有多种低功耗工作模式,功耗远低于同类产品。丰富的硬件资源和易用的SDK可用于开发多种IOT产品。详情请戳docs.aimachip.com
3、Linux平台搭建Linux 环境:Ubuntu14.2 以上 + GCC第一步:安装好Linux和Ubuntu第二步:安装好Ubuntu后在以下****上下载GCC交叉编译器https://launchpad.net/gcc-arm-embedded/4.9/4.9-2015-q2-update/+download/gcc-arm-none-eabi-4_ 9-2015q2-20150609-linux.tar.bz2 第三步:将压缩包复制到在个人指定目录下,并解压在当前文件夹下
第四步:将交叉编译器添加到环境变量中A.在控制台输入 vim ~/.bashrcB.在跳出的文件中添加export PATH=”/编译器的实际路径/bin:$PATH”C.保存后退出执行 source ~/.bashrc 脚本,更新环境变量配置。

4、SDK下载SDK下载地址https://github.com/jixinintelligence/xradio-skylark-sdk
5、编译示例工程第一步:配置GCC路径修改xradio-skylark-sdk/gcc.mk 中的“CC_DIR”变量,将路径指向解压缩的gcc-arm-none-eabi-xxxxx/bin目录。CC_DIR = ~/tools/gcc-arm-none-eabi-4_9-2015q2/bin

第二步:选择工程 project/demo/hello_demo, 进入gcc目录,控制台输入指令make config 配置工程型号及时钟类型,配置界面如下:



第三步:控制台输入make build

正确打包完成后如下界面:

此时烧录固件保存在工程目录下的image文件夹下。在编译工程过程中使用下图标中的的命令即可

make config:命令主要配置工程平台芯片型号及板级晶振选型,目前主要包括XR872和XR808平台,配置完成后将在xradio-shylark-sdk目录下生产config文件。make build:构建库并将其复制到lib文件夹下,编译生成二进制文件,创建生成镜像文件。
make build_clean:删除make_build生成的镜像文件,删除make lib 生成的src中的文件,删除make lib 生成的lib中的库。
6、烧录固件烧录工具及工具库下载: phoenixMC_demo_release.zip(若该链接不可用,可在 sdk 源码的 tools 文件夹下找到烧录工具)烧录工具为 PhoenixMC,其功能为通过串口将指定的合法固件文件烧录到进入烧录 模式的目标主机中,其功能点包括串口设置,固件选择,升级确认,状态显示,固件信息等。第一步:先使用USB线将PC通过串口与设备相连

第二步:配置PhoenixMC 工具的设置,选择合适的波特率,选中对应的COM 口,选择要烧录的固件。

第三步:点击设置选项,写入后进行校验一定要打勾,ETF 测试固件用于测试 模组射频参数,如果有需要烧写 ETF 固件,勾选此项,同时会弹出对话框给用户选择所需的ETF 固件。

第四步:点击升级固件,如升级成功则在下方出现upgrade ok提示,当烧写失败时,进度条显示为红色并报告错误。

升级固件需要注意以下情况:A、没有烧录过固件的模组,一上电自动进入升级模式B、可以正常运行的模组,在串口控制台发送“upgrade”指令,收到“ok”,表示进入升级模式,或者按下复位键点击烧录工具的“升级固件”按钮,会自动发送“upgrade” 给模组,进入升级模式。C、以上两种情况都不行的情况下,先同时按下 PB2 PB3 按键,再按下 RST 键,接着松开 RST 键,再松开 PB2 PB3 按键,即可进入升级模式。
7. 运行程序结果显示先打开串口调试助手,点击模块上的复位键启动。系统启动10秒后,每隔10秒打印“Hello world! @ xxx sec”,运行效果如下图:     ~~~以上即是完成环境搭建以及例程编译演示!



*博客内容为网友个人发布,仅代表博主个人观点,如有侵权请联系工作人员删除。

参与讨论
登录后参与讨论
推荐文章
最近访客