【FR801xH】Ubuntu24.04搭建富芮坤FR801xH系列开发环境教程

发布于:2025-06-27 ⋅ 阅读:(18) ⋅ 点赞:(0)

00. 目录

01. FR801xH概述

在这里插入图片描述

FR801xH 系列芯片是面向 SOC(片上系统),易于 快速开发的低功耗蓝牙芯片。基于 Freqchip 的蓝牙 智能固件和协议栈的支持,完全兼容蓝牙 V5.3(LE 模式)协议。同时用户可以基于芯片内置的 ARM CorteM3 嵌入式 32 位高性能单片机开发各种应用程 序。

蓝牙智能固件包括 L2CAP 服务层协议、安全管理器 (SM)、属性协议(ATT)、通用属性配置文件 (GATT)和通用访问配置文件(GAP)。此外,还 支持应用程序配置文件,例如接近度、健康温度计、 心率、血压、血糖、人机界面设备(HID)和 SDK (包括驱动程序、OS-API 等)。SDK 还集成了用于 网络应用程序的 SIG Mesh 协议。

采用 Freqchip 的创新技术,将 PMU(锂电池充电 器+LDO)、带 XIP 模式的 QSPI FLASH ROM、 I2C、UART、GPIO、ADC、PWM 集成在一块芯 片中,为客户提供:

  • 竞争力的功耗
  • 稳定的蓝牙连接
  • 极低的 BOM 成本

02. FR801xH特性

CPU 和存储器

CPU

  • 内置 32 位 ARM Cortex-M3 内核,支 持最高 48MHz 的时钟频率

存储器

  • 256KB/512KB/1MB Flash 用户软件和数据存储
  • 48KB SRAM
  • 128KB ROM
  • BOOT 启动代码
  • 控制器(controller)协议栈

ROM 固件

  • BLE Profile & Protocol: GATT, LM, LC

  • API 驱动

  • SIG MESH 协议栈

蓝牙

  • 蓝牙 V5.3 LE 标准

  • 支持 2M/1M/500K/125K 数据速率

数字接口

  • 通用 GPIO

  • Timer

  • Efuse 128bit

  • SPIM

  • SPIS

  • UART(FIFO 深度 16/32)

  • SPI/QSPI

  • I2C (FIFO 深度 8/32)

  • PWM

  • PDM

03. gcc-arm-none-eabi-10.3-2021.10概述

gcc-arm-none-eabi-10.3-2021.10-x86_64-linuxARM 官方维护的嵌入式专用工具链,适用于无操作系统的 Cortex-M/R 开发。其优势在于:
✅ 开源免费,兼容主流裸机场景;
✅ 集成 newlib 库,资源占用低;
✅ 支持 GCC 10.3 的现代优化特性(如 LTO 压缩)。

启用硬件浮点(如 Cortex-M4F):编译参数添加 -mfloat-abi=hard -mfpu=fpv4-sp-d16

在这里插入图片描述

工具链对比

特性 gcc-arm-none-eabi arm-linux-gnueabi armcc
适用系统 裸机/RTOS Linux 应用层 裸机/RTOS(Keil/ADS)
C 库 newlib(轻量级) glibc(完整功能) 专用库(闭源)
浮点处理 默认 softfp(兼容 soft/hard)10 可选 softfphard9****10 依赖芯片 FPU 配置
许可证 开源(GPL) 开源(GPL) 商业收费

04. gcc-arm-none-eabi-10.3-2021.10下载

下载:gcc-arm-none-eabi-10.3-2021.10-x86_64-linux.rar

下载:gcc-arm-none-eabi-10.3-2021.10-aarch64-linux.tar.bz2

下载:gcc-arm-none-eabi-10.3-2021.10-src.tar.bz2

05. gcc-arm-none-eabi-10.3-2021.10安装

5.1 解压

deng@local:~$ tar -xjvf gcc-arm-none-eabi-10.3-2021.10-x86_64-linux.tar.bz2

