TEA5767收音机模块的C51控制程序

11-20| http://www.dianzi6.com | 单片机学习|人气:308

TEA5767收音机模块的C51控制程序

  这几天做个案子,用到飞利浦的TEA5767的收音机模块,在网上搜了下相关的内容,发现很多人都在问,可是提供编程指导的很少,可能是高手都不屑回答这些小问题吧,在这里我把我的部分程序及TEA5767的相关资料放上来吧,给需要的人一些参考.(PS:无锡硅动力的SP3767和TEA5767完全兼容,有中文资料)

  TEA5767采用I2C或者三线接口控制,我是用的I2C,单片机用STC89C52,带1K EEPROM,可以掉电存台,1602LCD显示.

  TEA5767读写数据都是5个字节,其中PLL参数14位,具体数据格式请看datasheet.以下程序中的函数可以直接在主程序中调用.

  #include "iic.c"
  #define max_freq 108000
  #define min_freq 87500
  unsigned char radio_write_data[5]={0x29,0xc2,0x20,0x11,0x00};        //要写入TEA5767的数据
  unsigned char radio_read_data[5];        //TEA5767读出的状态
  unsigned int default_pll=0x29c2;//0x29f9;        //默认存台的pll,87.8MHz
  //unsigned int max_pll=0x339b;            //108MHz时的pll,
  //unsigned int min_pll=9000;            //70MHz时的pll

  void radio_write(void)
  {
  unsigned char i;
   iic_start();
    iic_write8bit(0xc0);        //TEA5767写地址
  if(!iic_testack())
  {
   for(i=0;i<5;i++)
  {
   iic_write8bit(radio_write_data[i]);
   iic_ack();
  }
   }
  _stop();   
  }

  //读TEA5767状态,并转换成频率
  void radio_read(void)
  {
    unsigned char i;
    unsigned char temp_l,temp_h;
    pll=0;
    iic_start();
    iic_write8bit(0xc1);        //TEA5767读地址
    if(!iic_testack())
    {
        for(i=0;i<5;i++)
        {
            radio_read_data[i]=iic_read8bit();
            iic_ack();
        }
 
  


如果觉得 TEA5767收音机模块的C51控制程序这篇文章不错,可以推荐给朋友分享哦。
本文Tags:单片机开发,单片机原理,单片机教程,单片机学习,
相关单片机学习资料


温馨提示; 本站的资料全部免费下载,为方便下次找到本站记得将本站加入收藏夹哦,牢记网址http://www.dianzi6.com

此页提供TEA5767收音机模块的C51控制程序单片机开发,单片机原理,单片机教程, 单片机学习参考。本站还有更多的单片机学习相关资料分享。
Copyright© www.dianzi6.com Inc. All rights reserved 。 1 2 3 4 5 6 7 8