一 C5513

u32 ADC5513_GetValue(void)
{
  u32 ADValue,i;
  bool data_bit = false;
  C5513_SCK=0;
  C5513_CS=0;
  if(GPIO_BitRead(C5513_SDO)==0u)
  {
    for (i = 0; i < 24; i++)
        {
          C5513_SCK = 1;
          data_bit = GPIO_BitRead(C5513_SDO);
          C5513_SCK=0;
          ADValue <<= 1;
          if(data_bit > 0)
            {
                ADValue|=0x00000001;
            }
            else
            {
                ADValue&=~0x00000001;
            }
    } 

ADValue &=~(1<<20)  ;/*有效位数为19位*/

Vout=ADValue*2.0*10000/2^19   /*有效电压是2.0,不是2.5V因为内部放大了0.8倍*/
    return ADValue;
  }
  else
  {
    return (0xffffffff);
  }
}

  1. #include <reg52.h>
  2. #include <intrins.h>
  3. #define uchar unsigned char
  4. #define uint unsigned int
  5. sbit ADCS=P2^0;
  6. sbit ADCLK=P2^1;
  7. sbit ADDO=P2^2;
  8. unsigned long int ADConv(void)
  9. {
  10. uchar i;
  11. unsigned long int Result=0;
  12. ADCLK=0;
  13. ADCS=0;
  14. _nop_();
  15. _nop_();
  16. _nop_();
  17. ADCLK=0;
  18. while(ADDO);
  19. ADCLK=1;
  20. _nop_();
  21. for(i=0;i<3;i++){
  22. ADCLK=0;
  23. _nop_();
  24. ADCLK=1;
  25. }
  26. for (i=0;i<20;i++){
  27. ADCLK=0;
  28. Result=Result<<1;
  29. if (ADDO)
  30. Result=Result+1;
  31. ADCLK=1;
  32. }
  33. ADCS=1;
  34. Result &=~(1<<20)  ;/*有效位数为19位*/
  35. Vout=Result*2.0*10000/2^19   /*有效电压是2.0,不是2.5V因为内部放大了0.8倍*/
  36. return Result;
  37. }

ADC5513的更多相关文章

随机推荐

  1. SpringBoot_Exception_01_No plugin found for prefix 'spring-boto' in the current project

    一.异常现象 spingbott项目在eclipse中执行maven命令:spring-boot:run, 出现异常: No plugin found for prefix 'spring-boto' ...

  2. 常见排序算法-php

    1.归并排序 $a = [1, 4, 6, 8, 10, 14, 16]; $b = [2, 3, 5, 8, 9, 11]; function merge_sort($a, $b) { $a_i = ...

  3. hdu-2169 Computer(树形dp+树的直径)

    题目链接: Computer Time Limit: 1000/1000 MS (Java/Others)     Memory Limit: 32768/32768 K (Java/Others) ...

  4. leetcode 307. Range Sum Query - Mutable(树状数组)

    Given an integer array nums, find the sum of the elements between indices i and j (i ≤ j), inclusive ...

  5. visual studio code使用MSVC编译C++

    环境 OS::Microsoft Windows [Version 10.0.17134.285] x64 VSC:Version:1.27.2 (system setup) VS:2017 心血来潮 ...

  6. 三台主机搭建LAMP(apache、mariadb、php)

    实验环境:均是CentOS7 httpd:172.16.254.88   2.4.6 PHP:172.16.250.140 5.4.16 mariadb:172.16.250.94 5.5.52 第三 ...

  7. 你所不知道的html5与html中的那些事(四)——文本标签

    文章简介:       关于html5相信大家早已经耳熟能详,但是他真正的意义在具体的开发中会有什么作用呢?相对于html,他又有怎样的新的定义与新理念在里面呢?为什么一些专家认为html5完全完成后 ...

  8. 正则表达式/i,/g,/ig,/gi,/m的含义

    正则表达式中/i,/g,/ig,/gi,/m的区别和含义 /i (忽略大小写)/g (全文查找出现的所有匹配字符)/m (多行查找)/gi(全文查找.忽略大小写)/ig(全文查找.忽略大小写)

  9. php array数组(第一部分)

    创建一个数组 <?php $arr = array("My","name","is","zhangsan"); e ...

  10. 简单的GTK窗体搭建

    #include<gtk/gtk.h> //必须引用gtk/gtk.h这个头文件 2 int main(int argc,char *argv[]) //标准c语言主函数的声明 3 { 4 ...