?? 4154.c
字號:
#include <reg52.h>
#include <intrins.h>
#include <string.h>
#define uchar unsigned char
#define uint unsigned int
sbit SCL=P1^1; //時鐘
sbit DATA=P1^2; //數(shù)據(jù)
sbit LE=P1^3; //數(shù)據(jù)
uchar data0;
//延時程序
void ADf4154_delay(int time)
{
int i;
for(i = 0; i < time; i++)
{
_nop_();
_nop_();
_nop_();
_nop_();
}
}
//寫N寄存器
void ADf4154_SendN(uchar Ndata1)
{
uint i;
for(i=0;i<22;i++)
{
if((Ndata1&0x400000)==1)
DATA=1;
else
DATA=0;
Ndata1=(Ndata1<<1);
SCL=1;
ADf4154_delay(2);
SCL=0;
}
DATA=0;
SCL=1;
ADf4154_delay(2);
SCL=0;
DATA=0;
SCL=1;
ADf4154_delay(2);
SCL=0;
LE=1;
ADf4154_delay(5);
LE=0;
}
//寫R寄存器
void ADf4154_SendR(uchar Rdata1)
{
uint i;
for(i=0;i<22;i++)
{
if((Rdata1&0x400000)==1)
DATA=1;
else
DATA=0;
Rdata1=(Rdata1<<1);
SCL=1;
ADf4154_delay(2);
SCL=0;
}
DATA=0;
SCL=1;
ADf4154_delay(2);
SCL=0;
DATA=1;
SCL=1;
ADf4154_delay(2);
SCL=0;
LE=1;
ADf4154_delay(5);
LE=0;
}
//寫控制寄存器
void ADf4154_SendC(uchar Cdata1)
{
uint i;
for(i=0;i>14;i++)
{
if((Cdata1&0x4000)==1)
DATA=1;
else
DATA=0;
Cdata1=(Cdata1<<1);
SCL=1;
ADf4154_delay(2);
SCL=0;
}
DATA=1;
SCL=1;
ADf4154_delay(2);
SCL=0;
DATA=0;
SCL=1;
ADf4154_delay(2);
SCL=0;
LE=1;
ADf4154_delay(5);
LE=0;
}
//寫噪聲寄存器
void ADf4154_SendSN(uchar SNdata1)
{
uint i;
for(i=0;i<9;i++)
{
if((SNdata1&0x0100)==1)
DATA=1;
else
DATA=0;
SNdata1=(SNdata1<<1);
SCL=1;
ADf4154_delay(2);
SCL=0;
}
DATA=1;
SCL=1;
ADf4154_delay(2);
SCL=0;
DATA=1;
SCL=1;
ADf4154_delay(2);
SCL=0;
LE=1;
ADf4154_delay(5);
LE=0;
}
//初始化
void ADf4154_init()
{
SCL=0;
ADf4154_delay(2);
DATA=0;
ADf4154_delay(2);
LE=0;
ADf4154_delay(2);
}
void main()
{
ADf4154_init();
ADf4154_SendN(2093056);
ADf4154_SendR(1175567);
ADf4154_SendC(251);
ADf4154_SendSN(224);//LOW NOISE AND SPUR MODE
while(1);
}
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -