如何使用AVR单片机写入TEA5767数据

如何使用AVR单片机写入TEA5767数据,第1张

#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();

}

}

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/dianzi/2592681.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-08-08
下一篇 2022-08-08

发表评论

登录后才能评论

评论列表(0条)

保存