您的位置 首页 模拟

AVR单片机的调频立体声收音机规划

摘要:介绍一种以低功耗单片机ATmega8L为控制核心,以RDA5807P芯片作为FM接收器的调频收音机。该收音机通过单片机ATmcga8L的I2C总线接口读写RDA58O7P收音模块的数据,用按键及

摘要:介绍一种以低功耗单片机ATmega8L为操控中心,以RDA5807P芯片作为FM接纳器的调频收音机。该收音机通过单片机ATmcga8L的I2C总线接口读写RDA58O7P收音模块的数据,用按键及红外遥控器进行搜台、音量调理等操作。用LCD显现接纳频道的频率,当时音量巨细等信息。规划中给出了完成FM调频收音机的硬件电路、读/写RDA5807P收音模块及红外遥控解码程序的思路。经屡次比对测验,该收音机能够明晰、稳定地收听省府及本地发射的一切调频电台。

导言

前期的数字FM处理芯片TEA5767由Philips公司开发并被广泛地运用,但该芯片需求外加音频扩大电路才干驱动耳机。鉴于此,国内锐迪科微电子公司独立开发了一颗具有高接纳灵敏度的FM立体声数字芯片RDA5807P,具有主动搜台、重低音、静音、休眠、直接驱动耳机等优异的功用。本文介绍用RDA5807P芯片规划和制造了一款带遥控功用的收音机。

1 收音机整体规划方案

收音机的整体规划框图如图1所示。本收音机选用单节3.7 V、容量1500 mAh的锂电池作力电源,在运用寿命期内能够用手机充电器重复对它进行充电,运用十分便利。选用低功耗的AVR单片机ATmega8L作为微操控器,负责处理和协调各模块电路的作业,ATmega8L的作业电压为2.7~5.5 V,片内有512字节的EEPROM,不必专门外接EEPROM芯片就能够将掉电前接纳电台的频道和音量信息保存起来,从头开机后又能够康复本来的信息。调频收音机模块选用国产芯片RDA5807P加上少数的外围元件组成,由微操控器通过I2C总线接口对芯片内部寄存器进行写/读操作。通过键盘或红外遥控发射器能够进行主动搜台、手动选台、音量调理、静音操作。LCD用于显现当时收听电台的频率、音量等级等信息。音频功率扩大器扩大当时收听电台的音频信号,驱动扬声器宣布声音。

AVR单片机的调频立体声收音机规划

2 体系硬件电路规划

2.1 电源办理模块电路规划

电源办理模块电路如图2所示。LM2054是一款单节锂电池恒流、恒压线性充电芯片,最大充电电流可到达800 mA。它只需外接很少的外部元件,预设4.2 V充电电压,精度到达±1%。充电时,若锂电池电压低于4.2V,充电指示灯D101亮,充电到达预设值4.2 V后指示灯D101平息。

AVR单片机的调频立体声收音机规划

2.2 微操控器及键盘、显现、红外遥控接纳电路规划

微操控器及键盘、显现、红外遥控接纳电路如图3所示。

AVR单片机的调频立体声收音机规划

键盘K1~K6用于选频、音量调理等。红外遥控接纳头连接到单片机ATmega8L的PB0,用单片机的输入捕获功用进行解码。为了削减液晶显现器LCD1602A占用单片机过多的I/O口,数据接口只运用高4位,在写入指令或数据时,分两次写入,先写高4位,再写低4位。为了下降LCD的用电量,LCD的背光灯用单片机的PD3和PC1进行操控,当用户设置好想收听的电台,5 s后LCD背光灯主动平息。

2.3 调频收音模块电路规划

调频收音模块电路如图4所示。RDA5807P是国产的FM立体声收音机接纳芯片,加上很少的外围元件且根本不需求校准,通过程序设定即可接纳欧洲、美国和日本的调频波段。单片机通过I2C总线SCL和SDA将拜访RDA5807P芯片所需的地址、指令、数据写入内部的寄存器中,也能够通过该总线读出芯片内部寄存器中的数据,取得接纳频道的数据和音量值,供显现运用。RDA5807P的输出经磁珠F301、F302及%&&&&&%器C30 3、C304按捺高频搅扰后,能够直接驱动32 Ω的耳机宣布声音,也能够接到下级音频功放进行扩大,推进扬声器宣布声音。

AVR单片机的调频立体声收音机规划

2.4 音频功率扩大电路规划

音频功率扩大电路如图5所示。PAM8403是一块D类音频功率扩大器芯片,它具有谐波失真低、噪声串扰小、可直接驱动喇叭的特色。用它制造的音频功放,电路简略,作业牢靠。在5 V电源和4 Ω负载条件下,能输出3 W的功率。功率可达90%以上,十分适合于用电池供电的便携式电子产品。电路中

