原创 ADC7928简单配置

2013-1-21 11:54 2086 7 8 分类: MCU/ 嵌入式 文集: MCU

 

AD7928, 70 dB min SINAD at 50 kHz input frequency
Flexible power/serial clock speed management
No pipeline delays 
High speed serial interface SPI®/QSPI™/
MICROWIRE™/DSP compatible
这是AD7928datasheet上面的一段话,大致介绍了AD7928,这里提到没有通道延时,就是说转换结束就可以读取数据,不需等待,就可以输出结果。我的博客里面还有一个说AD转换器的文章(http://blog.chinaunix.net/uid-24343357-id-3218591.html),那个AD转换器,是有输出延时时间的。
看看管脚定义吧。
24343357_1341391584pdR4.jpg
24343357_134139159259vM.jpg
老样子,我不翻译英文了,我把比较重要的用红线标示出来了。
看看它的控制寄存器
24343357_1341391597BbIP.jpg
这是我给控制寄存器配置的数值,什么意思,自己看datasheet吧,很简单的啊。
看好下面的流程,就明白了,这个流程也是写程序的关键。
24343357_1341391608U6bx.jpg
Data is loaded from the DIN pin of the AD7908/AD7918/AD7928 on the falling edge of SCLK. The data is transferred on the DIN line at the same time that the conversion result is read from the part.就是说我们配置控制寄存器的时候,同时可以读取ADC转换结果。
下面我给出一段程序,网友可以自己修改,达到自己的要求。

点击(此处)折叠或打开

  1. #define DIN  P1.0
  2. #define DOUT P1.1
  3. #define SCLK P1.2
  4. #define CS   P1.3
  5. //我设置config_data=0x0833,
  6. //选择通道0.二进制输出。想修改通道,修改config_data相应的位就好了。
  7. //data_out是输出的结果,有16bit,后面12bit是ADC结果。
  8. void Configure_ADC7928(unsigned int config_data,unsigned int *data_out)
  9. {
  10.     DIN=1;
  11.     DOUT=1;
  12.     SCLK=1;
  13.     CS=1;
  14.     Delay(10);
  15.     CS=0;
  16.     for(char i=0;i<16;i++)
  17.     {
  18.     
  19.             if((config_data<<i)&0x0100)
  20.                 DIN=1;
  21.             else
  22.                 DIN=0;
  23.             Delay(10);
  24.             SCLK=0;
  25.             Delay(10);
  26.             SCLK=1;
  27.             Delay(10);
  28.             if(DOUT)
  29.                 *data_out=((*data_out)<<i)||0x0001;
  30.             else
  31.                 *data_out=((*data_out)<<i)&0xFFFE;
  32.             
  33.     }
  34.     CS=1;
  35. }
  36.  

文章评论1条评论)

登录后参与讨论

用户377235 2014-3-6 13:54

传回来的数据有地址位吗
相关推荐阅读
用户420394 2013-01-23 09:17
PCB走线信号分析3-串扰
先看串扰的一些概念,串扰是指信号在传输通道上传输时,因电磁耦合而对相邻传输线产生的影响。   变化的信号(如阶跃信号)沿传输线由A到B传播,传输...
用户420394 2013-01-23 09:16
PCB走线信号分析2-hyperlynx
传输线的反射- 先说几个信号完整性的经典语句 1:一个信号沿着传输线前进的每一步中,都会感觉到一个瞬间阻抗。听起来,感觉是在开汽车,都会感觉到路面的坑坑洼洼一...
用户420394 2013-01-23 09:16
PCB走线信号分析1-hyperlynx
昨天晚上原本还打算再介绍一下PADS如何设计自己的元器件和PCB封装,我到网络上看了一下,这个方面的有很多的教程,所以呢,我就不多说了,各位可以到网络上参考其他好心网友提供的教程,很...
用户420394 2013-01-21 12:06
CY7C68013自动下载固件驱动程序的配置
CY7C68013自动下载固件驱动程序的配置 EZ Loader Custom USB Firmware Loader Driver 上面的一串英文是cypress公司的一个文档名称,是讲...
用户420394 2013-01-21 12:01
ADUC842开发-初步概述
  简单介绍一下ADI公司的8052核心的单片机。   8052核心的,不用多说了吧,这个表可以大概的知道这个系列单片机的性能,注意,ADUC分频比可以是1,传统的8052都是1...
用户420394 2013-01-21 11:59
ADUC842开发-IIC接口
  今天简单介绍一下ADuC842的IIC接口。 ADUC842有专门的IIC接口,我们不需要使用IO去模拟IIC主机了,先看看IIC的寄存器   这里我说明一下,我们下面把...
我要评论
1
7
关闭 站长推荐上一条 /3 下一条