找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 3830|回复: 2
打印 上一主题 下一主题
收起左侧

51单片机max1241测试源程序与仿真 ADC精度0.01V

[复制链接]
跳转到指定楼层
楼主
自己用的ADC程序。用的MAX1241,注意我是PROTUES8.0仿真的。欢迎大家讨论,也希望给新手一个参考,精度0.01V
仿真原理图如下(proteus仿真工程文件可到本帖附件中下载)


单片机源程序如下:
  1. #include<reg51.h>
  2. sbit ADC_DOUT=P3^0;
  3. sbit ADC_CLK=P3^1;
  4. sbit ADC_CS=P3^2;
  5. extern void WriteAddress(unsigned char x,y);
  6. extern void LcdInitiate(void);
  7. extern void display(char *p);
  8. extern void WriteData(unsigned char y);
  9. unsigned char code bt[]=" Max1241 Test! ";
  10. unsigned char code sj[]="Now Date:     V";
  11. unsigned char S;
  12. unsigned char a,b,c;
  13. unsigned char tab[]="0123456789";
  14. unsigned int ADC_Data;
  15. int Read_Max1241()
  16. {
  17. char i;
  18. ADC_CLK=0;
  19. ADC_CS=0;
  20. ADC_Data=0;
  21. while(!ADC_DOUT);   //当CS=0后,开始转换,DOUT输出0,转换结束输出1,再要有一个时钟后才开始传输数据
  22. //start output the data
  23. ADC_CLK=1;
  24. ADC_CLK=0;

  25. //传输数据
  26. for(i=0;i<12;i++)
  27. {
  28.        ADC_CLK=1;
  29.        ADC_Data<<=1;
  30.        ADC_Data |= ADC_DOUT;
  31.        ADC_CLK=0;
  32. }

  33. ADC_CS=1;
  34. ADC_CLK=0;
  35. return  ADC_Data;
  36. }
  37. void ADC_COUNT()
  38. {
  39. S=(Read_Max1241()*0.00122070312)*100;
  40. a=S/100%10;
  41. b=S/10%10;
  42. c=S%10;
  43. WriteAddress(2,11);
  44. WriteData(tab[a]);
  45. WriteAddress(2,13);
  46. WriteData(tab[b]);
  47. WriteData(tab[c]);



  48. }
  49. void main()
  50. {
  51.   LcdInitiate();
  52.   WriteAddress(1,1);
  53.   display(bt);
  54.   WriteAddress(2,1);
  55.   display(sj);
  56.   WriteAddress(2,12);
  57. ……………………

  58. …………限于本文篇幅 余下代码请从51黑下载附件…………
复制代码

所有资料51hei提供下载:
max1241.zip (77 KB, 下载次数: 89)



评分

参与人数 1黑币 +50 收起 理由
admin + 50 共享资料的黑币奖励!

查看全部评分

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏1 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:291815 发表于 2018-4-13 17:25 | 只看该作者
很棒的资料,学习学习
回复

使用道具 举报

板凳
ID:332444 发表于 2023-6-7 14:45 | 只看该作者
稍做修正即无精度误差,且乘以小数的值是从哪里来的?我获取的小数是0.05/41*100

0.png (78.28 KB, 下载次数: 36)

0.png
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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