本帖最后由 lingxin_yuhe 于 2022-8-9 17:23 编辑
前言:非常感谢EEWORLD信任,蓝牙处理器项目中用的是沁恒的,看到雅特力的AT32WB415处理器,果断申请来测试一番。但环境利用非工作时间弄,总是弄不好。我的想法:既然能用KEIL编译,板子上也有SWD,那直接KEIL中找到JLINK的SWD不就直接下载了,但尝试了各种依然download flash error。只能用AT-Link来下载,如何在线调试?
一、电脑上本就有KEIL5
1、安装AT32WB415的PACK包
有KEIL5软件,直接找到AT32WB415的PACK包,安装上就可以了。如图所示。
2、下载AT例程
将上图中的BSP中的Firmware Library也下载下来,里面是各种单片机demo,如下图所示。
3、编译工程
打开工程代码,如下图所示,安装上AT32WB415的PACK后打开led_toggle工程文件自动就配置好了,直接编译即可,先修改一下灯的延时,因板子上电运行demo就是这个led_toggle,为了验证是否下载成功需要修改时间。
- AT-Link下载
下载目前我这边测试用的AT-Link,下载官网的ICP,如图所示,第一个链接里面Tool下面就有ICP,里面包含了驱动和烧写软件。
- 安装ATLink驱动
把杀毒软件关了,用管理员打开Artery_ATLink_DriverInstall.exe,等一会就安装完成了。我的安装完成了如图所示。
- 下载程序
打开ArteryICPProgrammer.exe,找根Micro-USB数据线连接CN1 AT-Link口,点击连接,第一次需要升级AT-Link软件,直接确认接口,连接上之后会显示连接程序信息,处理器的信息等。
然后点击添加按钮,将刚刚编译好的led_toggle.hex文件,点击下载,会出现如下图所示界面,点击开始下载,出现弹窗确定,很快就下载完成了。
- MCU Reset重启程序
LED2灯亮起后1秒后亮起LED3,LED2亮起2秒,LED3亮起1秒后亮起LED4,LED2、LED3接着亮,LED4亮起1秒后关闭LED2,再过1秒LED2和LED3都灭,下一秒三个灯都灭,然后再开始循环,也就是从LED2开始亮,直到三个灯都亮,再从LED2开始灭,直到三个灯都灭,这样一直循环。
二、电脑上没有KEIL5
因编译蓝牙部分需要的软件,蓝牙程序是ARM9程序,需要安装ARM9的MDK软件。 下载地址:https://www2.keil.com/mdk5/legacy/
我下载下来安装,会将原有的MDK版本覆盖掉,打开ble工程编译有问题。如下图所示,然后我就各种找问题,说是没有对应的编译器。
新版本的MDK里面RAMCC都去掉了,需要自己下载Legacy Arm Compilers – Arm Developer我是没进去,提供网友的百度网盘下载地址:https://pan.baidu.com/s/1ND3vKLzqxanWVP304txRtQ ,提取码:idvc。我就按照他的方法安装后编译成功了。
接下来写一下步骤:
1、安装ARM Compiler
下载下来文件后双击,出现如图所示界面。
点击next,进入路径选择,点击browse,选择目录,一定要安装到KEIL的路径下面如图所示。
然后点击next安装软件,直到安装成功,如下图所示。
- 配置KEIL
打开manage project item,如图所示,切换至Folders/Extensions选项卡,点击添加ARM Compiler,选择刚刚我们安装的文件夹,返回来点击OK,就完成了。
- 编译ble
完美编译完成,我在测试过程中各种改,导致demo配置找不到路径,重新解压后就OK了。编译截图如下所示。
三、后面再烧录ble,环境基本OK。