(Ab)使用 Arduino 作为 AM 音乐发射器!
组件和用品
| × | 1 | ||||
| × | 2 | ||||
| × | 1 | ||||
| × | 1 |
应用和在线服务
|
关于这个项目
使用 ATmega MCU 可以完成很酷的事情。所以我有了用 Arduino Nano 构建 AM 发射器的想法(任何其他 Arduino 也是可能的)
问题是,如何在数字设备上实现幅度调制 (AM)? AM是指载波频率的幅度根据我们要传输的输入信号的幅度而变化。从数学上讲,我们将载波与输入信号相乘。但是由于 ATmega 只有数字输出,它只能给出两个值:高和低。坦率地说,没有办法从 Arduino 中获得真正的 AM。
尽管如此,还是可以产生一些输出信号,用普通的 AM 无线电接收器可以清楚地听到!
该解决方案包括使用 ADC 和 ATmega MCU 的 16 位定时器/计数器 1 将模拟输入信号转换为 PWM 信号。
定时器/计数器2产生载波信号,可在31KHz到8MHz的大范围内变化。
该载波信号以 PWM 信号的节奏在引脚 D11 上输出。 AM 收音机的作用就像 PWM 上的低通滤波器,因此我们可以在那里恢复原始音频信号。
这只是一个概念证明,所以我保持简单。如果你真的想把它用作射频发射器,你应该添加一个低通滤波器来消除音频输入的混叠,并为射频输出添加一个低通谐波。
代码
- Arduino AM 发射器
Arduino AM 发射器C/C++
/*本作品已根据知识共享署名-相同方式共享 4.0 国际许可协议获得许可。要查看此许可证的副本,请访问 http://creativecommons.org/licenses/by-sa/4.0/.*/#define ANTENNA_PIN PB3 //Arduino Nano/Uno D11// 设置功能在您按下重置时运行一次或为 boardvoid setup() { Serial.begin(115200); 供电//载波频率生成 uint32_t fTransmit =600; //KHz DDRB |=(1 <18.5k 采样率 DIDR0 =(1 <
示意图
制造工艺