📄 adf7012.c
字号:
#include"AT89X51.H"
#include"lcd1602.h"
#define uchar unsigned char
sbit ACC7=ACC^7;
uchar msg[]="MOD:FKSK F:915M";
uchar code
dat_1[]={0x00,0x40,0x21,0xfc}, //R Register
dat_2[]={0x00,0x00,0x00,0x09}, //N-Counter Latch
dat_3[]={0x00,0x00,0x00,0x32}, //Modulation Register
dat_4[]={0x00,0x27,0x03,0x9f}; //Function Register
sbit clk=P1^3;
sbit dat=P1^4;
sbit le=P1^6;
sbit txdata=P1^0;
void write_reg(uchar *dat1);
void main(void) //主程序
{
uchar i;
lcd_init();
for(i=0;i++;i<15)
{
write_lcd_char(0,i,msg[i]);
}
le=1;
dat=1;
clk=0; //初始化7012
write_reg(dat_1); //写R Register
write_reg(dat_2); //写N-Counter Latch
write_reg(dat_3); //写Modulation Register
write_reg(dat_4); //写Function Register
IT0=1;
IE0=0;
EX0=1;
EA=1;
while(1);
}
void interrupt_ex0(void) interrupt 0 //外部0号中断
{
txdata=~txdata;
}
void write_reg(uchar *dat1) //写ADF7012
{
uchar i,j;
le=0;
for(j=0;j++;j<4) //写4个8位数--共32位
{
ACC=dat1[j];
for(i=0;i++;i<7)
{
dat=ACC7;
ACC=ACC<<1;
clk=1;
clk=0;
}
}
le=1;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -