第三章 收音机的硬件设计原理 反向振荡器的输出。为了稳定振荡频率,需要在X1和X2之间加一个晶振,负载电容与内部电路共同组成一定频率的振荡,这个电容是硬连接,固定频率能力很强,其他频率的干扰就很难进来了。
3.2 收音机的FM收音模块设计
通过第二章介绍知道本次设计的收音模块的主要芯片是飞利浦公司TEA5767,TEA5767主要的优势是把调频收音等所有功能都集成一个不足6×6平方毫米的小芯片中,方便携带和使用。此模块的原理如图3-3所示。
图3-3 TEA5767模块原理图
TEA5767的数字和时钟端口与单片机相连,L和R分别为左声道输出和右声道输出,用于连接到功放电路实现音频放大功能。
3.2.1 TEA5767芯片介绍
由第二章已经知道TEA5767具有非常多的优点,成为了收音机设计的首选。TEA5767中的UESR模式给人的印象最为深刻,有点像艾丽和中的3D效果,能很好并且能充分表现出各个音色的质地,让人听起来非常的舒服,音质个人主观意想占比较大的份额,有的人喜欢低音偏重些,有的人喜欢高音明朗些,因此对于
11
第三章 收音机的硬件设计原理 音质的探讨还要是自己亲身体验一下是最好的选择,不过话说回来,TEA5767给人的印象十分出色,很对的起他自身的价值!高清晰度FM广播:支持移动存储,多种音乐格式MP3,WMA;录音功能很好,可以直接对输入音频信号进行MP3编码,这也就是说即便你没有PC机 也可以从CD机/卡带机等音频设备上听到动听的音乐,还支持FM转录功能:A—B复读;更具个性化设计,还可以自定义设计开机画面。
当给收音机上电后频率跳到初始设定值(91.8MHz),按手动搜索(上、下),可实现0.1MHz步进;按自动搜索键(上、下),可搜出最近的符合设定信号清晰度的频道;按存台键,可以将即时频率存入24c02中;按读取键即可调出该频率所对应的电台。手动搜索时,从低端频率88MHz(PLL控制字是2A11H),每按一次手动搜索按钮,频率增加100kHz,读搜到电台标志位RF(读模式字节1的B7)为1时搜到电台,否则未搜到。当搜索到波段尽头时,BLF(读模式字节1的B6)为1,如果再按手动搜索按钮,则从低端频率重新开始搜索。自动搜索时,可以用静音搜索模式,搜索开始前静音位(写模式字节1的B7)置1,若从波段的低端频率88MHz开始搜索,采用向上搜索方式(写模式字节3的B7=1),反复读取控制字的RF标志位,若RF=1,则表明搜到电台。接着检测STEREO位(读字节3的B7)为1,说明是立体声信号。再检测BLF标志位,若BLF=1,说明已经搜到波段尽头,这时需将搜索的起始频率设为高端频率108MHz(PLL控制字是339BH),搜索方向设为向下搜索。若BLF=0,说明未搜索到波段尽头,这时注意再按下自动搜索按钮时,应将当前停止位置的频率增加100kHz,然后继续搜索,否则程序可能停留在第一个搜到的电台频率上。反向搜索时也是如此。读取电台频率控制字,换算成十进制后显示电台频率
TEA5767芯片结构如图3-4所示。(TEA5767芯片管脚定义及内部结构原理图见附录2)
12
第三章 收音机的硬件设计原理
图3-4 TEA芯片结构图
吃透芯片的寄存器是编好程序的关键。单片机和TEA5767进行通信有两种方式,一种是I2C模式,一种是三线模式,本设计采用I2C模式,I2C通信协议将在下一小节介绍。TEA5767的寄存器一共有五位,数据通信的读写顺序为:地址——数据字节1——数据字节2——数据字节3——数据字节4——数据字节5。(芯片的寄存器进行详细说明见附录2)
3.2.2 I2C总线协议介绍
单片机实现对TEA5767的控制功能是通过I2C总线协议,I2C(Inter-Integrated Circuit)总线是由PHILIPS公司开发的两线式串行总线,用于连接微控制器及其外围设备。是微电子通信控制领域广泛采用的一种总线标准。它是同步通信的一种特殊形式,具有接口线少,器件封装形式小,控制方式简单,通信速率较高等优点。
其特征如下:1只要求两条总线线路:一条串行数据线SDA,一条串行时钟线SCL;2、每个连接到总线的器件都可以通过唯一的地址和一直存在的简单的主机或从机关系软件设定地址,主机可以作为主机发送器或主机接收器;3、它是一个真正的多主机总线,如果两个或更多主机同时初始化,数据传输可以通过冲突检测和仲裁防止数据被破坏;4、串行的8 位双向数据传输位速率在标准模式下可达100kbit/s,快速模式下可达400kbit/s,高速模式下可达3.4Mbit/s;5、连接到相同总线的IC 数量只受到总线的最大电容400pF 限制。
13
第三章 收音机的硬件设计原理 I2C总线传输在SDA 线上的数据必须在时钟的高电平周期保持稳定。数据线的高或低电平状态只有在SCL线的时钟信号是低电平时才能改变。如图3-5所示。
图3-5
SCL 线是高电平时,SDA 线从高电平向低电平切换,这个情况表示起始条件;SCL 线是高电平时,SDA 线由低电平向高电平切换,这个情况表示停止条件。起始和停止条件一般由主机产生,总线在起始条件后被认为处于忙碌的状态,在停止条件的某段时间后总线被认为再次处于空闲状态。
如果产生重复起始条件而不产生停止条件,总线会一直处于忙的状态,此时的起始条件(S)和重复起始条件(Sr) 在功能上是一样的。如图所示3-6。
图3-6
数据传输必须带响应,相关的响应时钟脉冲由主机产生。在响应的时钟脉冲期间发送器释放SDA 线。在响应的时钟脉冲期间,接收器必须将SDA 线拉低,使它在此时钟脉冲的高电平期间保持稳定的低电平。通常被寻址的接收器在接到的每个字节后,除了用CBUS 地址开头的数I2C总线数据传输和应答数据,必须产生一个响应。当从机不能响应从机地址时(例如它正在执行一些实时函数不能接收或发送),从机必须使数据线保持高电平,主机然后产生一个停止条件终止它的传输或者产生重复起始条件开始新的传输。如果从机接收器响应了从机地址,但是在传输了一段时间后还不能接收更多数据字节,主机必须再一次终止传
14
第三章 收音机的硬件设计原理 输。这个情况用从机在第一个字节后没有产生响应来表示。从机使数据线保持高电平,主机产生一个停止或重复起始条件。如果传输中有主机接收器,它必须通过在从机不产生时钟的最后一个字节不产生一个响应,向从机发送器通知数据结束。从机发送器必须释放数据线,允许主机产生一个停止或者重复起始条件。如图3-7所示。
图3-7
I2C总线要通过上拉电阻接通正电源,当总线空闲的时候,两线都为高电平。连到总线上的任意一个器件输出的低电平,都将会总线的信号变低,即各器件的SDA及SCL都是线“与”关系。每个接到I2C总线上的器件都有唯一的地址。主机与其它器件间的数据传送可以是由主机发送数据到其它器件,这时主机就是为发送器。由总线上接收数据的器件则为接收器。在多主机系统中,可能同时有几个主机企图启动总线传送数据。为了避免混乱,I2C总线要通过总线仲裁,以决定由哪一台主机控制总线。
I2C总线的数据字节必需保证是8位长度。数据传送时,先传送最高位(MSB),每一个被传送的字节后面都必须跟随一位应答位(即一帧共有9位)。
在采用I2C协议进行通信时,输入电压小于0.2VCCD就被认为是低电平,大于0.45VCCD就被认为是高电平,高电平和低电平的持续时间必须要大于1us,在编程模拟I2C协议时要特别注意到这个时间。
3.3收音机的显示模块设计
本次设计收音机的显示功能是通过LED八段数码管实现的,通过单片机控制数码管显示。这部分模块原理如图3-8所示。
15

