📄 ad9858.c
字号:
#include "AD9858.h"
#include "IO.h"
unsigned char RCount[21]={'1','0','0','0','0','0','0','0','0','0','0','0','1','1','1','1','1','0','1','0','0'};
unsigned char NCount[21]={'1','0','0','0','0','0','1','0','0','1','1','1','0','0','0','1','0','0','0','0','1'};
unsigned char FLatch[20]={'0','0','0','0','0','0','0','0','0','0','0','0','1','1','1','1','0','0','1','0'};
unsigned char Init[20]={'0','0','0','0','0','0','0','0','0','0','0','0','1','1','1','1','0','0','1','0'};
//=========================================================================================
//
//=========================================================================================
void Send21Bits(unsigned char* dat,unsigned char mode)
{
char cou;
if(mode)
cou = 21;
else
cou = 20;
CLR_PORTA(LMX_CLK);
while(cou--)
{
if(dat[cou])
SET_PORTA(LMX_DATA);
else
CLR_PORTA(LMX_DATA);
SET_PORTA(LMX_CLK);
CLR_PORTA(LMX_CLK);
}
SET_PORTA(LMX_LE);
CLR_PORTA(LMX_LE);
}
//=========================================================================================
//
//=========================================================================================
void SetLMX2316()
{
unsigned char dat[21];
SetBITMode;
//初始化 11 : 00000000000011110010
Send21Bits(Init,0);
//写R寄存器 00 : 100000000000111110100
Send21Bits(RCount,1);
//写N寄存器 10 : 100000100111000100001
Send21Bits(NCount,1);
//写F-Lantch 01 : 00000000000011110010
Send21Bits(FLatch,0);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -