LaunchPad+TEA5767=数字收音机(成果展示)
[复制链接]
经过调试和多次试验,简易数字收音机终于完成。程序有两个版本,可自动搜台后进入LPM3,而后等待P1中断唤醒并进行自动搜台,结束后再次进入LPM3;另一种是通过按键实现自动搜台,无低功耗模式。 在低功耗模式下,我串入电流表,测量电流500UA左右,最低时220UA。电源同时负载TEA5767和LaunchPad。 天线方面,我焊接一根杜邦线作为天线。 贴出main函数程序,全部源程序见附件 /******************************************************************************* 函数名:main() 输 入:无 输 出:无 功 能:调用初始化函数,完成自动搜台,进入LPM3,等待唤醒 说 明:可使用按键完成换台 *******************************************************************************/
void main( void ) { // 关闭看门狗 WDTCTL = WDTPW + WDTHOLD; Init(); //调用初始化函数 // Auto_Search(1); //自动搜台 LPM3; while(1) { if(flag) //判断flag是否置1,即是否经过中断 { flag = 0; //flag置0 Auto_Search(1); //自动搜台 delay_ms(50); LPM3; //进入LPM3 } // if(key_scan()) //调用按键检测函数 // { // Auto_Search(1); // }
} } 附上TEA5767的频率计算方法: 分频参数的计算公式为: 当HLSI位为1时 4*(fRF +fIF) N=---------------- fREF N = PLL内的频率合成参数; fRF = 要接收的电台频率; fIF = 中频= 225 kHz; fref = 参考频率 晶振为32.768 kHz参考频率为 32.768 kHz ; 晶振为13M或6.5M时钟时参考频率为50 kHz ; 已知模块的晶振为32.768K 4*(fRF +fIF) 4000*((fRF/1k)K +225 K) 4000*((fRF/1k) +225 ) N=----------------= ----------------------------------= ----------------------------= 32.768K 32768K 32768 1000*(fRF/1K +225) N=--------------------------- =(fRF+225K)/8192 8192 例如要接收87.5Mhz的频率,频率合成参数N=(87500000+225000)/8192 =10708.6=10709. 往PLL寄存器写10709就能收到87.5M的频率。 同理知道PLL的参数也可以计算模块正在接受的频率, fRF=8192*N-225K;
更加详细的寄存器设置,请对照程序和附件TEA5767.pdf。有兴趣的可以自己更改设置试试。
总结:由于按键只有一个,只调用了自动搜台,手动搜台未加入。收听直接接入耳机,未加入功放,待改进。无显示部分,待改进。 经验:调试过程中,天线是影响收音质量的关键环节。在卧室,只有忙音,但是到客厅或者公司(在郊外)就能很清楚的收听电台。 这次的DIY到此结束,希望大家多多交流,多多指教。
再加一句,这个板子的推广功能和硬件功能已经很好的体现,MSP430G2231这种低端、低功耗单片机,可以用作简易数码产品的制作,比如坛子里的触摸、低功耗时钟。
[ 本帖最后由 redzhch 于 2011-11-10 14:13 编辑 ]
|