新聞中心

        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 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 玉山县| 四子王旗| 卓尼县| 溆浦县| 兴山县| 兴安盟| 西乡县| 平昌县| 玉屏| 库尔勒市| 突泉县| 新民市| 锡林浩特市| 兴海县| 宁海县| 古田县| 舒城县| 义乌市| 扎鲁特旗| 塘沽区| 兰州市| 遵义县| 珠海市| 东山县| 虹口区| 汉阴县| 英山县| 杂多县| 高州市| 固原市| 新巴尔虎左旗| 侯马市| 佛冈县| 景谷| 梅河口市| 遂川县| 鹤壁市| 巫山县| 香格里拉县| 宁海县| 烟台市|