第一章:可穿戴设备概述

大家好,我是你们的嵌入式讲师。今天咱们聊聊可穿戴设备——这个听起来很酷,实际上也确实很酷的领域。

说实话,我第一次接触可穿戴设备是在2014年。那时候我还在做手机嵌入式开发,有个客户拿来一块智能手表的方案,问我能不能把Android系统塞进去。我当时的第一反应是:这玩意儿屏幕这么小,能干啥?后来我才发现,我错了。可穿戴设备的魅力,恰恰在于它不需要像手机那样无所不能。

什么是可穿戴设备?

可穿戴设备,说白了就是能穿在身上的智能电子设备。它不像手机那样需要你从口袋里掏出来,而是直接附着在你的身体上——手腕、头部、甚至衣服里。

我个人习惯把可穿戴设备分成三类:

  • 手腕上的:手表、手环,这是目前最主流的形态
  • 头上的:智能眼镜、AR/VR头盔
  • 身上的:智能服装、智能鞋、医疗贴片等

你想想看,为什么大家愿意戴这些东西?因为方便啊。抬手看时间、测心率、收通知,这些动作几乎不需要思考。我在项目中遇到过一位用户,他说自从戴了智能手表,再也没掏过手机看时间——这就是可穿戴设备的本质:让信息获取变得更自然

典型产品分类

智能手表

智能手表是目前功能最全的可穿戴设备。它本质上是一台微型计算机,有独立的操作系统(比如Wear OS、watchOS、RTOS),能装App、能联网、能打电话。

嗯,这里要注意:智能手表的功耗是个大坑。我刚开始做手表项目时,选了一颗性能很强的MCU,结果待机不到一天。后来才明白,可穿戴设备的第一优先级是续航,不是性能。

类型 代表产品 核心芯片 典型功耗
全功能智能手表 Apple Watch、Galaxy Watch ARM Cortex-A系列 100-300mW
轻量级手表 小米手表、Amazfit Cortex-M4/M7 10-50mW

智能手环

手环比手表更轻、更便宜、续航更长。它通常没有彩色大屏,只用LED点阵或小段LCD显示信息。功能也相对简单:计步、心率、睡眠监测。

我曾经做过一款手环,为了把功耗压到1mW以下,把蓝牙广播间隔从100ms改到了500ms。结果测试时发现,手机连上手环要等3秒才能同步数据——用户体验直接崩了。这就是典型的功耗与性能的博弈

智能眼镜

智能眼镜是另一个方向。它把信息投射到你的视野里,让你不用低头看屏幕。Google Glass是先行者,但说实话,那玩意儿太贵了,而且隐私问题一直没解决。

我个人觉得,智能眼镜的未来在工业领域。比如维修工人戴着眼镜看操作手册,或者仓库管理员扫码——这些场景下,眼镜比手表实用得多。

嵌入式系统在其中的角色

好,重点来了。可穿戴设备的核心是什么?是嵌入式系统。

你想想看,一块智能手表里有什么?

  • 一颗MCU或SoC(比如STM32、nRF52840、Apple S系列)
  • 传感器(加速度计、陀螺仪、心率传感器、气压计)
  • 无线模块(蓝牙、Wi-Fi、NFC)
  • 电池管理电路
  • 显示屏驱动

这些东西,全部靠嵌入式系统来协调。没有嵌入式系统,传感器就是一堆废铁,蓝牙就是一块塑料。

嵌入式系统在可穿戴设备中的三大核心任务:

  1. 数据采集:从传感器读取原始数据(比如加速度值、心率波形)
  2. 数据处理:在本地做滤波、特征提取、算法运算(比如计步算法)
  3. 通信交互:通过蓝牙把数据传给手机,或者接收手机指令

举个例子。我做过一个手环的计步功能,代码大概长这样:

// 加速度计数据读取(伪代码)
void step_detection() {
    int16_t x = read_accel_x();
    int16_t y = read_accel_y();
    int16_t z = read_accel_z();
    
    // 计算合加速度
    float magnitude = sqrt(x*x + y*y + z*z);
    
    // 简单阈值检测
    if (magnitude > STEP_THRESHOLD) {
        step_count++;
        // 去抖动处理
        delay(200);
    }
}

这段代码看着简单,但实际调起来很坑。我曾经在实验室里走了两万步,就为了调一个阈值参数。为什么?因为每个人的走路姿势不一样,步频不一样,甚至鞋子的软硬都会影响加速度波形。

避坑指南: 我曾经在计步算法里用了固定阈值,结果用户反馈说「我坐着抖腿也算步数」。后来改成了动态阈值+机器学习分类器,才把误检率降下来。所以,做可穿戴设备一定要考虑真实使用场景,别在实验室里想当然。

嵌入式系统的选型思路

选芯片是做可穿戴设备的第一步。我个人习惯按这个顺序来:

  1. 先定功耗预算:手环目标续航7天,那平均功耗就不能超过2mW
  2. 再定算力需求:要不要跑AI算法?要不要做FFT?
  3. 最后看外设:需要几个SPI?几个I2C?蓝牙版本?

举个例子,如果你只是做计步+心率,一颗nRF52840就够了。但如果你想做ECG心电图,那可能需要一颗Cortex-M4甚至M7,因为ECG算法对算力要求高。

警告: 别为了省钱选太弱的芯片。我见过一个团队选了Cortex-M0做心率监测,结果采样率上不去,心率数据全是噪声。最后不得不重新画板子,浪费了三个月。选芯片时,留出30%的算力余量是明智的。

总结一下

可穿戴设备不是手机的缩小版,它是一个全新的嵌入式应用领域。它的核心挑战是:在极小的体积和极低的功耗下,完成有用的功能

接下来的课程,我会带大家从零开始,一步步搭建一个可穿戴设备的嵌入式系统。你会学到:

  • 怎么选MCU和传感器
  • 怎么写低功耗代码
  • 怎么做蓝牙通信
  • 怎么处理传感器数据

嗯,准备好了吗?咱们开始吧。


公众号:蓝海资料掘金营,微信deep3321