如何在RT-ThreadSmart下使用NimBLE蓝牙协议栈

原创 RTThread物联网操作系统 2022-10-27 19:29

文中蓝字部分,请点击阅读原文查看。

本文主要介绍 NimBLE 软件包的在 RT-Thread Smart 下的使用

  • 目前官方使用 ART-Pi-Smart 评估板运行 RT-Thread Smart,此工程也是跑在 ART-Pi-Smart 开发板上。

  • 需要使用 ART-Pi-Smart 搭配 外部蓝牙 Controller 芯片使用。

  • 需要配置好 rt-thread smart 在 Windows 下的开发环境。


准备 RT-Thread Smart 开发环境


主要按照 ART-Pi-Smart 官方用户手册进行开发环境的搭建:

1、通过ART-Pi-Smart SDK 仓库 (Gitee)下载最新的 ART-Pi Smart SDK 软件包。

2、通过用户手册中相关章节下载一下 Windows 版本的 arm-linux-musleabi 工具链,将解压出来的 arm-linux-musleabi_for_i686-w64-mingw32 文件夹整个拷贝到 ./tools/gnu_gcc/ 下面,如图:

3、装一下 env 开发工具,这个不多说。

4、加载工具链,在 ART-Pi-Smart SDK 根目录下打开 env 工具,依次运行命令:

  • smart-env.bat - 设置当前环境变量

  • set RTT - 查看环境变量信息,检查交叉编译器路径是否成功添加

  • arm-linux-musleabi-gcc -v - 检查交叉编译器是否生效

结果应该显示如下:

注意:每一次重新打开 env 工具都需要通过运行 ART-Pi-Smart SDK 根目录下的 smart-env.bat 来设置当前环境变量,添加交叉编译器路径,否则编译会出错。

5、依据 USB方式启动 rt-smart 内核 章节,下载 100ask_imx6ull 烧写工具(由百问网提供)。

配置相关串口


需要使用串口来连接外部的蓝牙 Controller 芯片,这里我们使用 “uart3”

1、在设置好环境的 env 工具下进入 kernel\bsp\imx6ull-artpi-smart\ 路径,这个路径下工程就是为 ART-Pi-Smart 做的 bsp 工程,也是 ART-Pi-Smart 上的rt-smart 内核工程。

2、运行 menuconfig 命令后,选择进入 Platform Driver Configuration → Select UART Driver 目录下进行 UART 设备的使能,这里使能 uart3 。

保存退出,接着下面章节配置 NimBLE。

在内核 bsp 下配置使用 NimBLE


env 工具还是进入 kernel\bsp\imx6ull-artpi-smart\ 路径。

1、运行 menuconfig 命令后,进入 RT-Thread online packages → IoT - internet of things 目录即可看到 NimBLE 软件包,勾选软件包

2、将 NimBLE 下 Controller Configuration 里的配置关闭

在 RT-Thread Smart 上 NimBLE 不需要运行 Controller ,使用 蓝牙 Controller 芯片代替。

3、HCI Transport support 下配置 HCI uart 设备为 “uart2”(这里使用设备 uart2 正是对应之前 使能的 uart3,这里序号有出入和实际系统的设备管理有关,实际板上外设接口是 uart3 但是系统内核映射为 uart2 设备了)。

4、Bluetooth Samples 选择 “BLE peripheral heartrate sensor” ;Version 选择 “latest”。最后如下图所示:

目前支持以下几个例程:

  • BLE peripheral heartrate sensor

  • BLE peripheral cycling speed and cadence sensor

  • BLE central role sample

  • BLE peripheral role sample

  • BLE beacon sample

  • BLE advertiser sample

配置完成后保存。

编译 & 连接外部蓝牙芯片


1、在前面的 menuconfig 配置完成后,使用 pkgs --update 命令更新 NimBLE 软件包

1$ pkgs --update

2、运行 scons -c 清除之前的构建后,运行 scons 命令进行内核代码的编译。

3、编译成功后, kernel\bsp\imx6ull-artpi-smart\ 路径下会生成 rtthread.imx 文件。

4、把外部的蓝牙 Control 芯片连接好,注意 UART 的引脚,这里使用 nrf52840dk 连接 ART-Pi-Smart 的 UART3。务必在后面内核烧写的步骤前连接好 Control 芯片。关于蓝牙控制器选择可以参考 蓝牙控制器固件 (或 NimBLE 软件包目录下 /docs/firmwares/README.md)。


烧写内核 & 运行 NimBLE


windows 下烧写内核的过程,按照文档的相关章节(USB方式启动 rt-smart 内核);连好两根线后,应该可以用终端软件打开其中一根串口线。

1、配置 ART-Pi Smart 开发板进入到 USB 固件下载模式

操作方法:开发板上电之后,先按下 “BOOT 启动按键” 不松开,然后,再按下 “RST 复位键”,即可切换到 USB 固件下载模式

