资料介绍
描述
背景
在开始之前先解释一下这个项目是如何产生的很重要。当我申请免费硬件时,我并没有过多考虑这个想法。那时我已经向三个不同的比赛提交了六个好的项目,赢得了零奖。我也在等待我提交了两个项目的最新竞赛的结果。因此,我对Advanced Wearables竞赛的想法与我刚刚建立的一样,即智能血压计 (SBPM)。
尽管我尽最大努力被拒绝,Nordic Semiconductor还是好心地给了我一个免费的硬件包。当我收到我的硬件时,我非常兴奋,因为我会学到很多新东西;但是,我不会再构建另一个 SBPM。
“为什么不是 SBPM?”,您可能会问。实际上有几个原因:
- 我不喜欢 Makers 不断重做他们相同的旧项目而几乎没有改进。
- 老实说,我认为低功耗蓝牙 (BLE) 不会为 SBPM 实施增加太多价值。
- 在查看了为免费硬件提交的想法后,我发现了几个 SBPM。所以,现在我确定我不会建造什么。
- 最后但并非最不重要的一点是,我想我有一个更好的主意
除了竞赛规则外,我们还将在这个项目中承诺额外的标准。首先,nRF5340DK 不会被简单的智能手机应用程序替代。此外,nRF5340DK 不会在功能上变得多余;就像在另一个 MCU 上使用它一样。
介绍
当我在 Google 中建立 AVR-IoT WG: Out for Blood Pressure Monitoring 时,它本来是要成为 The Silent Killer(高血压或高血压)的杀手。这个项目将是The Silent Killer的杀手锏。
你看,不是事后检查血压,我们需要一种从一开始就防止高血压发生的设备。SBPM是一种测量读数装置;我们将建造一个设备,以促进更上游的预防措施。
根据梅奥诊所:
运动是降低高血压的无药物方法
记住那个无毒的东西,它会再次出现。国家医学图书馆补充说:
定期跑步会降低 RBP
帮助我在 14 年后戒烟并降低血压和心率的一件事就是开始跑步。为了跑得更多,我使用了几种方法来减少恢复时间,直到我的教练推荐了一种称为 TENS 或经皮神经电刺激的无药物(见?告诉你!)方法。

据今日医学新闻报道:
TENS 装置的工作原理是通过带有粘性垫的电极传递小的电脉冲,将它们附着在人的皮肤上。这些电脉冲充斥着神经系统,降低了其将疼痛信号传输到脊髓和大脑的能力。同样的电脉冲也刺激身体产生称为内啡肽的天然止痛药。
顺便说一句,我想象中的法律团队建议我给出以下免责声明:
此处所做的声明尚未经过食品和药物管理局的评估。本产品不用于诊断、治疗、治愈或预防任何疾病。
我不是医生,我什至从来没有在电视上玩过。我还应该提到,与现实的任何相似之处纯属巧合。
我们都放弃了,让我们开始吧。
比赛计划
该项目的主要目的不仅是控制 TENS 单元,还记录用于进一步分析的设置,以确定哪种电脉冲模式最适合每块肌肉。正如彼得·德鲁克曾经说过的:
如果你不能衡量它,你就无法改进它。
与我之前的项目不同,我们不会使用 UART 与 TENS 单元进行通信;我们将使用 GPIO 来模拟按钮按下。每 10 秒 nRF5340DK 会将当前设置发送到 nRF52840 加密狗,后者将通过 UART 将信息中继到 WeMos D1 Mini。最后,信息将通过 Wi-Fi 发送到 Google 表格。
nRF5340DK + Adafruit 2.8" TFT Touch Shield for Arduino w/Capacitive Touch Display

该节目的明星是 nRF5340DK,它已使用随 nRF Connect SDK 安装提供的 Segger Embedded Studio (SES) 进行编程。显示器很好地安装在板上,但为了让它工作,我们必须应用补丁。更多详情请参阅 Hung Bui 的网络研讨会。
一旦我们确定ncs-display-ble-example工作,我们可以修改它以适应我们的项目。我们可以在这个项目中保留LED Button Service (LBS)代码,但我们需要Nordic UART Service (NUS)通过 BLE 发送文本。
将 nRF5340DK 插入计算机将使其显示为驱动器。我们可以在该驱动器上拖动N-TENS.hex来加载我们的代码。我们还可以按照几个简单的步骤从 GitHub 中的源代码构建项目。首先,我们需要以下结构来重新创建这个项目:

