嘉立创产业服务站群
必应搜索
发作品签到
专业版

简易收音机

工程标签

2.2k
0
0
7

简介

你是否记得夏日的傍晚,你坐在院子里听着收音机和爷爷奶奶姥姥姥爷一起乘凉,你是否记得夏日傍晚的小喇叭节目

简介:你是否记得夏日的傍晚,你坐在院子里听着收音机和爷爷奶奶姥姥姥爷一起乘凉,你是否记得夏日傍晚的小喇叭节目
夏日电子趣玩计划项目征集令

开源协议

GPL 3.0

(未经作者授权,禁止转载)
创建时间:2024-05-08 10:41:20更新时间:2024-06-24 01:35:35

描述

项目简介

这是一个简易的FM收音机,儿时的夏天,我喜欢在爷爷的房间听收音机。滴答滴答滴答,现在是北京时间20点整,中央人民广播电台中国之声,然后便是滴滴答滴滴答,小朋友们,小喇叭开始广播了。
很多年过去了,我己经记不得当时的主持人是哪一位姐姐,但是我怀念我的爷爷,也怀念我的童年。这次夏日主题的活动,制作一个建议的收音机来回忆我的童年。同时我是一个业余无线电爱好者,业余无线电在无数的抢险救灾中发挥着重要的作用,也对战争年代牺牲的情报工作者致敬,向永不消逝的电波致敬。
本工程有一个ESP32版本的,开源链接为 https://oshwhub.com/laobainb/jian-yi-shou-yin-ji-esp32-ban


  • 收音机芯片选择 DRA5807m,它是新一代单片机广播调频立体声调谐器,极少的外围元件,使用 I²C 与单片机通讯
  • 音频功放选择PAM8403,此芯片立体声功率放大器能够以 D 类放大器的效果提供 AB 类功率放大器的性能。要极少的外围元件,节省了PCB空间,以及还发设计成本
  • 电源管理采用IP5306,这是一款集成升压转换器、锂电池充电管理、电池电量指示的多功能电源管理 SOC,同样不需要太多的外围元件,只需一个电感实现降压与升压功能,同步升压系统提供最大 2.4A 输出电流,转换效率高达 92%。空载时,自动进入休眠状态,静态电流降至 100uA。

成本估算(白嫖到极致)

嘉立创有的

电子耗材

包括,电池管理芯片,音频功率放大芯片,喇叭等主要原件,以及电容电阻等周边原件。活动酱给了耗材券,不多不少刚刚好。且有个包邮券。所以耗材是免费且包邮的
image.png

3D外壳

因为有多个版本,所以打了两套外壳。活动酱给的券,免费的。外加5元运费,支付宝付款加收0.02手续费
image.png

面板

活动酱给了券,也是免费的,和耗材一起下单的,所以也是包邮的。另外面板负责人黄工非常的认真负责。由于第一版的面板喇叭口间隙太小可能导致生产融掉,黄工一直跟进检查,非常nice

image.png

PCB

这个是免费的,且包邮的

嘉立创没有的

RDA580,螺丝,螺母,天线,均采购自某宝,通过各种优惠叠加,入手香得很,羊毛都快给薅秃了,哈哈~~~~~~

image.png

原理解释

收音机播放的基本流程是 广播电台把音频信号进行调制 ————→ 通过天线发射 ————→ 在空间中传播 ————→被收音机接受 ————→ 被收音机解调后通过喇叭播放

调制

因为我们平时听到的声音是低频信号,但是低频信号传播距离很小。如果想把信号传播到而更远的地方,需要高信号,所以我们就把声音信号(大约几百Hz)叠加到高频信号(可能是几百MHz)上面。然后传输,调制方式有调幅(AM)和调频(FM)两种

调制方式解释
调频(FM)幅度不变,频率随着低频信号改变而改变
调幅(AM)频率不变,幅度随着低频信号改变而改变

图示解释

声音信号

微信图片_20240616224904.png

高频信号(相当于一个载体)

微信图片_20240616224857.png

调频(FM)

微信图片_20240616224923.png

调幅(AM)

微信图片_20240616224917.png

发射

传播

传播方式有天波(经电离层反射后返回地面的无线电波),地波(沿地球表面传播的无线电波),空间波(从发射点经空间直线传播到接收点的无线电波)等等

天波

image.png

地波

image.png
image.png

空间波

image.png

接受

解调

硬件解释

RDA5807M

RDA5807M系列是新一代单片机广播调频立体声调谐器,全集成合成器、中频选择性、RDS/RBDS和MPX解码器。调谐器采用CMOS工艺,支持多接口需要最少的外部元件。所有这些都使其非常适用于便携式设备。
RDA5807M系列拥有强大的低IF数字音频处理器这使其在不同接收条件下具有最佳音质。
该RDA5807M系列支持的频率范围是从50MHz到115MHZ。

  • 1,3,8 引脚为GND,接地
  • 7 脚是供电,根据芯片手册,供电电压位2.7V~3.3V,分别使用47uF的电解电容和100nF的贴片电容,分别滤除电源上的低频噪声和高频噪声
  • 6 脚连接晶振,根据芯片手册,选择32.768kHz的电容,并在PCB设计的时候包地,并且设计禁止区域禁止铺铜,同时注意在晶振区域的所有层禁止通过电源线
  • 4,5 引脚是RDA5807m的 I²C 通讯引脚,与核心板相连,这里要查询芯片手册,查看支持 I²C 的IO口。我们使用 I²C时,可以选择然间 I²C以及硬件 I²C。为了方便后期开发,我们选择带有I²C复用功能的引脚(PA0,PA1),这样就有了硬件 I²C的支持,如果我们使用软件 I²C,无非巴塘当作一个铺铜的IO口来使用罢了。
  • 9,10 引脚是音频输出接口,各通过一个100nF的耦合电容与功放芯片PAM8403连接

