在本系列的前面,使用触摸显示器创建了紧凑型 FM 收音机。从那时起,设计继续推进,将 FM 收音机集成到耳塞中——尽管该版本有一个局限性:每次需要更改频道时都必须重新编程耳塞。现在,设计之旅继续推出完全独立的 FM 耳塞,不再依赖外部 MCU 来选择频道或其他功能。
在此版本中,MCU 和用户界面都完全内置于耳塞本身中。图 1 显示了早期的原型、各个组件的比较(放置在种子旁边以进行缩放)和最终的表面贴装 PCB。
图1:上期作者的原型这是迄今为止该系列中最小的工作系统。也就是说,它确实需要表面贴装焊接经验。紧凑的 MCU 和单开关接口允许用户切换 FM 频道(向上/向下)和调节音量。该设计足够紧凑,可以放入耳塞中,但电池容量仍然有限,限制了延长的聆听时间。通过一些重新配置,可以修改耳塞腔以容纳更大的电池。
为了获得更好的接收效果,还可以将外部天线或 SMD 天线集成到系统中。在当前版本中,耳塞内部使用了一个简单的线圈来充当天线,避免了对外部组件的需求,同时保持了超紧凑的设计。
组件选择至关重要,因为整个 FM 收音机必须适合耳塞内。需要超紧凑的部件,其中 MCU 和 FM 模块是关键。与早期设计一样,使用了 RDA5807 FM 模块,这是目前最小的模块之一。它通过 I2C 进行通信,允许频道更改、音量控制和电台扫描,所有这些都通过 MCU 进行管理。
-广告-
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) 按钮功能的代码片段
“掌”握科技鲜闻 (微信搜索techsina或扫描左侧二维码关注)










