资源简介
ADI芯片 锁相放大器驱动 已调试过,如有问题请私信

代码片段和文件信息
#include “ADA2200.h“
// _ooOoo_
// o8888888o
// 88“ . “88
// (| -_- |)
// O\ = /O
// ____/‘---*\____
// . * \\| |// ‘.
// / \\||| : |||// \
// / _||||| -:- |||||- \
// | | \\\ - /// | |
// | \_| **\---/** | |
// \ .-\__ ‘-‘ ___/-. /
// ___‘. .* /--.--\ ‘. . __
// .““ *< ‘.___\_<|>_/___.* >*““.
// | | : ‘- \‘.;‘\ _ /‘;.‘/ - ‘ : | |
// \ \ ‘-. \_ __\ /__ _/ .-‘ / /
//======‘-.____‘-.___\_____/___.-‘____.-*======
// ‘=---=*
//
// .............................................
// 佛祖保佑 永无BUG
u8 DataRead3[3];
void delayLoop2(unsigned int Time)
{
Time*=3;
while(Time--)
{
__nop();
}
}
void ada2200_GpioInit()
{
GPIO_InitTypeDef g;
g.GPIO_Mode=GPIO_Mode_Out_PP;
g.GPIO_Speed=GPIO_Speed_50MHz;
g.GPIO_Pin=GPIO_Pin_1;// DIN/DIO
GPIO_Init(GPIOB&g);
g.GPIO_Pin=GPIO_Pin_10;//CLK
GPIO_Init(GPIOB&g);
g.GPIO_Pin=GPIO_Pin_11;//CS
GPIO_Init(GPIOB&g);
}
void Write3bytesADA(u16 Reg u8 data)
{
int i=0;
Temp_CS000;
for(i=0; i<16; i++)
{
if(Reg & 0x8000)
{
DIN111;
}
else
{
DIN000;
}
Reg<<=1;
SCLOCK000;
delayLoop2(10);
SCLOCK111;
delayLoop2(10);
}
for(i=0;i<8;i++)
{
if((data & 0x80)==0)
{
DIN000;
}
else
{
DIN111;
}
data<<=1;
SCLOCK000;
delayLoop2(10);
SCLOCK111;
delayLoop2(10);
}
Temp_CS111;
}
void ReadFromRegADA(u16 Regunsigned char nByte) // nByte is the number of bytes which need to be read
{
int ij;
unsigned char temp;
DIN111;
Temp_CS000;
temp=0;
DataRead3[0]=0;
DataRead3[1]=0;
DataRead3[2]=0;
// DataRead[3]=0;
for(i=0; i<16; i++)
{
if(Reg & 0x8000)
{
DIN111;
}
else
{
DIN000;
}
Reg<<=1;
SCLOCK000;
delayLoop2(10);
SCLOCK111;
delayLoop2(10);
}
for(i=0; i {
for(j=0; j<8; j++)
{
SCLOCK000;
if(GPIO_ReadInputDataBit(GPIOBGPIO_Pin_1)==0)
{
temp=temp<<1;
}else
{
temp=temp<<1;
temp=temp+0x01;
}
delayLoop2(10);
SCLOCK111;
delayLoop2(10);
}
DataRead3[i]=temp;
temp=0;
}
Temp_CS111;
}
void ADA2200_Init()
{
ada2200_GpioInit();
delay_ms(1);
// Write2bytesADA(0X0000); //写串行接口
// WritebyteADA(0X24); //MSB优先 SDIO双向 SDO禁用 地址递增
// Write3bytesADA(0X00000X00);
// delay_ms(40);
// Write2bytesADA(0X0028); // 写模拟引脚配置
// WritebyteADA(0X01); // 外部时钟 差分输入
Write3bytesADA(0X00280X01);
delay_ms(40);
// Write2bytesADA(0X0029); //同步控制
// WritebyteADA(0X0D); //SYNCO close
Write3bytesADA(0X00290X0D);
delay_ms(40);
// Write2bytesADA(0X002A); //解调控制
// WritebyteADA(0X18); //移相关闭 RCLK使能 VOCM=0.5VDD
Write3bytesADA(0X002A0X1A);
delay_ms(40);
// Write2bytesADA(0X002
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 3359 2016-10-08 21:45 ADA2200\ADA2200.c
目录 0 2016-10-08 21:47 ADA2200\__Previews\
文件 19907 2016-10-08 21:45 ADA2200\__Previews\ada2200.hPreview
文件 487 2016-07-18 08:27 ADA2200\ada2200.h
目录 0 2016-10-08 21:47 ADA2200\
相关资源
- STM32F103RC+ADC+DMA多通道采样LCD显示
- I2C读写AT24C02 基于STM32F103 cube116540
- 基于stm32f103ve的程序——跑马灯实验
- 基于STM32RCT6的步进电机驱动程序
- stm32f407上的两个can发送和接收例程
- STM32 led 时钟
- STM32 2.4G通信例程
- 直流无刷电机方波驱动 stm32 例程代码
- STM32中文资料
- STM32蓝牙和串口程序
- STM32f103超声波模块例程
- stm32f103c8t6 4 oled.rar
- stm32f030 IAP Demo(原创)
- STM32基于rt_thread操作系统的SDHC卡文件
- NRF24L01实现51与STM32双向通讯
- STM32F103 串口程序(完整版)
- stm32 ds18b20 温度传感器 测试通过
- stm32官方例程
- STM32F103定时器中断程序
- [免费]基于stm32f103ze 的OLED驱动代码
- STM32F103RBT6驱动UC1698控制芯片的160160黑
- STM32F103 DS18B20 V3.5.0固件库驱动程序工
- STM32定时器使用入门。看了这个程序会
- SIM908 SDIO FSMC STM32 FIFO
- STM32F103 CC2500完整驱动(模拟SPI)
- AD7606采集程序
- stm32 用SPI 方式读写 SDHC
- stm32通过DMA方式采集ADC数据
- 意法半导体STM全系列微控制器STM32ST
- 基于STM32芯片的SX1278 驱动 LORA.rar
评论
共有 条评论