¶«»ªÀí¹¤´óѧ±ÏÒµÉè¼Æ£¨ÂÛÎÄ£© ²Î¿¼ÎÄÏ×
²Î¿¼ÎÄÏ×
[ 1 ] Íõ¸£ÈðµÈ.µ¥Æ¬Î¢»ú²â¿ØÏµÍ³Éè¼Æ´óÈ«.±±¾©º½¿Õº½Ìì´óѧ³ö°æÉ磬2007. [ 2 ] À.51ϵÁÐϵÁе¥Æ¬»úʵÓýӿڼ¼Êõ.±±¾©º½¿Õº½Ìì´óѧ³ö°æÉ磬2008 . [ 3 ] ·¶ó´¹û.¹¤¿Øµ¥Æ¬»úÔÀí¼°Ó¦ÓÃ.Ç廪´óѧ³ö°æÉ磬2007. [ 4 ] Áõ»ª¶«.µ¥Æ¬»úÔÀíÓëÓ¦ÓÃ.µç×Ó¹¤Òµ³ö°æÉ磬2006.
[ 5 ] Àî¹â·É.µ¥Æ¬»úC³ÌÐòÉè¼Æ.±±¾©º½¿Õº½Ìì´óѧ³ö°æÉ磬2009. [ 6 ] »ª³ÉÓ¢.Ä£Äâµç×Ó¼¼Êõ»ù´¡.¸ßµÈ½ÌÓý³ö°æÉç £¬2006.
[ 7 ] ¹ùÌìÏé.иÅÄî51µ¥Æ¬»úCÓïÑԽ̳Ì:ÈëÃÅ¡¢Ìá¸ß¡¢¿ª·¢¡¢ÍØÕ¹È«¹¥ÂÔ.±±¾©£ºµç×Ó¹¤Òµ³ö°æÉç.2009£¨01£©.
[ 8 ] ÕÅÓеµÈ.µ¥Æ¬Î¢ÐÍ»úÔÀí¡¢Ó¦ÓÃÓëʵÑé.ÉϺ££º¸´µ©´óѧ³ö°æÉç.2006. [ 9 ] ¿µ»ª¹â.¡¶µç×Ó¼¼Êõ»ù´¡¡·£¨Ä£Äⲿ·Ö µÚÎå°æ£© ¸ßµÈ½ÌÓý³ö°æÉ磬2006.
[ 10 ] Âí¼Ò³½ ËïÓñµÂ ÕÅÓ± ±à£º¡¶MCS-51µ¥Æ¬»úÔÀí¼°½Ó¿Ú¼¼Êõ¡·³ö°æÉ磬1998.
[ 11 ] PhilipsSemiconductors .TEA5767HN Datasheet.2002.
17
¹þ¶û±õ¹¤Òµ´óѧ ¶«»ªÀí¹¤´óѧ±ÏÒµÉè¼Æ£¨ÂÛÎÄ£© ¸½Â¼Ò»
¸½Â¼Ò»
ÔÀíͼ
VCC×Ô¶¯upR1470VCC×Ô¶¯downÊÖ¶¯upC3AT89S511234567891011121314151617181920P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7RST/VPDP3.0/RxDP3.1/TxDP3.2/INT0P3.3/INT1P3.4/T0P3.5/T1P3.6/WRP3.7/RDXTAL2XTAL1GNDVCCP0.0P0.1P0.2P0.3P0.4P0.5P0.6P0.7EA/VppALE/PROGPSENP2.7P2.6P2.5P2.4P2.3P2.2P2.1P2.04039383736353433323130292827262524232221R2470R3470R4470R5470R6470R7470R8470R91kR101kR111kPNPR121kPNPPNPCOM1COM2COM3COM4ABCDEFGDPÊÖ¶¯down10uf6.8kR18C4DATACLK30p 11.0592MHzC530pÌìÏßPNPTEA5767DATA1SDAANT10C81uTDA2822C12R156.8kR146.8kVCCC753BUSMODER_OUT8R2010k87665R1710k100uC1047uC1147uIN1-IN1+IN2+IN2-OUT1VCCOUT2GND123447uVCCVCCCLK2CLKMPX94W/RL_OUT7ÑïÉùÆ÷VCCGNDC60.1u ͼA ×ܵç·ͼ
18
¶«»ªÀí¹¤´óѧ±ÏÒµÉè¼Æ£¨ÂÛÎÄ£© ¸½Â¼¶þ
¸½Â¼¶þ
Ö÷Òª³ÌÐò
/*********************************************************************/
/* IIC¶Áд³ÌÐòоƬÐͺÅ*/
sbit I2C_SCK=P3^1; /*ʵʱʱÖÓʱÖÓÏßÒý½Å */ sbit I2C_SDA=P3^2; /*ʵʱʱÖÓÊý¾ÝÏßÒý½Å */
sbit k1=P1^0; sbit k2=P1^1; sbit k3=P1^2; sbit k4=P1^3;
/*****************************************************************************/
//¶ÁTEA5767״̬,²¢×ª»»³ÉƵÂÊ
void Radio_Read(void) {
unsigned char temp_l,temp_h; Pll_Data = 0;
IIC_Read(&radio_read_data[0],5); temp_l = radio_read_data[1]; temp_h = radio_read_data[0]; temp_h &= 0x3f;
Pll_Data = temp_h*256+temp_l; Get_Frequency(); }
/*****************************************************************************/
//×Ô¶¯ËÑ̨,mode=1,ƵÂÊÔö¼ÓËÑ̨; mode=\ƵÂʼõСËÑ̨\void Auto_Search(unsigned char mode) {
Radio_Read(); Get_Pll(); if(mode) {
radio_write_data[2] = 0xb1; if(Pll_Data > max_pll) {
19
¶«»ªÀí¹¤´óѧ±ÏÒµÉè¼Æ£¨ÂÛÎÄ£© ¸½Â¼¶þ
Pll_Data = min_pll; } } else {
radio_write_data[2] = 0x41; if(Pll_Data < min_pll) {
Pll_Data = max_pll; } }
radio_write_data[0] = Pll_Data/256+0x40; radio_write_data[1] = Pll_Data%6; radio_write_data[3] = 0x11; radio_write_data[4] = 0x40;
IIC_Write(&radio_write_data[0],5); Radio_Read();
while(!(radio_read_data[0]&0x80)) //RFµç̨¾ÍÐ÷±êÖ¾ {
Radio_Read(); } }
20