2、打开之前下载好的烧录工具 100ask_imx6ull_flashing_tool.exe,显示设备已连接即可。(显示未连接则重复 1 中的操作)

3、选择“专业版”,点击第一排“固件/裸机”按钮,选择刚刚编译出来的 rtthread.imx 文件(这里要注意绝对路径里面不要包含中文和空格)。然后点击 “运行” 按钮即可,等待内核下载完毕。如下图显示:

4、内核烧写完成后,不要按复位按钮,这时候观察终端,可以发现系统内核已经跑起来了(如下图)。

注意:如果按了复位按钮,bootloader 则会默认加载固化在 emmc 中的出厂内核镜像,就不是我们自己编译的了

5、在系统命令行 输入 ble_hr 命令,即可运行刚刚配置编译进内核的 NimBLE 软件包例程。

6、 使用 nRF Connect 手机 APP 即可成功观察到蓝牙设备,名称为 blehr_sensor :

点击连接后,在 CLIENT 下即可看到 Heart Rate 相关数据。

需要注意的地方


1、之前系统中 uart 设备编号与芯片 uart 接口编号不一致的问题:

menuconfig 中的 uart 配置和实际系统中 uart 对象名是不匹配的。实际使用时,系统中的 uart 序号应该减一。即 menuconfig 中的 uart1 对应 实际系统中的 uart0, menuconfig 中的 uart2 对应 实际系统中的 uart1。

2、一定要在 USB 烧写内核步骤之前连接好外部的蓝牙 Controller 芯片,否则烧写完成后自动加载内核会出现断言错误,因为对应串口没接好。这时如果使用复位按钮来重新加载内核,又会自动加载 emmc 中固化的出厂内核,就不是我们包含 NimBLE 的内核了。

3、针对 USB 烧写内核只能加载一次的问题,应该可以使用之前的烧写工具,将重新编译的内核固化到 emmc 中,这样就不用每次都重新烧写了。

————————————————

版权声明:本文为RT-Thread论坛用户「Leno_yan」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。

原文链接:

https://club.rt-thread.org/ask/article/aa4957e107e49ddf.html


END



爱我就给我点在看

点击阅读原文

