找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1987|回复: 2
收起左侧

12位高精度mcp3208做单片机电压测量,用过的请点击进入交流

[复制链接]
回帖奖励 300 黑币 回复本帖可获得 100 黑币奖励! 每人限 3 次(中奖概率 80%)
ID:245521 发表于 2018-8-6 15:47 | 显示全部楼层 |阅读模式
鄙人在做电压测量一个项目,用到了mcp3208。在测试1、2、3、4、5V时只有0、1、2示数正确。3、4、5分别显示00、01、02。
网上的参考资料比较少,所以想问问大家这款12位高精度AD芯片你们用过吗?
111.jpg

程序代码我已经删减到最简洁了:
  1. #include "reg51.h"
  2. #include "stdio.h"
  3. sbit    ADCS  =  P1^3;   
  4. sbit    DIN   =  P1^2;   
  5. sbit    DOUT  =  P1^1;   
  6. sbit    CLK   =  P1^0;
  7. float getdata;
  8. float t;
  9. char sum[12];
  10. unsigned char s[]="Hello";
  11. void Output_Control(char TempChar)   
  12. {   
  13.                 unsigned int Mask = 0x10;  
  14.                 unsigned char Count;   
  15.     for(Count = 0;Count<5;Count++)  
  16.     {  
  17.      DIN = 0;   
  18.         if(TempChar&Mask)   
  19.         {   
  20.             DIN = 1;   
  21.         }
  22.                                 CLK = 1;   
  23.         Mask >>= 0x01;   
  24.         CLK = 0;
  25.                 }
  26. }
  27. float trans(char a[12]){
  28.         int i, num = 0;
  29.                 for(i=11; i>=0; i--)
  30.                 {
  31.                 num*=2;
  32.                 num+=a[i]-'0';
  33.                 }
  34.                 return num;
  35. }
  36. float Input_Data()   
  37. {   
  38.     unsigned char Count;      
  39.     CLK = 1;   
  40.     CLK = 0;   
  41.     for(Count = 0;Count <12;Count++)   
  42.     {   
  43.         sum[Count]=DOUT;      
  44.         CLK = 1;   
  45.         CLK = 0;   
  46.     }   
  47.     return(trans(sum));   
  48. }
  49. void main(void)  
  50. {
  51.     ADCS = 1;   
  52.     while(1)   
  53.     {   
  54.         ADCS = 0;   
  55.         Output_Control((char)0x18);  
  56.                     getdata=Input_Data();
  57.         ADCS = 1;   
  58.                                 t=(5*getdata/8191);
  59.                                 P2=t;
  60.     }
  61. }
复制代码



评分

参与人数 1黑币 +5 收起 理由
出生牛犊 + 5 赞一个!

查看全部评分

回复

使用道具 举报

ID:245521 发表于 2018-8-6 17:08 | 显示全部楼层
各位想必都用过了吧?还请大家不吝赐教
回复

使用道具 举报

ID:245521 发表于 2018-8-6 22:48 来自手机 | 显示全部楼层
有人吗
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表