AVR单片机的调频立体声收音机规划

引脚可通过单片机输出低电平操控其进行静音和封闭功放体系。

AVR单片机的调频立体声收音机规划

2.5 红外发射模块电路规划

红外遥控发射器电路如图6所示。BA5104是一块红外遥控编码芯片,内接有上拉电阻,无键按下时,电路中无电流流转,振动电路不起

振,无遥控编码信号输出。当有某一键按下时,电路发生455 kHz的振动信号,由BA5104内部电路进行12分频,取得38 kHz的载波信号。此刻按键的编码信息和C1、C2引脚的状况信息对38 kHz载波进行编码调制,经15引脚串行输出,由三极管Q501、Q502构成的达灵顿驱动电路扩大,经外发射管向空间发射,一起14引脚输出高电平,发射状况指示灯D501点亮。

AVR单片机的调频立体声收音机规划

3 体系软件程序规划

软件程序规划首要包含读写RDA5807P芯片相关的模块程序、频率及音量显现模块程序、按键检测与功用设定模块程序、遥控解码及功用设定模块程序等。本规划选用CodeVisionAVR作为开发软件,软件中集成有LCD1602、I2C总线驱动程序,不必再编写相应的底层函数,运用十分便利。故在此仅介绍RDA5807P芯片作业在RDA5807P形式及选用I2C总线接口进行搜台的程序规划和红外遥控解码程序的规划。

3.1 搜台程序规划

搜台程序可用硬件形式进行搜台,也能够选用软件形式进行搜台。本文侧重介绍硬件形式搜台,软件形式搜台可参照硬件搜台形式进行编程。

I2C总线接口是由START、指令字节、数据字节及每个字节后的ACK及NACK比特、STOP组成。RDA58027P芯片写器材地址为0x20,读器材地址为0x21。RDA5807P芯片内部的I2C总线接口有4个写数据寄存器,其地址分别是0x02、0x03、0x04、0x05。2个读数据寄存器,其地址分别为0x0A、0x0B,每个数据寄存器又分为高字节和低字节。这些数据寄存器的地址是不行见的,不能通过单片机直接对指定地址的数据寄存器进行读/写操作。因而,单片机在宣布读/写指令字节后,接下来有必要对数据寄存器进行接连地读/写操作。其子程序如下:

AVR单片机的调频立体声收音机规划

硬件形式搜台程序规划首要是通过调用接连写和接连读操作子程序来对收音模块寄存器进行读/写,其程序流程图如图7所示。

AVR单片机的调频立体声收音机规划

依据该流程图编写的子程序如下:

AVR单片机的调频立体声收音机规划
AVR单片机的调频立体声收音机规划

3.2 红外遥控解码程序规划

由BA5104的编码格局可知;遥控码的一帧长度为12位,其间包含3位开始码、2位用户码、7位指令码。遥控码的每一帧时刻距离为4T,T=1.6879 ms为一位遥控码的周期。一帧完好的遥控码如图8所示。

AVR单片机的调频立体声收音机规划

遥控码中“1”用3T/4的高电平与T/4的低电平表明,“0”用T/4的高电平与3T/4的低电平表明,一位遥控码的波形如图9所示。

AVR单片机的调频立体声收音机规划

由图9可见,要用单片机来判别遥控发射器宣布的是“0”仍是“1”,关键是要判别接纳脉冲下降沿至上升沿之间的时刻。能够选用外部中止法,也能够选用输入捕获功用法,本文选用后一种办法。解码的思路是:初始化时,将ATmcga8L的ICP1引脚设置为输入状况,下降沿触发,当红外接纳头接纳到红外遥控信号时,发生下降沿,单片机主动将TCNT1寄存器中的值保存至ICR1寄存器中,在捕获中止服务程序中将ICR1中的值保存至T1中;然后将ICP1设置为上升沿触发,当再次发生捕获中止时,将ICR1中的值保存至T2中,将%&&&&&%P1设置为下降沿触发,并将TCNT1置0。之后计算出T2-T1的时刻并保存至事前拓荒的数组中,要注意的是,T2-T1有或许呈现负值,此刻要将(T2-T1+0xffff)再保存,直到接纳完12位数据。

保存在数组中的数据,当其值为3/4×1.687 9ms≈1266μs时,被以为接纳到“1”,当其值为1/4×1.687 9 ms≈422 μs时,被以为接纳到“0”。因为遥控发射器和单片机所运用的晶振频率与标称值会有必定的误差,所以在程序中要留有必定的余量。

结语

通过屡次比对测验,该收音机能够明晰、稳定地收听省府及本地所发射的调频电台信号。

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/zhishi/moni/292176.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部