文件和文件夹捆绑在N-TENS.zip中。接下来,打开工具链管理器。

文件 > 打开 nRF Connect SDK 项目...

选择项目和董事会名称。

按住 Ctrl 按钮,然后按下并释放 T,然后按下并释放 F5。

我们的项目现在已加载到 nRF5340DK 上。

十

我们最终使用的装置有 10 个速度等级、10 个功率等级和 8 种模式。所有这些以及仅通过 4 个按钮控制的开/关功能。该单元还有一个 15 分钟会话的倒数计时器。

我们使用了引脚 P0.28、P0.29、P0.30 和 P0.31,因为它们已经配置为输出 (LED):
C:\ncs\v1.5.0\zephyr\boards\arm\nrf5340dk_nrf5340\nrf5340_cpuapp_common.dts
在同一个文件中,我们还使用 P0.09(按钮 4)通过 2N2222A 晶体管将信号发送到蜂鸣器进行放大。这样做是为了在触摸屏幕时向用户提供声音反馈。
我们将使用专用滑块来独立控制速度和功率级别,而不是共享功能按钮。您可能已经注意到,滑块是北欧标志和阴阳融合的抽象。显示尺寸为 320 X 240,我们必须规划滑块、按钮和文本的位置。

左滑块将始终控制速度级别,而右滑块将始终控制功率级别。因此,用户不必跟踪 TENS 单元显示屏上未显示的 S/P 按钮。至于模式按钮,我们注意到 8 种模式中的大多数都有相同的节奏。无论如何,即使描述相同,我们也给每种模式一个独特的字母,以防它们对肌肉的影响不同。可以通过按下两个滑块之间的按钮来更改模式。就是这样,两个滑块,一个按钮,顶部的文本显示广告名称和 BLE 连接状态,底部的文本显示设备运行了多长时间。
喜欢这个案子?在将其设为蓝色后从以前的项目升级。
右侧的小窗口仅用于演示验证。最终产品应该只有具有所有控制和信息的触摸屏。
nRF52840 加密狗
根据比赛规则:
nRF52840 Dongle 是捆绑中包含的补充设备,不需要在项目中使用。
话虽如此,我非常感谢Nordic Semiconductor将它包含在捆绑包中。我开始使用 SES 并使用 nRF Connect Programmer 编写生成的 HEX 文件,然后我切换到 CircuitPython。我知道它运行起来有点慢,但开发和加载速度更快。
rdagger68有一个很棒的视频,让我们开始在 nRF52840 加密狗上使用 CircuitPython。在他开始编写代码之前,该教程中的一切都很顺利。我花了一段时间才弄清楚这一点,但 CircuitPython 相对年轻(8 岁以上),过去几年几乎没有什么变化。例如,您会看到我必须在代码中为 UART 使用“adafruit_ble.services.nordic”,而不是“adafruit_ble.uart”。尽管如此,我们在 nRF52840 Dongle 上使用 CircuitPython 比在任何其他板上都更成功。

由于 nRF52840 Dongle 提供了选择引脚的灵活性,我在一侧焊接了 8 个相邻引脚,仅包括 VBUS 和 GND(P0.02 和 VDD OUT 未连接)。

用 Mu 编写代码非常简单。但是,我们并不真正需要它。我们可以使用任何推荐的文本编辑器并将文件保存为 code.py 在CIRCUITPY Drive上。

请注意,CircuitPython 会不断在板上查找更新的代码文件以运行。有四个选项:code.txt、code.py、main.txt 和 main.py。CircuitPython 按顺序查找这些文件,然后运行它找到的第一个文件。

正如您在上面的屏幕截图中看到的那样,code.py 并不是唯一需要在 nRF52840 加密狗上复制的文件。CIRCUITPY.zip包含需要复制的所有文件和文件夹。
WeMos D1 Mini & OLED 显示屏

什么是方形的,蓝色的,闻起来像超级胶水?

如果您猜到了牙线盒中的 WeMos D1 Mini 和 OLED 显示屏,那么您是对的。否则,您可以再试一次。

