標(biāo)題: STC如何使用AD端口檢測(cè)目前溫度? [打印本頁]

作者: wauuvs    時(shí)間: 2018-5-28 09:16
標(biāo)題: STC如何使用AD端口檢測(cè)目前溫度?
本帖最后由 wauuvs 于 2019-6-26 16:30 編輯

已解決,謝謝
作者: zhanghyg    時(shí)間: 2018-5-28 13:04

1、你datas的值被不停的覆蓋,導(dǎo)致你datas/5的值永遠(yuǎn)不可能跟AD_biao[shu]相等,你應(yīng)該再加一個(gè)變量求和。2、與其查表不如把datas帶入公式直接算出來?
作者: wauuvs    時(shí)間: 2018-5-28 14:49
zhanghyg 發(fā)表于 2018-5-28 13:04
1、你datas的值被不停的覆蓋,導(dǎo)致你datas/5的值永遠(yuǎn)不可能跟AD_biao[shu]相等,你應(yīng)該再加一個(gè)變量求和 ...

   你好,中午的時(shí)候,我稍微重新更改一下程序,您提到的第一個(gè)問題,我也發(fā)現(xiàn)了之后進(jìn)行了,修改加多個(gè)求和變量并調(diào)整了一下位置如下: 但是也是查詢不到,不知道是不是表的計(jì)算出現(xiàn)問題,我是按1024的來算,有些人說是按1023的來算
1.

void main()//把轉(zhuǎn)換結(jié)顯示在數(shù)碼管上
{
uint datas=0,datas_num=0;
int shu=0;
InitADC();
while(1)
  {
     for(mo=20;mo>0;mo--)//連取20次求平均值
     {
      datas = ADC(2);
      datas_num = datas_num+datas;   
     }
     datas= datas/20;
     for(shu=0;shu<100;shu++)
      {
       if(datas == AD_biao[shu])
        while(1)
         {
          display(shu%10,shu/10,10);
         }
      }
   }
}


第二個(gè)問題,您上面所說到的,我也想到,但是我這個(gè)程序主要要實(shí)現(xiàn)的是要查詢到當(dāng)前的溫度并顯示在數(shù)碼管上面,這個(gè)應(yīng)該只能按照查表的方式來實(shí)現(xiàn)吧
作者: wauuvs    時(shí)間: 2018-6-15 11:23
問題已解決




歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1