标题: 单片机太阳能电池数据采集系统Proteus仿真程序 [打印本页]

作者: ys416    时间: 2019-12-23 15:56
标题: 单片机太阳能电池数据采集系统Proteus仿真程序
太阳能电池数据采集系统仿真
基于proteus平台
有需要的自己下载哦!有问题可以一起交流~

仿真原理图如下(proteus仿真工程文件可到本帖附件中下载)


单片机源程序如下:
  1. #include <REGX51.H>
  2. #include <lcd1602.H>
  3. #include <adc0832.H>
  4. #include <intrins.H>
  5. #include <DS18B20.H>
  6. #define uint  unsigned int
  7. #define uchar unsigned char
  8. #define Rstd 100
  9. sbit Switch=P3^4;

  10. const uchar tab[16]={'0','1','2','3','4','5','6','7','8','9','a','b','c'};
  11. uchar tab2[16]={"welcom To system"};
  12. uchar tab1[16]={"               "};
  13. float res1,res2;
  14. uint R0,Ic;
  15. bit dog;
  16. void main()
  17. {        unsigned char *pt;
  18.         bit b;
  19.         uint i;
  20.         uint temp;
  21.         lcd_init();
  22.         display(tab2,0);
  23.         TMOD=0x01;
  24.         TH0=-5000/255;
  25.         TL0=-5000%255;
  26.         TR0=1;
  27.         ET0=1;
  28.         EA=1;
  29.         while(1)
  30.         {
  31.                 pt=ReadTemperature();
  32.                 temper_LCD(pt,tab1);
  33.                 if(++i==20){i=0;
  34.                         b=~b;
  35.                 }
  36.                 if(b){
  37.                 Switch=0;                delay(1);
  38.                 res1=A_D(0)*5.0/255;       
  39.                 R0=res1/(5-res1)*Rstd;
  40.                 }else{
  41.                 Switch=1;delay(1);
  42.                 res2=A_D(0)*5.0/255;       
  43.                 Ic=res2*1000.0/R0;
  44.                        
  45.                 }
  46.                 temp=res2*100;
  47.                 tab1[4]='C';
  48.                 tab1[5]=tab[temp/100%10];
  49.                 tab1[6]='.';
  50.                 tab1[7]=tab[temp/10%10];
  51.                 tab1[8]=tab[temp/1%10];       
  52.                 tab1[9]='V';
  53.                 temp=Ic;
  54.                 tab1[10]=tab[temp/1000];
  55.                 tab1[11]=tab[temp/100%10];
  56.                 tab1[12]=tab[temp/10%10];
  57.                 tab1[13]=tab[temp/1%10];       
  58.                 tab1[14]='m';
  59.                 tab1[15]='A';
  60.                 display(tab1,0x40);               

  61.         }
  62. }
复制代码


所有资料51hei提供下载:
太阳能电池数据采集.zip (138.55 KB, 下载次数: 151)



作者: 940135    时间: 2019-12-24 15:35
不错的资料
作者: HWL0541    时间: 2019-12-27 12:12
学习学习
作者: qweasdzxcvb    时间: 2020-2-24 08:46
请问仿真时候显示缺少元器件模块怎么办?
作者: 伊拾柒    时间: 2020-3-31 16:33
感谢分享,很好的资料!
作者: 666656458    时间: 2022-3-7 11:20
为啥不能用啊,会显示错误
作者: heicad    时间: 2022-3-8 00:00
666656458 发表于 2022-3-7 11:20
为啥不能用啊,会显示错误

我用Proteus8.8版本的可以打开,你换成我这个版本试试

51hei.gif (70.28 KB, 下载次数: 163)

51hei.gif

作者: 666656458    时间: 2022-3-15 17:23
哪位大佬帮我讲讲为啥这个探针会有两个值,除了电源的那个值是啥。
还有是怎么测电流的

作者: 666656458    时间: 2022-4-16 13:24
光照强度怎么样修改啊?




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1