RTThread物联网操作系统 帮助您了解RT-Thread相关的资讯.
评论 (0)
  • 随着电子元器件的快速发展,导致各种常见的贴片电阻元器件也越来越小,给我们分辨也就变得越来越难,下面就由smt贴片加工厂_安徽英特丽就来告诉大家如何分辨的SMT贴片元器件。先来看看贴片电感和贴片电容的区分:(1)看颜色(黑色)——一般黑色都是贴片电感。贴片电容只有勇于精密设备中的贴片钽电容才是黑色的,其他普通贴片电容基本都不是黑色的。(2)看型号标码——贴片电感以L开头,贴片电容以C开头。从外形是圆形初步判断应为电感,测量两端电阻为零点几欧,则为电感。(3)检测——贴片电感一般阻值小,更没有“充放
    贴片加工小安 2025-04-29 14:59 314浏览
  • 在CAN总线分析软件领域,当CANoe不再是唯一选择时,虹科PCAN-Explorer 6软件成为了一个有竞争力的解决方案。在现代工业控制和汽车领域,CAN总线分析软件的重要性不言而喻。随着技术的进步和市场需求的多样化,单一的解决方案已无法满足所有用户的需求。正是在这样的背景下,虹科PCAN-Explorer 6软件以其独特的模块化设计和灵活的功能扩展,为CAN总线分析领域带来了新的选择和可能性。本文将深入探讨虹科PCAN-Explorer 6软件如何以其创新的模块化插件策略,提供定制化的功能选
    虹科汽车智能互联 2025-04-28 16:00 231浏览
  • 网约车,真的“饱和”了?近日,网约车市场的 “饱和” 话题再度引发热议。多地陆续发布网约车风险预警,提醒从业者谨慎入局,这背后究竟隐藏着怎样的市场现状呢?从数据来看,网约车市场的“过剩”现象已愈发明显。以东莞为例,截至2024年12月底,全市网约车数量超过5.77万辆,考取网约车驾驶员证的人数更是超过13.48万人。随着司机数量的不断攀升,订单量却未能同步增长,导致单车日均接单量和营收双双下降。2024年下半年,东莞网约出租车单车日均订单量约10.5单,而单车日均营收也不容乐
    用户1742991715177 2025-04-29 18:28 286浏览
  • 浪潮之上:智能时代的觉醒    近日参加了一场课题的答辩,这是医疗人工智能揭榜挂帅的国家项目的地区考场,参与者众多,围绕着医疗健康的主题,八仙过海各显神通,百花齐放。   中国大地正在发生着激动人心的场景:深圳前海深港人工智能算力中心高速运转的液冷服务器,武汉马路上自动驾驶出租车穿行的智慧道路,机器人参与北京的马拉松竞赛。从中央到地方,人工智能相关政策和消息如雨后春笋般不断出台,数字中国的建设图景正在智能浪潮中徐徐展开,战略布局如同围棋
    广州铁金刚 2025-04-30 15:24 269浏览
  • 文/郭楚妤编辑/cc孙聪颖‍越来越多的企业开始蚕食动力电池市场,行业“去宁王化”态势逐渐明显。随着这种趋势的加强,打开新的市场对于宁德时代而言至关重要。“我们不希望被定义为电池的制造者,而是希望把自己称作新能源产业的开拓者。”4月21日,在宁德时代举行的“超级科技日”发布会上,宁德时代掌门人曾毓群如是说。随着宁德时代核心新品骁遥双核电池的发布,其搭载的“电电增程”技术也走进业界视野。除此之外,经过近3年试水,宁德时代在换电业务上重资加码。曾毓群认为换电是一个重资产、高投入、长周期的产业,涉及的利
    华尔街科技眼 2025-04-28 21:55 204浏览
  • 文/Leon编辑/cc孙聪颖‍2023年,厨电行业在相对平稳的市场环境中迎来温和复苏,看似为行业增长积蓄势能。带着对市场向好的预期,2024 年初,老板电器副董事长兼总经理任富佳为企业定下双位数增长目标。然而现实与预期相悖,过去一年,这家老牌厨电企业不仅未能达成业绩目标,曾提出的“三年再造一个老板电器”愿景,也因市场下行压力面临落空风险。作为“企二代”管理者,任富佳在掌舵企业穿越市场周期的过程中,正面临着前所未有的挑战。4月29日,老板电器(002508.SZ)发布了2024年年度报告及2025
    华尔街科技眼 2025-04-30 12:40 281浏览
  • 贞光科技代理品牌紫光国芯的车规级LPDDR4内存正成为智能驾驶舱的核心选择。在汽车电子国产化浪潮中,其产品以宽温域稳定工作能力、优异电磁兼容性和超长使用寿命赢得市场认可。紫光国芯不仅确保供应链安全可控,还提供专业本地技术支持。面向未来,紫光国芯正研发LPDDR5车规级产品,将以更高带宽、更低功耗支持汽车智能化发展。随着智能网联汽车的迅猛发展,智能驾驶舱作为人机交互的核心载体,对处理器和存储器的性能与可靠性提出了更高要求。在汽车电子国产化浪潮中,贞光科技代理品牌紫光国芯的车规级LPDDR4内存凭借
    贞光科技 2025-04-28 16:52 327浏览
  • 你是不是也有在公共场合被偷看手机或笔电的经验呢?科技时代下,不少现代人的各式机密数据都在手机、平板或是笔电等可携式的3C产品上处理,若是经常性地需要在公共场合使用,不管是工作上的机密文件,或是重要的个人信息等,民众都有防窃防盗意识,为了避免他人窥探内容,都会选择使用「防窥保护贴片」,以防止数据外泄。现今市面上「防窥保护贴」、「防窥片」、「屏幕防窥膜」等产品就是这种目的下产物 (以下简称防窥片)!防窥片功能与常见问题解析首先,防窥片最主要的功能就是用来防止他人窥视屏幕上的隐私信息,它是利用百叶窗的
    百佳泰测试实验室 2025-04-30 13:28 506浏览
  • 一、gao效冷却与控温机制‌1、‌冷媒流动设计‌采用低压液氮(或液氦)通过毛细管路导入蒸发器,蒸汽喷射至样品腔实现快速冷却,冷却效率高(室温至80K约20分钟,至4.2K约30分钟)。通过控温仪动态调节蒸发器加热功率,结合温度传感器(如PT100铂电阻或Cernox磁场不敏感传感器),实现±0.01K的高精度温度稳定性。2、‌宽温区覆盖与扩展性‌标准温区为80K-325K,通过降压选件可将下限延伸至65K(液氮模式)或4K(液氦模式)。可选配475K高温模块,满足材料在ji端温度下的性能测试需求
    锦正茂科技 2025-04-30 13:08 397浏览
  • 在智能硬件设备趋向微型化的背景下,语音芯片方案厂商针对小体积设备开发了多款超小型语音芯片方案,其中WTV系列和WT2003H系列凭借其QFN封装设计、高性能与高集成度,成为微型设备语音方案的理想选择。以下从封装特性、功能优势及典型应用场景三个方面进行详细介绍。一、超小体积封装:QFN技术的核心优势WTV系列与WT2003H系列均提供QFN封装(如QFN32,尺寸为4×4mm),这种封装形式具有以下特点:体积紧凑:QFN封装通过减少引脚间距和优化内部结构,显著缩小芯片体积,适用于智能门铃、穿戴设备
    广州唯创电子 2025-04-30 09:02 332浏览
我要评论
0
0
点击右上角,分享到朋友圈 我知道啦
请使用浏览器分享功能 我知道啦