今天记录一下,富芮坤物联网开发板的程序开发流程。
富芮坤物联网开发板的软件SDK基本开发框架是由多个不同不同组件组成。
l BLE5.0 协议栈和常见Profile
l BLE SIG Mesh 协议栈
l 多个中间件组件
l 非抢占式操作系统
l 保持链接睡眠和关机睡眠调用接口
l 多种外设驱动
l 调试函数和错误处理
l 系统常用辅助函数
SDK的keil工程项目目录树一般如下显示:
具体配置参阅《Fr801xH如何构建系统.pdf》文档。
使用 Fr801xH SDK 进行项目开发时,必须要定义了如下 3 个入口函数如下,入口函数一般需要定义在项目的 proj_main.c 里面。
下面分别介绍这 3 个入口函数。
l void user_custom_parameters(void)
该函数用于设置一些系统的重要参数,这些参数均保存于全局变量__jump_talbe 内。例如:蓝牙地址,bin文件的最大size,固件版本号,cup运行的频率,内部rtc时钟校准时间等。
该函数在bootloader 执行完毕,初始化程序开始运行之前被调用。
注意:这个入口函数不能调用任何组件函数,只能设置系统参数
l void user_entry_before_ble_init(void)
该入口函数一般用于配置外围设备,可以初始化外设驱动,但不可调用 ble5.0 协议栈和操作系统组件函数。
该函数在 lib 库初始化 ble5.0 协议栈之前被调用。
注意:这个入口函数只能调用外设驱动组件函数
l void user_entry_after_ble_init(void)
该函数是可以调用所有组件函数,包括 ble5.0 协议栈和操作系统组件函数。
注意:这个入口函数能调用所有组件的函数,包括自定义函数,但此处的自定义函数一般是初始化函数,只调用一次。