巧手将AirPod变成具有FM功能的耳机
在本系列的前面,使用触摸显示器创建了紧凑型 FM 收音机。从那时起,设计继续推进,将 FM 收音机集成到耳塞中——尽管该版本有一个局限性:每次需要更改频道时都必须重新编程耳塞。现在,设计之旅继续推出完全独立的 FM 耳塞,不再依赖外部 MCU 来选择频道或其他功能。
在此版本中,MCU 和用户界面都完全内置于耳塞本身中。图 1 显示了早期的原型、各个组件的比较(放置在种子旁边以进行缩放)和最终的表面贴装 PCB。
图1:上期作者的原型
这是迄今为止该系列中最小的工作系统。也就是说,它确实需要表面贴装焊接经验。紧凑的 MCU 和单开关接口允许用户切换 FM 频道(向上/向下)和调节音量。该设计足够紧凑,可以放入耳塞中,但电池容量仍然有限,限制了延长的聆听时间。通过一些重新配置,可以修改耳塞腔以容纳更大的电池。
为了获得更好的接收效果,还可以将外部天线或 SMD 天线集成到系统中。在当前版本中,耳塞内部使用了一个简单的线圈来充当天线,避免了对外部组件的需求,同时保持了超紧凑的设计。
物料清单
组件选择至关重要,因为整个 FM 收音机必须适合耳塞内。需要超紧凑的部件,其中 MCU 和 FM 模块是关键。与早期设计一样,使用了 RDA5807 FM 模块,这是目前最小的模块之一。它通过 I2C 进行通信,允许频道更改、音量控制和电台扫描,所有这些都通过 MCU 进行管理。
物料清单 | ||||
名字 | 指示器 | 脚印 | 数量 | 制造商零件 |
2针垫-SMD | J1、J2 | 2针垫-SMD | 2 | SMD焊盘 |
型号:HDK-100832-011 | 议长 | 议长 | 1 | 型号:HDK-100832-011 |
SPST滑动开关 | SW1 | SMD-7P,5×1.4毫米 | 1 | 型号:SS-205-AGS7P-200 |
按钮 | SW2 | 钥匙-SMD_4P-L3.1-W3.1-P2.00-LS4.0 | 1 | TS3325A 250gf 025 |
ATTINY412 | U1 | SOIC-8_L4.9-W3.9-P1.27-LS6.0-BL系列 | 1 | ATTINY412-SSN |
RDA5807 | U2 | RDA5807 | 1 | |
30-50 mAh Tws 芽电池 | J2 | SMD焊盘 | 1 | EEMB LP401012,D10 Kp-581013X 类似电池 |
10μF电容器 | C1 | 通孔,D5xL11.5mm | 1 | ECR1HBK100MLL050011 |
IC 编程器Arduino/UPDI 编程器 | 那 | 那 | 1 | Arduino 乌诺 |
MCU的选择尤为关键。MCU 的电压工作范围必须与 FM 模块的工作范围相匹配。MCU 还必须提供一个 I2C 端口,用于与 FM 模块通信,并消耗最少的能量,以最大限度地延长小型电池的运行时间。为了满足这些要求,德州仪器 (TI) 最近发布的一个选项,详情请访问:单击此处
另一种选择是 Microchip 的 ATtiny 系列,该系列提供各种小封装的 SMD 版本。WCH CH32V003系列MCU芯片也可以考虑。
为了便于编程,我们选择了 Microchip 的 ATtiny412 MCU。但是,其他 MCU 也可以与适当的代码调整一起使用。ATtiny412 需要 UPDI 编程器,但也可以使用 Arduino Uno 进行编程,许多业余爱好者已经拥有该 Arduino Uno。
同样,其他 MCU(例如 ATtiny85)也可以通过 Arduino Uno 进行编程。在此器件中,Arduino Uno 用作编程器板,而不是主 MCU。图 2 显示了指尖上的 Tiny412 MCU IC,以及其他组件与用于缩放的脉冲种子相比。
图2:指尖上显示的Tiny412 MCU IC,其余组件的尺寸与脉冲种子的比较
要组装此设备,组件将列在物料清单表中。
创建固件
代码是使用 Arduino IDE 准备的。人们很自然地想知道这个 MCU 是否可以使用 IDE 进行编程。答案是肯定的,不仅仅是这个型号,前面提到的所有MCU都是兼容的。为了使设计尽可能紧凑和简单,电池、按钮和 PCB 都安装在耳塞内,使用了一个按钮来处理整个用户界面。这个开关管理电台扫描、更改频道频率、调节音量和播放/暂停控制。
一个常见的问题是如何通过单个交换机管理所有这些功能。
接下来解释开关的工作原理及其在代码中的功能定义。图 3 显示了定义用户界面 (UI) 按钮功能的代码片段。
图 3:定义用户界面 (UI) 按钮功能的代码片段

加入微信
获取电子行业最新资讯
搜索微信公众号:EEPW
或用微信扫描左侧二维码