它们之间没有直接连接,但它们都连接到 nRF52840 Dongle。我们必须使它们可分离,因为 WeMos D1 Mini 在闪烁时不喜欢 Tx 和 Rx 引脚上的任何东西。说到 WeMos D1 Mini,我们使用 Arduino IDE 来利用最好的 Wi-Fi 库之一 WiFiManager 。
为简单起见,WeMos D1 Mini 将连接到 Wi-Fi,然后等待来自 nRF52840 加密狗的呼叫。完成后,WeMos D1 Mini 将进入一个循环,通过 Wi-Fi 发送从 nRF52840 Dongle 接收到的任何 UART 数据。

OLED 灯没有为显示屏打开开口,而是穿过牙线盒一侧,使设置看起来更优雅。
谷歌表格

我们创建了 Google Sheet 来保存我们的数据并记下

我们在 Google Apps 脚本中使用了相同的

来自 nRF5340DK 的数据将保存在第一列,而第二列保存时间戳。

第一列中的每个单元格将包含 8 个字母数字字符。前三个数字是以秒为单位的经过时间,接下来的两个是速度级别,唯一的字母是模式,最后两个数字是功率级别。

如果速度级别、模式和功率级别与之前的单元格相同,则新记录将被删除,这意味着我们将仅保留包含新设置值的记录。为了表示会话结束,最后一条记录将始终为 900,即 15 分钟内的秒数。
有一个应用程序

Google Apps 脚本期待带有有效负载 {"report":"PlaceHolder"} 的 HTTPS 发布,无论它来自 nRF52840 Dongle + WeMos D1 Mini 还是应用程序都没有关系。

nRF5340DK 的主要功能不能用应用程序代替,因为它正在控制 TENS 单元并发送数据。另一方面,我们可以将 nRF52840 Dongle + WeMos D1 Mini 替换为任何具有 BLE 和 Wi-Fi 功能的智能设备上的应用程序。最简单的方法是使用MIT App Inventor ,它已在我之前的一个项目中介绍过。

请注意,应用程序使用名称而不是 MAC(松散耦合)连接到 N-TENS。
保持真实

在制作这个项目的过程中,我们确实面临着问题、机遇、挑战和宝贵的学习经验。与 Wally 不同的是,我们必须克服它们。值得庆幸的是,没有一个与 nRF5340DK 相关,因为它非常强大。第一个原因是另一个更昂贵的 TENS 单元,也有 4 个按钮,但没有显示。与 nRF5340DK 不同,TENS 单元没有短路保护。第二个因果关系是一个与我们最终在这里使用的类似的 TENS 单位。

