久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

搜索
查看: 2395|回復(fù): 6
打印 上一主題 下一主題
收起左側(cè)

不知道這個(gè)單片機(jī)代碼的含義,煩大佬解答

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:770813 發(fā)表于 2020-6-14 10:08 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
void main(void)
{
  unsigned int OverCounter = 0;
  unsigned char ptemp;
  bit OverFlg = 0;
  unsigned int temp,ppress = 0;
  float  press;        
  while(1)
  {         
                     
  getdata=Adc0832(0);
if(14<getdata<243)                                       //當(dāng)壓力值介于15kpa到115kpa之間時(shí),遵循線性變換
{                           
int vary=getdata;                                                //y=(115-15)/(243-13)*X+15kpa                        
press=((10.0/23.0)*vary)+9.3;        //測(cè)試時(shí)補(bǔ)償值為9.3                                                                                                         
temp=(int)(press*10);                  //放大10倍,便于后面的計(jì)算
      if(temp != ppress)
      {
        ppress = temp;
        OverFlg = 1;
      }                                                                                            
dispbuf[3]=temp/1000;        //取壓力值百位
dispbuf[2]=(temp%1000)/100;        //取壓力值十位
dispbuf[1]=((temp%1000)%100)/10;          //取壓力值個(gè)位
dispbuf[0]=((temp%1000)%100)%10;        //取壓力值十分位
display();
      if (temp > 100)
      {
          if(OverFlg == 1)    //如果是新的一輛車通過(guò)
          {
            OverCounter++;
            WIICByte(W24C04ADD,0x01,(OverCounter/0xff));    //低位
            WIICByte(W24C04ADD,0x02,(OverCounter%0xff));    //高位
//            ptemp = printf("%f\n",OverCounter);
            OverFlg = 0;    //清除標(biāo)志
          }
      }
  }            
  }
}
是個(gè)小白,不能再白了,請(qǐng)大佬幫看看,講解下代碼含義,謝謝啦
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏1 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:673128 發(fā)表于 2020-6-14 17:36 | 只看該作者
用了模數(shù)轉(zhuǎn)換模塊,建議你從基礎(chǔ)學(xué),不要貪快,早晚你都會(huì)的。
回復(fù)

使用道具 舉報(bào)

板凳
ID:663230 發(fā)表于 2020-6-14 22:13 | 只看該作者
你用了ADC0832 D/A轉(zhuǎn)換芯片,
回復(fù)

使用道具 舉報(bào)