image.png

音频功率放大电路

PAM8403是一款优秀的音频功率放大集成IC,。PAM8403 能够高于 85%的效率提供 3W 功率,同时具有系统关断及静音控制功能。特殊的线路架构增强了抗噪音能 ,减力少了射频干扰。
根据芯片手册(可以查看附件)电路之这样的

  • 6 脚是电源引脚,供电采用5V,11 脚是地,使用 100nF 与 1uF 的电容分率滤除高频噪声与低频噪声
  • 413 脚是功率电源,215 脚是功率地。考虑到功率不大,没有做与模拟信号做隔离,但是为了避免地的偏移,使用了一个22uF的电动,这颗电容要尽量的靠近功率电源和功率地(一旦电路中存在地偏移,那么原来的5V电压就可能不是5V了,而是变成了其他电压。因为5V电压是参考GND地线0V而言,如果地偏移使得GND地线由0V抬升到了1V,那么之前的5V(5V-0V=5V)电压就变成了的4V(5V-1V=4V))
  • 8 脚是内部基准源,从 连接一个100nF旁路电容到 GND
  • 710 脚分别是左右声道的输入,根据芯片手册串联10k~20k的电阻以及0.47uf的电容
  • 131614 脚分别为左声道的正负极,与右声道的正负极,直接连接喇叭(喇叭接口)
  • 5 脚为静音控制输入,低电平有效,通过一个10k的上拉电阻将其拉到高电平,并且连接到单片机核心板,后期可以用程序来控制
  • 12 脚是系统关断控制,低电平有效,同样通过一个10k的上拉电阻将其拉到高电平,并且连接到单片机核心板,后期可以用程序来控制
  • 9 脚是空脚,悬空处理

image.png

电池管理

使用IP5306,来进行充放电管理,外围电路简单,控制方便

  • 1 脚是电源输入连接typec输入
  • 8 脚是输出,给整个电路供电
  • 6 脚连接电池正极
  • 2,3,4 脚连接电量指示led

image.png

软件解释

RDA5807支持I²C通讯,我们可以使用软件I²C和硬件I²C的方式与其通信,为了代码简洁(太懒,不想写复杂的代码处理时序信号,数据信号,错误检测,信号冲突。。。。)毕竟是建议收音机嘛,所以使用硬件I²C,通过查看芯片手册,我们使用PA0和PA1。

image.png

定义变量,和晶振

#ifndef __RDA5807_H

//正负反馈
#define 	 ACK		     0
#define 	 NACK	             1
//布尔变量
#define    TRUE			     1
#define    FALSE                     0
//读写标识
#define    READ	                     1   
#define    WRITE	             0   
                            
#define    ADRW 	           0x20	//RDA5807P写寄存器地址
#define    ADRR 	           0x21	//RDA5807P读寄存器地址

/*
 * 本收音机用到的RDA5807M模块,使用的是32.168KHz晶振,如果使用其他晶振,根据频率使用不同的宏定义
 */
//#define                 _SHARE_CRYSTAL_24MHz_   //24MHz晶振
//#define                 _SHARE_CRYSTAL_12MHz_   //12MHz晶振
#define                 _SHARE_CRYSTAL_32KHz_     //32KHz晶振
//#define                 _FM_STEP_50K_           //50K步进

然后是配置I²C,不同的厂商配置方式不同,但是流程一样,都是开启时钟,配置SCL,SDA的引脚复用与功能,配置IC地址,使能应答。这个项目适用于 GD32 CW32 STM32 ,不同的主控的函数库,以及初始化方式不同,但是管理RDA5807的方式是一样的

设置频率

void RDA5807_SetFreq(short int curFreq)
{   
	unsigned short int curChan;
	
	curChan = RDA5807_FreqToChan(curFreq);
	
	//SetNoMute
	RDA5807_REGW[0] |=	1 << 7;
	RDA5807_REGW[2] = curChan >> 2;
	RDA5807_REGW[3] = (((curChan & 0x0003) << 6) | 0x10) | (RDA5807_REGW[3] & 0x0f);
	
	OperationRDAFM_2w(WRITE, &(RDA5807_REGW[0]), 4);
	delay_ms(50);     
}

读取频率

unsigned short int RDA5807_RegToInt(void)
{
	unsigned char RDA5807_REGR[10] = {0x0};
	unsigned short int temp;
	
	OperationRDAFM_2w(READ, (unsigned char *)&RDA5807_REGR[0], 10);
	
	temp = RDA5807_REGR[0];
    temp = ((temp << 8) | RDA5807_REGR[1]);
	temp = (temp & 0x03FF) * 10 + 8700;
	
	return temp;
}

设置静音

void RDA5807_SetMute(int mute)
{
	if(mute == TRUE){
	 	RDA5807_REGW[0] &=  ~(1<<6);//使能02H寄存器第14位为0,开启静音
	}
	else{
		RDA5807_REGW[0] |=	1<<6;
	}

	OperationRDAFM_2w(WRITE, &(RDA5807_REGW[0]), 2);
   delay_ms(50);    //Dealy 50 ms
}

总结

最后,我想对大家说,,,,结束了,我也不知道该说什么,但是总结的仪式感还是要有的。再次致敬永不消逝的电波吧,This is BG5AWB

设计图

未生成预览图,请在编辑器重新保存一次

BOM

暂无BOM

附件

序号文件名称下载次数
1
WeChat_20240618002149.mp4
8
2
WeChat_20240618002141.mp4
0
克隆工程
添加到专辑
0
0
分享
侵权投诉

评论

全部评论(1)
按时间排序|按热度排序
粉丝0|获赞0
相关工程
暂无相关工程

底部导航