5.2 剪切到/var/opt目录下

deng@local:~$ sudo mv gcc-arm-none-eabi-10.3-2021.10 /var/opt/

06. FR801xH-SDK编译

6.1 解压FR801xH-SDK-master.zip

deng@local:~$ unzip FR801xH-SDK-master.zip

6.2 进入到FR801xH-SDK-master/components/toolchain/gcc目录中

deng@local:~/FR801xH-SDK-master/components/toolchain/gcc$ pwd
/home/deng/FR801xH-SDK-master/components/toolchain/gcc
deng@local:~/FR801xH-SDK-master/components/toolchain/gcc$

6.3 修改Makefile.posix文件

deng@local:~/FR801xH-SDK-master/components/toolchain/gcc$ vim Makefile.posix

6.4 修改Makefile.posix文件交叉编译器路径,内容如下

#GNU_INSTALL_ROOT ?= /usr/local/gcc-arm-none-eabi-6-2016-q4-update/bin/
GNU_INSTALL_ROOT ?= /var/opt/gcc-arm-none-eabi-10.3-2021.10/bin/
GNU_VERSION ?= 6.2.1
GNU_PREFIX ?= arm-none-eabi

6.5 切换到examples/none_evm/ble_simple_peripheral/gcc目录中

deng@local:~/FR801xH-SDK-master/examples/none_evm/ble_simple_peripheral/gcc$ pwd
/home/deng/FR801xH-SDK-master/examples/none_evm/ble_simple_peripheral/gcc
deng@local:~/FR801xH-SDK-master/examples/none_evm/ble_simple_peripheral/gcc$ ls
ldscript.ld  Makefile

6.6 编译ble_simple_peripheral案例

deng@local:~/FR801xH-SDK-master/examples/none_evm/ble_simple_peripheral/gcc$ pwd
/home/deng/FR801xH-SDK-master/examples/none_evm/ble_simple_peripheral/gcc
deng@local:~/FR801xH-SDK-master/examples/none_evm/ble_simple_peripheral/gcc$ make
mkdir build
cd build && mkdir ble_simple_peripheral
Compiling: ../code/proj_main.c
Compiling: ../code/ble_simple_peripheral.c
Compiling: ../code/user_task.c
Compiling: ../../../../components/modules/button/button.c
Compiling: ../../../../components/ble/profiles/ble_simple_profile/simple_gatt_service.c
Compiling: ../../../../components/driver/driver_iic.c
Compiling: ../../../../components/driver/driver_pmu.c
Compiling: ../../../../components/driver/driver_keyscan.c
Compiling: ../../../../components/driver/driver_pmu_qdec.c
Compiling: ../../../../components/driver/driver_rtc.c
Compiling: ../../../../components/driver/driver_uart.c
Compiling: ../../../../components/driver/driver_wdt.c
Compiling: ../../../../components/driver/driver_i2s.c
Compiling: ../../../../components/driver/driver_exti.c
Compiling: ../../../../components/driver/driver_timer.c
Compiling: ../../../../components/driver/driver_efuse.c
Compiling: ../../../../components/modules/platform/source/exception_handlers.c
Compiling: ../../../../components/modules/platform/source/app_boot_vectors.c
Compiling: ../../../../components/modules/patch/patch.c
   text    data     bss     dec     hex filename
 100552    1660    3520  105732   19d04 build/ble_simple_peripheral.out
Generate: build/ble_simple_peripheral.bin
Generate: build/ble_simple_peripheral.txt
DONE ble_simple_peripheral
deng@local:~/FR801xH-SDK-master/examples/none_evm/ble_simple_peripheral/gcc$


6.7 编译结果

编译生成的bin文件就在当前目录中build/ble_simple_peripheral.bin。

07. 附录

SDK下载:FR801xH-SDK-master.zip

gitee下载:FR801xH-SDK-master.zip


网站公告

今日签到

点亮在社区的每一天
去签到