新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 用89C2051制作高可靠自動抽水裝置

        用89C2051制作高可靠自動抽水裝置

        作者: 時間:2012-07-07 來源:網絡 收藏


        點擊在新窗口中瀏覽產品

        軟件工作過程如下﹕
        接通電源后﹐首先檢測是否缺相﹐如果缺相﹐則LED1亮且報警﹐否則檢測是否缺水﹐如果缺水﹐則啟動電機抽水﹐抽水3分鐘后再次對水位進行檢測(注意﹐第二次檢測水位的時間要根據水池的大小來確定)﹐如果檢測結果依然缺水(如電機空轉等情況)﹐則停止抽水﹐LED6亮且報警。否則否則程序返回開始處﹐有條不紊地檢測是否缺相﹐是否水滿﹑是否超溫﹑是否過流等。
        原程序如下﹕
        ORG0000H
        AJMPSTART
        ORG0030H
        START:MOVP1,#0FFH
        MOVP3,#0FFH
        MAIN:JBP3.4,A4;是否缺相﹐若缺相﹐則轉A4處。
        JNBP3.0,A0;是否缺水﹐若缺水﹐則轉A0處。
        JBP3.1,A1;是否水滿﹐若水滿﹐則轉A1處。
        JBP3.2,A2;是否超溫,若超溫﹐則轉A2處。
        JBP3.3,A3;是否過流﹐若過流﹐則轉A3處。
        AJMP MAIN
        NOP﹔PC出錯處理
        NOP
        NOP
        LJMP START
        A0: ACALLDELAY100MS
        JB P3.0,MAIN
        MOVP1,#E3H;星形啟動﹐抽水指示燈亮
        ACALLDELAY8s;延時8秒
        MOVP1,#E5H;三角形啟動
        ACALLDELAY3m;三角形啟動后再延時3分鐘
        JNBP3.0,A5;抽水3分鐘后若P3.0依然為低電位﹐則水位異常。
        AJMPMAINA1:ACALLDELAY100MS
        JNBP3.1,MAIN
        MOV P1,#0FFH;停止抽水﹐抽水指示燈滅。
        CPL P3.5;水滿知指示燈亮。
        AJMPAA2:
        ACALLDELAY100MS
        JNB P3.2,MAIN
        MOV p1,#0BEH;停止抽水﹐超溫指示燈亮﹐報警
        SJMP $;等待處理
        A3:ACALLDELAY100MS
        JNBP3.3,MAIN
        MOV P1,#0DEH;停止抽水﹐過流指示燈亮﹐報警
        SJMP $;等待處理
        A4:ACALLDELAY100MS;防止誤取樣
        JNBP3.4,MAIN
        MOV P1,#7EH;停止抽水﹐缺相指示燈亮﹐報警
        SJMP $;等待處理A5:
        MOV P1,#FEH;停止抽水﹐報警
        CPL P3.7;水位異常指示燈亮
        SJMP $;等待處理
        DELAY100ms:MOVR7,#248
        D1:MOVR6,#200
        D2:DJNZR6,D2
        DJNZR7,D1
        RETDELAY8s:MOVR0,#80
        ACALLDELAY100ms
        DJNZR0,DELAY8S
        RETDELAY3M:MOVR1,#23
        ACALLDELAY8S
        DJNZR1,DELAY3M
        RET
        END


        上一頁 1 2 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 巨鹿县| 金华市| 安阳市| 贵定县| 丰镇市| 兴安盟| 布拖县| 西林县| 沙湾县| 清水河县| 霍林郭勒市| 汾阳市| 晋州市| 泾阳县| 揭东县| 项城市| 司法| 青龙| 双牌县| 平和县| 新竹县| 内江市| 凤山市| 中牟县| 泽普县| 临沭县| 宜春市| 易门县| 莎车县| 游戏| 正阳县| 永登县| 漾濞| 定日县| 平乡县| 永昌县| 平罗县| 舟曲县| 靖边县| 宜兰县| 堆龙德庆县|