1. 开发工具准备
需要安装的软件
- Sifli env 和 SiFli SDK (从微盘下载)。
- Keil V5.32或以上, armcc V6 版本或以上。
- Segger Jlink,V6.80a版本或以上。 Jlink下载地址
- 代码编辑软件 vscode或者source insight。
- 串口日志查看工具,使用sdk自带的sifliTrace或者sscom。
需要的硬件
- Windows PC * 1
- ARM仿真器 * 1
- Note
- 仿真器的供电和HDK板有冲突,需要关闭仿真器的供电。如果出现仿真器连接不成功,可以检查一下Jlink的供电硬件跳线。 下图是常见Jlink的供电跳线,需要移除。
- USB type-C 线 * 2
用于链接ARM仿真器和连接USB2UART小板给HDK板子供电,抓取HDK串口的LOG数据。
- USB2UART debug小板 * 1 (SIFLI-Debug001-V1.1.0)
USB2UART debug小板一览图
- HDK开发板 * 1套
包含一个HDK CPU板子SF56X或者SF52X,以及屏幕子板(屏幕不同,相应的子板型号不一样)。
HDK52x 开发板接口一览图
HDK56x 开发板接口一览图
屏幕子板接口一览图
2. 开发环境配置
ENV的配置
- 解压env到PC上,如 D:\work\env 。
- 进入 env 目录,可以运行本目录下的 env.exe,如果打开失败可以尝试使用 env.bat。
- 关联文件夹右键”ConEmu Here”菜单。
添加ConEmu Here到右键菜单
任意文件夹右键可打开ConEmu Here
安装Keil
双击Keil安装包,按照提示点击下一步进行安装,需要注意的是keil的安装路径必须是C:\Keil_v5目录。启动Keil,打开Help->>About窗口, 如果显示的版本不是v5.32则需要卸载并安装新版Keil。
安装完Keil后将arm的路径加入Windows环境变量PATH,如:C:\Keil_v5\ARM\ARMCLANG\bin。
安装JLink
Jlink需要安装新版v6.80a,双击安装包JLink_Windows_V680a.exe,安装路径选择默认路径,将JLink的路径加入Windows环境变量PATH, 如:C:\Program Files (x86)\SEGGER\JLink。 将SDK tools\flash\jlink_drv\sf32lbxx目录下的所有elf文件都拷贝到JLink安装目录下的Devices\SiFli目录中,SiFli目录要手动创建, 拷贝完成后如下图所示。
添加jlink驱动到Jlink安装目录
将jlink_drv目录下JLinkDevices.xml中有关SiFli的内容合并到JLink安装目录下的JlinkDevices.xml中。
修改JlinkDevice文件
配置系统环境变量
在系统环境变量的PATH变量中添加如图几个路径,实际路径需要本机工具与代码路径一致。
添加环境变量PATH
3. 编译工程代码
SF52X工程代码编译
以hal_example下面的sf525工程为例编译步骤如下:
- 进入sdk根目录,鼠标右键选择ConEmu Here”菜单。
- 执行脚本 .\set_env.bat,配置环境。
- 进入到编译目录下:cd example\hal_example\project\common
- 执行编译命令 :scons –board=eh-lb525_v2_hcpu -j8
- Note
- –board= xx, 需要指定编译的board信息,可以选择目录customer\boards下带v2的目录名对应的board,后面再加上_hcpu,如eh-lb525_v2_hcpu。 编译结束后会在common目录下生成文件夹build_eh-lb525_v2_hcpu,存放编译生成的image等文件。
sf525工程编译成功
SF56X工程代码编译
以hal_example下面的sf561工程为例编译步骤如下:
- 进入sdk根目录,鼠标右键选择ConEmu Here”菜单。
- 执行脚本 .\set_env.bat,配置环境。
- 进入到编译目录下:cd example\hal_example\project\common
- 执行编译命令 :scons –board=eh-lb561_v2_hcpu -j8
- Note
- –board= xx, 需要指定编译的board信息,可以选择目录customer\boards下带v2的目录名对应的board,后面再加上_hcpu,如eh-lb561_v2_hcpu。 编译结束后会在common目录下生成文件夹build_eh-lb561_v2_hcpu,存放编译生成的image等文件。
sf561工程编译成功
4,下载烧写HDK
SF52X工程image下载烧写
sf525使用的是uart接口下载镜像,将HDK板子连接siflideubg小板,再将siflideubg小板使用typec线连接电脑,需要先确认一下HCPU的日志输出的com口,比如为COM4。
- 串口日志工具关闭串口。
- 在编译目录下运行下载脚本 .\build_eh-lb525_v2_hcpu\uart_download.bat。
- 此时会让输入下载使用的COM口, 输入4。按enter键,下载开始。
sf525下载image
SF561工程image下载烧写
sf561使用的是JLink下载镜像,将HDK板子连接siflideubg小板,将siflideubg小板使用typec线连接电脑用于串口打印日志,再将ARM仿真器通过JLink排线连接到siflideubg小板上, ARM仿真器的另一端使用typec连接到电脑。
- 使用J-Link Commander发送connect命令确认开发板是否能连接成功。
- Note
- connect时选择的Device名与工程目录下rtconfig.py中的JLINK_DEVICE保持一致,比如sf561选择SF32LB56X。选择完device后会选择interface(SWD), 接下来配置传输速率,默认即可。可以看到连接成功。
sf561连接JLink
- 在编译目录下运行下载脚本 .\build_eh-lb561_v2_hcpu\download.bat,开始启动JLink下载。
sf561下载image