801X 编译烧录说明


  • administrators

    编译环境搭建
    • 从Keil的网站下载并安装Keil v5.22或以上的版本
    • 从目录examples里面打开需要的例程. 例如, examples\ble_peripheral\ble_simple_peripheral\proj\ble_simple_peripheral.uvprojx是simple BLE Peripheral的例程.
    • 点击Project->Build Target来编译这个工程. 如果你想重新编译整个工程, 请点击Project->Rebuild all target files.
    • 固件ble_simple_peripheral.bin会在目录examples\ble_peripheral\ble_simple_peripheral\proj\Output里面生成
    烧录程序
    • 运行烧录工具,具体的位置是在tools\flash_programming\fr801x_flash_4MB.exe.
    • 这个烧录工具使用UART来烧录FLASH, Pin_PA2是RX,Pin_PA3是TX
    • 烧录工具的主要界面如下图所示:

    0_1557983152320_微信截图_20190516130531.png

    • 首先导入DAT文件,其实就是导入编译出来的二进制固件 * 选择开发板的COM口,波特率可以选择115200或57600。如果是使用官方的开发板,建议使用115200 * 点击按钮“打开”, 状态会变为“等待连接”,如下图:

    0_1557983201441_微信截图_20190516130626.png

    • 重启开发板,开发板上RESET按键, 状态会变为“已连接(flash)":
    • 点击按钮”写入所有内容“,当烧录完成后,会弹出一个对话框告知烧录结果
      SDK目录结构
      • drivers: 所有外部设备相关的API接口
      • examples: 例程工程文件以及相应的源代码
      • libs: FR801x BLE库文件
      • osal: 操作系统相关的API
      • stack: BLE协议栈相关的源代码,包括profile, 在应用程序和底层协议栈的适配代码等等。
      • tools: 上位机工具, 例如烧录工具以及KEIL调试脚本的补丁等等
      J-Link SWD 调试
      • 从SDK里面拷贝 tools\script\FR801X.FLM 到C:\Keil_v5\ARM\Flash
      • 打开需要的例程, 然后选择Options->Debug
      • 设置J-Link类型为J-LINK/J-TRACE, 再点击按键 "Settings"
      • 跳到"Flash Download", 再点击按键"Add" 去选择Algorithm "FR8010 512kB Flash"或"FR8010 256kB Flash"
      • Pin_PC6(SWCLK)和Pin_PC7(SWD)用来做调试接口
      串口调试
      和烧录工具一样, Pin_PA2(RX)和Pin_PA3(TX)用来做默认的打印调试串口.
      函数user_proj_main_before_ble_ini()
      这个函数是在BLE协议栈运行之前调用的. 通常用来设置BLE MAC地址或其它初始化的工作.
      函数user_proj_main()
      这是所有应用程序的入口函数. 开发者可以从这个函数开始来实现应用层代码,具体的请参考例程. 所有的例程都是基于这个函数来实现应用层代码。