【STM32】【HAL库】【实用制作】数控收音机(硬件设计)

2023-10-10 15:10

本文主要是介绍【STM32】【HAL库】【实用制作】数控收音机(硬件设计),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目录

需求分析

原理图

电源

电池

电池充电

电池保护 

升压电路

LDO

STM32

主控

 晶振电路

 电源

 引导

复位电路 

 ST-LInk下载电路

 串口

 按键和指示灯

 收音模块

RDA5807M

晶振

​编辑

 天线和耳机

 数码管

驱动 

 数码管

 功放电路

旋转编码器

 红外

PCB

成品


需求分析

  • 调频收音
  • 通过数码管显示音量,电台和频率
  • 使用电池进行供电
  • 可以推动较大功率的喇叭(5-10W左右)

原理图

电源

电源部分使用电池供电,使用的是额定电压3.7V的18605锂电池

单片机使用的是3.3V的stm32F103C6T6

数码管驱动额定电压3.3V-5V

后文使用的旋转编码器EC11额定电压5V

VS1838红外接受头额定电压5V

功放使用的是TDA2030 额定电压6-12V

其中只有功放部分属于大功率器件

所以电池需要升压后使用

电源有

8V(电池升压)

5V(LDO将8V降压)

3.3V(LDO将8V降压)

电池需要充电电路,电池保护电路,电池升压电路

电池

电池充电

使用的是PW4054芯片和Type-C的USB连接器

最大充电电流500mA慢充,避免出现电池发热

 

 电池充电一般是需要被电池保护电路所控制的,这里为了简化电路

所以充电电路和电池保护电路均直连电池 

电池保护 

 使用的是PW3130芯片,3.5A过流保护,2.6V低压保护

升压电路

 使用的是PW5300芯片,boost拓扑结构

注意L1电感需要最大电流1.5A以上

通过一个精密电位器调节升压后的电压 

当电压调节符合范围后通过跳线连接到主电源 

LDO

使用的是AMS1117系列,5V和3.3V 

 

 

STM32

主控

需要注意

晶振(5,6),复位(7),BOOT0(44),BOOT1(20)

 晶振电路

 

 用的是无源晶振

 电源

 滤波电容要接近电源的这些引脚

 引导

复位电路 

 阻容分压,上电瞬间为低电平,之后变为高电平

 ST-LInk下载电路

 串口

 按键和指示灯

 

 STM32的这部分电路是最容易出现问题的

 收音模块

RDA5807M

 I2C输出需要加上拉电阻 

晶振

 天线和耳机

 数码管

使用的是74HC595D

注意一定得是D,74HC595A是开漏输出,需要额外加上拉电阻

驱动 

 数码管

 功放电路

使用的是TDA2030芯片,单电源接法

 开关使用的是一个MOS管由单片机控制

旋转编码器

 红外

PCB

电源部分需要较粗(1A 30mil)的线

 

 STM32部分需要注意晶振电路

成品

百度网盘https://pan.baidu.com/s/1gO3oHUSIa0Vihef8MlgEEQ?pwd=6pao%C2%A0

软件部分https://blog.csdn.net/m0_57585228/article/details/126060958

这篇关于【STM32】【HAL库】【实用制作】数控收音机(硬件设计)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/181241

相关文章

从基础到进阶详解Python条件判断的实用指南

《从基础到进阶详解Python条件判断的实用指南》本文将通过15个实战案例,带你大家掌握条件判断的核心技巧,并从基础语法到高级应用一网打尽,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一... 目录​引言:条件判断为何如此重要一、基础语法:三行代码构建决策系统二、多条件分支:elif的魔法三、

Python 字符串裁切与提取全面且实用的解决方案

《Python字符串裁切与提取全面且实用的解决方案》本文梳理了Python字符串处理方法,涵盖基础切片、split/partition分割、正则匹配及结构化数据解析(如BeautifulSoup、j... 目录python 字符串裁切与提取的完整指南 基础切片方法1. 使用切片操作符[start:end]2

Python按照24个实用大方向精选的上千种工具库汇总整理

《Python按照24个实用大方向精选的上千种工具库汇总整理》本文整理了Python生态中近千个库,涵盖数据处理、图像处理、网络开发、Web框架、人工智能、科学计算、GUI工具、测试框架、环境管理等多... 目录1、数据处理文本处理特殊文本处理html/XML 解析文件处理配置文件处理文档相关日志管理日期和

精选20个好玩又实用的的Python实战项目(有图文代码)

《精选20个好玩又实用的的Python实战项目(有图文代码)》文章介绍了20个实用Python项目,涵盖游戏开发、工具应用、图像处理、机器学习等,使用Tkinter、PIL、OpenCV、Kivy等库... 目录① 猜字游戏② 闹钟③ 骰子模拟器④ 二维码⑤ 语言检测⑥ 加密和解密⑦ URL缩短⑧ 音乐播放

python中列表应用和扩展性实用详解

《python中列表应用和扩展性实用详解》文章介绍了Python列表的核心特性:有序数据集合,用[]定义,元素类型可不同,支持迭代、循环、切片,可执行增删改查、排序、推导式及嵌套操作,是常用的数据处理... 目录1、列表定义2、格式3、列表是可迭代对象4、列表的常见操作总结1、列表定义是处理一组有序项目的

Mysql中设计数据表的过程解析

《Mysql中设计数据表的过程解析》数据库约束通过NOTNULL、UNIQUE、DEFAULT、主键和外键等规则保障数据完整性,自动校验数据,减少人工错误,提升数据一致性和业务逻辑严谨性,本文介绍My... 目录1.引言2.NOT NULL——制定某列不可以存储NULL值2.UNIQUE——保证某一列的每一

PostgreSQL中rank()窗口函数实用指南与示例

《PostgreSQL中rank()窗口函数实用指南与示例》在数据分析和数据库管理中,经常需要对数据进行排名操作,PostgreSQL提供了强大的窗口函数rank(),可以方便地对结果集中的行进行排名... 目录一、rank()函数简介二、基础示例:部门内员工薪资排名示例数据排名查询三、高级应用示例1. 每

springboot项目打jar制作成镜像并指定配置文件位置方式

《springboot项目打jar制作成镜像并指定配置文件位置方式》:本文主要介绍springboot项目打jar制作成镜像并指定配置文件位置方式,具有很好的参考价值,希望对大家有所帮助,如有错误... 目录一、上传jar到服务器二、编写dockerfile三、新建对应配置文件所存放的数据卷目录四、将配置文

Linux如何快速检查服务器的硬件配置和性能指标

《Linux如何快速检查服务器的硬件配置和性能指标》在运维和开发工作中,我们经常需要快速检查Linux服务器的硬件配置和性能指标,本文将以CentOS为例,介绍如何通过命令行快速获取这些关键信息,... 目录引言一、查询CPU核心数编程(几C?)1. 使用 nproc(最简单)2. 使用 lscpu(详细信

linux重启命令有哪些? 7个实用的Linux系统重启命令汇总

《linux重启命令有哪些?7个实用的Linux系统重启命令汇总》Linux系统提供了多种重启命令,常用的包括shutdown-r、reboot、init6等,不同命令适用于不同场景,本文将详细... 在管理和维护 linux 服务器时,完成系统更新、故障排查或日常维护后,重启系统往往是必不可少的步骤。本文