tea5767.c

来自「用TEA5767 自己动手制作的收音机。效果很好」· C语言 代码 · 共 80 行

C
80
字号
#include<iom32v.h>
#include<macros.h>
#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();
}
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?