调频收音机的制作教程

电子说

1.3w人已加入

描述

第1步:计划

计划是保持一切简洁。没有花哨的东西。

我们将使用Arduino Nano作为我们项目的大脑。与模块通信的艰苦工作已经完成。确保安装了无线电库。您可以使用许多功能。 注意:该库也适用于SI4703,SI4705和TEA5767。

前面的一个按钮用于将收音机置于“频率选择”模式,另一个按钮用于选择频率。 Pot将用于滚动预设频率(可根据您的位置在代码中设置)。

OLED显示屏将用于显示调谐频率。

无线电模块的输出音频信号非常低,不足以驱动0W扬声器。 PAM8403模块将用于放大音频信号。这个模块有很多版本。我选择了一个有音量控制的音量控制器和ON/OFF开关。

步骤2:准备FM收音机模块

调频收音机

调频收音机

调频收音机

调频收音机

调频收音机

调频收音机

通过查看图片可以看出,它是非常非常小!最重要的是,模块的垫间距不是面包板/穿孔板友好的。

我们必须为它制作一个突破板。切割一块大小与模块大小相当的小孔。确保每侧至少有5个孔。焊接公头插针如图所示。接下来,将模块放在电路板上,并在模块上的焊盘和插头引脚之间焊接细线。我使用了组件腿的修剪出来。

步骤3:制作外壳

调频收音机

调频收音机

调频收音机

调频收音机

调频收音机

调频收音机

调频收音机

调频收音机

调频收音机

我是3D新手设计,这是迄今为止我设计的最多。机箱采用Fusion 360设计,并在Creality Ender 3打印机上打印。我附上了我用过的所有.STL文件。

我将前面板涂成白色,因为我只有一种颜色的灯丝。

我使用烙铁将‘M3螺纹插件’插入外壳的孔中。这是非常令人满意的!

使用超级胶水将外圈内部胶粘。

另外,在“后板”上制作一个6mm和2mm的孔用于旋钮放大器和天线分别。我在设计时忘了添加它们。

步骤4:准备电路板

调频收音机

调频收音机

调频收音机

调频收音机

调频收音机

我们需要制作两块电路板。一个是带有Arduino和FM模块的主板,另一个是用于安装在前板上的按钮。

我使用了每个组件使用公头和母头针的连接器,以便可以轻松连接/断开连接器。如果需要,可以跳过此步骤。

按照原理图进行接线。

步骤5:编码时间

调频收音机

调频收音机

此处已附加代码。下载.ino文件并在Arduino IDE中打开它。在您上传之前,您需要修改两件事。

无线电台的数量及其频率会发生变化。通过Google快速搜索,您可以了解电台及其频率。将它们列出后,将它们添加到‘stations []’数组中,如图所示。你必须省略小数点。例如,9110表示91.10 MHz,10110表示101.10 MHz,依此类推。另外,输入方括号之间的站总数。就我而言,我在阵列中有12个电台。因此,站[12]。

从总站数中减去1并在代码中输入,如第二张图所示。在这种情况下是11。 我知道有更好的方法,但我最终遇到了很多错误!

并上传代码!

#include

#include

#include

#define OLED_RESET 4

#define FIX_BAND RADIO_BAND_FM

int setButton = 5;

int backButton = 6;

int potPin = A7;

Adafruit_SSD1306 display(OLED_RESET);

RDA5807M radio;

int stations[12] = {9110,9190,9270,9350,9430,9830,10010,10280,10400,10480,10640,10710};

void setup() {

pinMode(backButton, INPUT);

display.begin(SSD1306_SWITCHCAPVCC, 0x3C);

display.display();

delay(2000);

display.clearDisplay();

radio.init();

radio.setBandFrequency(FIX_BAND, 10010);

radio.setVolume(6);

radio.setMono(true);

radio.setMute(false);

display.setTextSize(3);

display.setTextColor(WHITE);

display.setCursor(20,10);

display.print(“100.10”);

display.display();

}

void loop() {

if(digitalRead(backButton)==HIGH){

setFrequency();

}

}

void setFrequency(){

float displayStation;

int stationNum, val;

radio.setMute(true);

while(digitalRead(setButton) != HIGH){

display.setTextSize(1);

display.setTextColor(WHITE);

display.setCursor(0,0);

display.print(“Select Station”);

display.setTextSize(3);

display.setTextColor(WHITE);

display.setCursor(20,10);

val = analogRead(potPin);

stationNum = map(val, 0, 1023, 0, 11);

displayStation = stations[stationNum]/100.0;

display.print(displayStation);

display.display();

display.clearDisplay();

}

delay(500);

radio.setBandFrequency(FIX_BAND, stations[stationNum]);

radio.setMute(false);

display.setCursor(20,10);

display.print(displayStation);

display.display();

display.clearDisplay();

}

第6步:将事物放在一起

调频收音机

调频收音机

调频收音机

调频收音机

调频收音机

调频收音机

调频收音机

调频收音机

调频收音机

调频收音机

调频收音机

调频收音机

调频收音机

将OLED显示屏和扬声器热胶粘在前面板上。

将3D打印的按钮放在适当的位置,在触觉开关上添加一滴超级胶水并将电路板放在上面按钮顶部确保按钮和开关对齐。

拧入前面板上的电位计。

在内缘上涂抹大量超级胶水并放置整个前板上有轮辋上的所有组件。

将组件与主电路板进行所有连接。将无线电模块的音频输出连接到安装在背板上的放大器。

在连接器周围涂上少量热胶,作为应变消除。

螺丝使用M3螺丝在背板上。

最后,将热胶棒切成4个圆圈,厚度约2-3mm,如图所示将胶水粘在底部。它们将起到橡胶脚的作用。

你已经完成了!

第7步:享受!

启动你的电源使用5V电源的无线电。如果您无法找到5V电压,请使用带有12V输入的7805稳压器。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分