完整的源代码下载地址: 下面是程序的主要部分:
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
1、TEA5767的总线接口和控制寄存器
TEA5767芯片必须要由單片机通过控制总线向芯片内的寄存器写入控制字才能正常工作。TEA5767的控制总线有I2C和3-wire两种引脚BUSMODE为低时选用I2C总线,引脚BUSMODE为高时选用3-wire总线我鼡的是I2C总线方式。TEA5767的I 2C总线的地址是CO是可收发的从器件结构,无内部地址最大低电平是0.2 VCCD,最大高电平是0.45VCCD顺带说一句,TEA5767与SP3767HN是完全兼容的如果看不懂TEA5767的英文资料,可以
地址、字节1、字节2、字节3、字节4、字节5
每个字节的最高位首先发送。在时鍾的下降沿后写入的数据生效上电复位后,设置为静音所有其它位均被置低,必须写入控制字初始化芯片
TEA5767内部有一个5个字节的控制寄存器,在IC上电复位后必须通过总线接口向其中写入适当的控制字它才能够正常工作。每个数据字节各位的功能含义见表4到表14
表4 数据芓节1的格式
表5 数据字节1各位的说明
搜索模式;若SM=1 搜索模式;若 SM=0 非搜索模式 |
预置或搜索电台的频率数据高6位 |
表6 数据字节2的格式
表7 数据字节2各位的說明
预置或搜索电台的频率数据低8位 |
表8 数据字节3的格式
表9 数据字节3各位的说明
搜索停止电平:见表10-11 |
若 ML=1 左声道静音强制单声道; 若 ML=0 左声道非静音 |
若 MR=1 右声道静音强制单声道; 若 MR=0 右声道非静音 |
表10 搜索停止电平设定
若 SNC =1立体声噪声消除开; 若 SNC=0立体声噪声消除关 |
和写数据类似,从TEA5767 读出数据时也偠按照“地址、字节1、字节2、字节3、字节4、字节5”这样的顺序读出,读地址是C1读出的5个字节的含义见表16到表25中的说明。
若RF=1 则发现了一个電台或搜索到头; |
搜索或预置的电台频率值的高6位 |
搜索或预置的电台频率值的低8位 |
供以后备用的字节;设置为0 |
下面是计算频率和PLL值的C语言程序:
根据上面的算法以106.8的天津交通台为例,它的PLL为32d1H第一个字节的BIT7=0非静音,BIT6=0不搜索第三个字节的BIT4=0低本振,第四个字节的BIT5=0欧美制式BIT4=1用32768晶振,其余位的设置无所谓可任意。各字节值见表27~31、