只要 nRF5340DK 继续前进,就无法停止挑战极限并尝试新事物。我渴望有一天能像Torbjørn Øvrebekk那样编写代码。在那之前,我会以这样的项目为契机,向我们展示我们大多数人不会只是从床上爬起来,拼凑一些软件和硬件来构建一个项目。
结论
我希望你和我在构建这个项目时一样开心。这是功能强大的 nRF5340DK 的成功简单实施。开发板和 nRF Connect SDK 并不难使用,大部分项目工作都需要在外部完成。我通常为收到的每个硬件构建多个项目,但由于时间限制,我只用 nRF5340DK 构建了一个大项目。尽管如此,我还是学到了很多关于 BLE、Zephyr、CircuitPython 和其他有用技术的知识。
演示
这是获得 BONUS 所需的一分钟演示视频 - 15 分:
- 血压计解决方案应用笔记
- 基于电子血压计的USB接口设计
- 基于51单片机的血压计电路图 34次下载
- 4765_64pin_血压计参考原理图2022
- BLE实验详解之蓝牙血压计设计方案 39次下载
- 采用LM3S1138设计示波法测量血压的血压计的详细资料概述 60次下载
- MSP430便携型电子血压计设计方案解析 17次下载
- Toshiba 血压计解决方案 34次下载
- ADI ADXL345血压计解决方案 54次下载
- 手臂式电子血压计 0次下载
- 基于STM32设计的血压计电路图 184次下载
- 总后血压计电原理图 53次下载
- Maxim医疗血压计解决方案(英文) 76次下载
- 便携式电子血压计连续动态监测方案
- 无线传输血压计的制作过程
- WT2606A-4G 智能血压计解决方案,为工程效率而生,强大的双模语音交互能力,功能模块化集成,产品快速落地 737次阅读
- 智能血压计WT2801芯片方案-BLE 5.0无线传输/高保真语音交互/LED显示驱动/低功耗待机-四大技术赋能 972次阅读
- 基于STM32单片机的血压计系统设计 3.5k次阅读
- 技术干货|基于SD9315设计的血压计方案 3.6k次阅读
- 携带式电子血压计单单靠一个嵌入式就足够了吗 2.4k次阅读
- 电子血压计的组成应用及常见故障分析 6.5w次阅读
- 如何选购一台适合的血压计呢? 5.4k次阅读
- 电子血压计维修怎么弄? 3.1w次阅读
- 自制简易电子血压计电路图 2.2w次阅读
- 基于MCU BH66F2232系列血压计,搭配多样弹性化的通讯接口,实现血压计的需求 1.8k次阅读
- Holtek新推出血压计Flash MCU BH67F2261,可满足独立型血压计的需求 3.3k次阅读
- 基于可编程片上系统的智能电子血压计设计介绍 2.2k次阅读
- 基于硅压式传感器MPX53GC和单片机的便携式电子血压计电路设计 1.9k次阅读
- 可穿戴电子血压计传感器电路设计—电路精选(36) 5.7k次阅读
- 常见家庭用医疗装置电子血压计的设计要点解析 3.9k次阅读
下载排行
本周
- 1矽力杰 Silergy SY7215A 同步升压调节器 规格书 Datasheet 佰祥电子
- 1.12 MB | 5次下载 | 免费
- 2HT81696H 内置升压的30W立体声D类音频功放数据手册
- 1.21 MB | 1次下载 | 免费
- 3HTA6863 3W超低噪声超低功耗单声道D类音频功率放大器数据手册
- 0.87 MB | 次下载 | 免费
- 4南芯 Southchip SC8802C 充电控制器 规格书 Datasheet 佰祥电子
- 88.16 KB | 次下载 | 免费
- 5矽力杰 Silergy SY7065 同步升压转换器 规格书 Datasheet 佰祥电子
- 910.67 KB | 次下载 | 免费
- 6矽力杰 Silergy SY7066 同步升压转换器 规格书 Datasheet 佰祥电子
- 989.14 KB | 次下载 | 免费
- 7WD6208A产品规格书
- 631.24 KB | 次下载 | 免费
- 8NB685 26 V,12 A,低静态电流,大电流 同步降压变换器数据手册
- 1.64 MB | 次下载 | 2 积分
本月
- 1EMC PCB设计总结
- 0.33 MB | 12次下载 | 免费
- 2PD取电芯片 ECP5702规格书
- 0.88 MB | 5次下载 | 免费
- 3矽力杰 Silergy SY7215A 同步升压调节器 规格书 Datasheet 佰祥电子
- 1.12 MB | 5次下载 | 免费
- 4氮化镓GaN FET/GaN HEMT 功率驱动电路选型表
- 0.10 MB | 3次下载 | 免费
- 5PD取电芯片,可取5/9/12/15/20V电压ECP5702数据手册
- 0.88 MB | 3次下载 | 免费
- 6SY50655 用于高输入电压应用的伪固定频率SSR反激式稳压器英文资料
- 1.01 MB | 3次下载 | 免费
- 7怎么为半导体测试仪选择精密放大器
- 0.65 MB | 2次下载 | 免费
- 8SY52341 次级侧同步整流英文手册
- 0.94 MB | 2次下载 | 免费
总榜
- 1matlab软件下载入口
- 未知 | 935137次下载 | 10 积分
- 2开源硬件-PMP21529.1-4 开关降压/升压双向直流/直流转换器 PCB layout 设计
- 1.48MB | 420064次下载 | 10 积分
- 3Altium DXP2002下载入口
- 未知 | 233095次下载 | 10 积分
- 4电路仿真软件multisim 10.0免费下载
- 340992 | 191469次下载 | 10 积分
- 5十天学会AVR单片机与C语言视频教程 下载
- 158M | 183360次下载 | 10 积分
- 6labview8.5下载
- 未知 | 81606次下载 | 10 积分
- 7Keil工具MDK-Arm免费下载
- 0.02 MB | 73832次下载 | 10 积分
- 8LabVIEW 8.6下载
- 未知 | 65991次下载 | 10 积分
电子发烧友App





创作
发文章
发帖
提问
发资料
发视频
上传资料赚积分
评论