×
单片机 > 单片机程序设计 > 详情

AVR控制TEA5767 C语言程序

发布时间:2020-06-04 发布时间:
|

#include
#include
#define uchar unsigned char 
#define uint unsigned int 
#define ulong unsigned long 
void delay()
{
      uint i=0;
      for (i=0;i<2000;i++)
      ;
}
unsigned char radio_write_data[5]={0x69,0x28,0xa0,0x13,0x00};   //要写入TEA5767的数据
void inputbyte(uchar CD)  //写入一字节数据
{
        uchar i,mid=0;
        for (i=0;i<8;i++)
       {
             mid=CD&0x80;
             if (mid==0)
             PORTC&=~BIT(PA0);
             else 
            PORTC|=BIT(PA0);
            PORTC|=BIT(PA1); 
           delay();
           PORTC&=~BIT(PA1);
           delay();
           CD=CD<<1;
     }
}
long radio=87000000;
int N=0;
void GetKey(void) 

           if(!(PINA&0x20)){
           radio+=100000;
           if (radio>108000000)
           radio=87000000;
           N=(long)((radio-225000)*4)/32768;
           PORTC|=BIT(PA2); 
           inputbyte(N>>8);
           inputbyte(N);
           inputbyte(0xa0);
           inputbyte(0x13);
           inputbyte(0x00);
           PORTC&=~BIT(PA2);
           delay();
  
           }
           else if(!(PINA&0x10)){
           radio-=100000;
           if (radio<87000000)
           radio=108000000;
           N=(long)((radio-225000)*4)/32768;
           PORTC|=BIT(PA2); 
           inputbyte(N>>8);
           inputbyte(N);
           inputbyte(0xa0);
           inputbyte(0x13);
           inputbyte(0x00);
           PORTC&=~BIT(PA2);
           delay();
        }
  
  
}

void main()
{
       uchar i=0;
       DDRC=0xff;
       DDRA=0x00;
       PORTA=0xff;
        delay();
       //PORTC|=BIT(PA3); 
       PORTC|=BIT(PA4); 
      while(1)
      {
                GetKey();
       }
}



『本文转载自网络,版权归原作者所有,如有侵权请联系删除』

热门文章 更多
51单片机CO2检测显示程序解析