地板
ID:511890 發(fā)表于 2020-6-15 00:09 | 只看該作者
void main(void)
{
  unsigned int OverCounter = 0;
  unsigned char ptemp;
  bit OverFlg = 0;
  unsigned int temp,ppress = 0;
  float  press;        
  while(1)
  {         
                     
  getdata=Adc0832(0);//這個(gè)是一個(gè)函數(shù)。這個(gè)是寫內(nèi)存函數(shù)。應(yīng)該能在主函數(shù)外或者include包含的文件里找到實(shí)現(xiàn)。應(yīng)該是從A/D轉(zhuǎn)換器得到數(shù)據(jù),然后賦值給getdata
if(14<getdata<243)                                       //當(dāng)壓力值介于15kpa到115kpa之間時(shí),遵循線性變換
{

//下面三行是根據(jù)y=(115-15)/(243-13)*X+15kpa 這個(gè)公式處理數(shù)據(jù)。本來(lái)補(bǔ)償值是15,后來(lái)應(yīng)該是實(shí)測(cè)的時(shí)候?yàn)?.3 。得到的值應(yīng)該是車的重量                 
int vary=getdata;                                                //y=(115-15)/(243-13)*X+15kpa                        
press=((10.0/23.0)*vary)+9.3;        //測(cè)試時(shí)補(bǔ)償值為9.3                                                                                                         
temp=(int)(press*10);                  //放大10倍,便于后面的計(jì)算


      if(temp != ppress)//如果本次測(cè)到的數(shù)值和上一個(gè)數(shù)值不一致(這里的車應(yīng)該都是不同重量的),則OverFlg置1,表示有一輛新車開到測(cè)量?jī)x器上(可能是地磅之類的)
      {
        ppress = temp;
        OverFlg = 1;
      }   

//下面5行是進(jìn)行數(shù)值處理,然后顯示。顯示值為三位數(shù)+以為小數(shù)          
dispbuf[3]=temp/1000;        //取壓力值百位
dispbuf[2]=(temp%1000)/100;        //取壓力值十位
dispbuf[1]=((temp%1000)%100)/10;          //取壓力值個(gè)位
dispbuf[0]=((temp%1000)%100)%10;        //取壓力值十分位
display();//顯示函數(shù)。這個(gè)是寫內(nèi)存函數(shù)。應(yīng)該能在主函數(shù)外或者include包含的文件里找到實(shí)現(xiàn)。


//以下為判斷是否為車通過(guò)。(上面的實(shí)際重量press乘以10)也就是如果重量大于10(單位就要以實(shí)際為準(zhǔn)了),并且本次稱重和上一次稱重有變化(就是上面的OverFlg=1),
//那么就判斷通過(guò)的是車,然后累計(jì)總共過(guò)去了幾輛車OverCounter,并將累計(jì)數(shù)寫入到存儲(chǔ)器W24C04ADD里面。
      if (temp > 100)
      {
          if(OverFlg == 1)    //如果是新的一輛車通過(guò)
          {
            OverCounter++;
            WIICByte(W24C04ADD,0x01,(OverCounter/0xff));    //低位  //寫入內(nèi)存低位(一個(gè)位應(yīng)該是8bit的)  這個(gè)是寫內(nèi)存函數(shù)。應(yīng)該能在主函數(shù)外或者include包含的文件里找到實(shí)現(xiàn)。
            WIICByte(W24C04ADD,0x02,(OverCounter%0xff));    //高位  //寫入內(nèi)存高位(一個(gè)位應(yīng)該是8bit的)
//            ptemp = printf("%f\n",OverCounter);
            OverFlg = 0;    //清除標(biāo)志 //累計(jì)后OverFlg重置。
          }
      }
  }            
  }
}

評(píng)分

參與人數(shù) 1黑幣 +20 收起 理由
admin + 20 回帖助人的獎(jiǎng)勵(lì)!

查看全部評(píng)分

回復(fù)

使用道具 舉報(bào)

5#
ID:774633 發(fā)表于 2020-6-15 08:53 | 只看該作者
數(shù)模轉(zhuǎn)換,學(xué)一下模電的基礎(chǔ)部分。
回復(fù)

使用道具 舉報(bào)

6#
ID:282850 發(fā)表于 2020-6-15 09:01 | 只看該作者
Adc0832測(cè)壓力,顯示,IIC寫24C04eeprom
回復(fù)

使用道具 舉報(bào)

7#
ID:782419 發(fā)表于 2020-6-17 22:15 | 只看該作者
怎么說(shuō)呢,你飛的有點(diǎn)快,我學(xué)到AD用了大概半年的時(shí)間,中間還有好多不明白,重來(lái)了好多回,現(xiàn)在也只是知道有這么個(gè)概念,具體程序也寫不出來(lái),還是得慢慢來(lái)。
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

手機(jī)版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 日韩精品一区二区三区在线 | 日本粉嫩一区二区三区视频 | 国产香蕉视频 | 日韩三级免费观看 | 成人av电影网 | 午夜视频一区 | 久久久久国产一区二区三区 | 在线观看亚洲专区 | 中文字幕第5页 | 日韩av在线免费 | 成人深夜小视频 | 黄色日批视频 | 能看的av| 91精品国产综合久久久久久漫画 | 一区二区精品 | 超碰综合 | 性高朝久久久久久久3小时 av一区二区三区四区 | 日韩精品一区二区三区中文在线 | 男人天堂久久 | 91久久国产综合久久 | 日日日操 | 男女精品网站 | 欧美国产激情二区三区 | 国产一区二区三区四区 | 国产精品99| 欧洲在线视频 | 狠狠久久 | 久草免费在线视频 | 亚洲免费精品 | www.99热.com| 91大片| 亚洲成人午夜电影 | 96久久久久久 | 国产日韩在线观看一区 | 日韩伦理一区二区 | 日韩久久久久 | 国产一区二区三区四区五区加勒比 | 欧美精品黄 | 少妇一级淫片免费播放 | 欧美另类视频 | 青青草华人在线视频 |