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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

用單片機(jī)定時(shí)中斷做個定時(shí)水循環(huán)系統(tǒng),代碼不報(bào)錯,時(shí)間和預(yù)想的不一樣

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:821461 發(fā)表于 2022-4-19 19:07 | 只看該作者 回帖獎勵 |倒序?yàn)g覽 |閱讀模式
求幫助!我用定時(shí)中斷做個定時(shí)水循環(huán)系統(tǒng),代碼沒報(bào)錯,但是關(guān)水泵的時(shí)間和預(yù)想的不一樣,請教大佬,我哪里弄錯了原定計(jì)劃是:5分鐘開, 30分鐘關(guān),這樣一直循環(huán)。
void time0_init(void)
{
        TMOD|=0X01;//選擇為定時(shí)器0模式,工作方式1
        TH0=0XFC;        //給定時(shí)器賦初值,定時(shí)1ms
        TL0=0X18;        
        ET0=1;//打開定時(shí)器0中斷允許
        EA=1;//打開總中斷
        TR0=1;//打開定時(shí)器               
}
void main()
{        
        time0_init();//定時(shí)器0中斷配置
//        beng=0;
        while(1)
        {                        

        }               
}


void time0() interrupt 1 //定時(shí)器0中斷函數(shù)
{
        static u16 i;//定義靜態(tài)變量i
        static u8 j;  //定義秒變量
        static u8 k;  //定義分鐘變量
        TH0=0XFC;        //給定時(shí)器賦初值,定時(shí)1ms
        TL0=0X18;
        i++;
        if(i==1000)                  //一秒的計(jì)時(shí)
        {
                i=0;
                j++;
        }               
        if(j==60)                  //一分鐘的計(jì)時(shí)
        {
                k++;
                j=0;
                i=0;
        }        
        if(k==5 && beng==0)          //到了5分鐘,并且水泵打開的情況下
        {
                beng=1;                          //關(guān)閉水泵
                k=0;
                i=0;
                j=0;
        }
        if(k==30 && beng==1)          //到了30分鐘,并且水泵關(guān)閉的情況下
        {
                beng=0;                          //打開水泵
                k=0;
                i=0;
                j=0;
        }                        
}


分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂1 踩
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:624769 發(fā)表于 2022-4-19 21:39 來自手機(jī) | 只看該作者
把定時(shí)器設(shè)置為10ms,i改成char 定100看看會不會準(zhǔn)點(diǎn)
回復(fù)

使用道具 舉報(bào)

板凳
ID:911455 發(fā)表于 2022-4-19 22:09 | 只看該作者
用的什么型號的單片機(jī),晶振頻率呢?說到底還初值賦的對不對,定義個輸出引腳,看下輸出周期對不對
回復(fù)

使用道具 舉報(bào)

地板
ID:213173 發(fā)表于 2022-4-20 05:37 | 只看該作者
  1. void time0() interrupt 1 //定時(shí)器0中斷函數(shù)
  2. {
  3.         static u16 i;//定義靜態(tài)變量i
  4.         static u8 j;  //定義秒變量
  5.         static u8 k;  //定義分鐘變量
  6.         TH0=0XFC;        //給定時(shí)器賦初值,定時(shí)1ms
  7.         TL0=0X18;
  8.         i++;
  9.         if(i==1000)                  //一秒的計(jì)時(shí)
  10.         {
  11.                 i=0;
  12.                 j++;               
  13.                 if(j==60)                  //一分鐘的計(jì)時(shí)
  14.                 {
  15.                         j=0;
  16.                         k++;
  17.                         if(k==35)k=0;               
  18.                 }               
  19.         }
  20.         if(k<5)beng=0;  //打開水泵
  21.         if(k>=5)beng=1; //關(guān)閉水泵
  22. }
復(fù)制代碼
回復(fù)

使用道具 舉報(bào)

5#
ID:821461 發(fā)表于 2022-4-20 10:01 | 只看該作者
感謝,wulin 、188610329、innere 各位大佬,已經(jīng)解決了。萬分感謝。
回復(fù)

使用道具 舉報(bào)

6#
ID:911455 發(fā)表于 2022-4-20 10:13 | 只看該作者
xiaosps 發(fā)表于 2022-4-20 10:01
感謝,wulin 、188610329、innere 各位大佬,已經(jīng)解決了。萬分感謝。

別光感謝啊,解決了說說是哪的原因啊?
回復(fù)

使用道具 舉報(bào)

7#
ID:821461 發(fā)表于 2022-4-20 17:49 | 只看該作者
innere 發(fā)表于 2022-4-20 10:13
別光感謝啊,解決了說說是哪的原因啊?

單片機(jī)是51的,晶振是12M,我原來的意思是想水泵工作5分鐘,休息30分鐘。
代碼成功燒錄后遇到的問題是,休息時(shí)間過長,工作時(shí)間太短。
使用的是wulin大佬的辦法解決的,我看了下應(yīng)該是我的判斷不對,導(dǎo)致重復(fù)判斷了。
回復(fù)

使用道具 舉報(bào)

8#
ID:1023659 發(fā)表于 2022-5-4 00:20 | 只看該作者
代碼主體沒問題,就是在判斷水泵開關(guān)的時(shí)候判斷反了,beng=1為關(guān),beng=0為開
回復(fù)

使用道具 舉報(bào)

9#
ID:593706 發(fā)表于 2022-5-5 17:06 | 只看該作者
用普通的單片機(jī)做定時(shí)器,不管程序?qū)懙亩嗝春茫刖_定時(shí)是不可能地,這是單片機(jī)的硬件和軟件同共造成的誤差,如果使用外部時(shí)鐘源,情況就會好很多,我以前用單片機(jī)內(nèi)部中斷做過電子鐘,每24小時(shí)誤差隨便都在15秒以上,用外部的時(shí)鐘源配合單片機(jī)做的時(shí)鐘,一個月的誤差不超過5秒
回復(fù)

使用道具 舉報(bào)

10#
ID:1026496 發(fā)表于 2022-5-15 10:55 | 只看該作者
static u16 i;//定義靜態(tài)變量i         static u8 j;  //定義秒變量         static u8 k;  //定義分鐘變量 中加入Volatile
回復(fù)

使用道具 舉報(bào)

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

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

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

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 欧美日在线 | 男女羞羞的网站 | 国内精品久久精品 | 户外露出一区二区三区 | 日韩一区二区在线视频 | 国产一区在线免费观看 | av大片在线 | 一区二区三区视频免费看 | 久久久精品日本 | 日韩美女一区二区三区在线观看 | 久久精品国产久精国产 | 韩国av一区二区 | 国产片侵犯亲女视频播放 | 区一区二区三在线观看 | 国产精品久久久久久妇女6080 | 亚洲欧美激情国产综合久久久 | 91日韩在线 | 国产va| 在线视频一区二区三区 | 日本午夜网 | 欧美日韩视频在线播放 | 日本精品久久 | 欧美视频免费在线 | 97影院2| 亚洲视频www| 日韩欧美在线一区二区 | 欧美精品一区二区三区在线播放 | 91久久精品日日躁夜夜躁国产 | 日韩一区二区三区在线视频 | 亚洲精品视频二区 | 精品国产1区2区3区 在线国产视频 | www.亚洲一区二区三区 | 日本一区二区电影 | 在线观看中文视频 | 深夜福利亚洲 | 亚洲成人三区 | 精品久久久久久久久久久 | 亚洲 精品 综合 精品 自拍 | 99久久精品一区二区成人 | 香蕉视频在线播放 | 99视频在线免费观看 |