新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 51單片機做的傳送機(輸送機)計數器

        51單片機做的傳送機(輸送機)計數器

        作者: 時間:2016-11-30 來源:網絡 收藏
        弟弟自己做了個傳送機輸送機),裝水泥省了不少勁,贊!!美中不足的是要一邊裝水泥還要一邊數著裝了多少袋,有時數忘了還要重數。于是把這個計數的任務交給了我。

        我用單片機結合數碼管做了一個,也捎帶著復習下去年學的單片機.在stc89c52單片機的P3.7管腳接一個行程開關,作為計數的開關,用單片機的P1.0-P1.7接一個共陽數碼管,作為00-99計數的十位數顯示,用單片機的P0.0-P0.7接一個共陽數碼管,作為00-99計數的個位數顯示。做出后效果不錯,下面是c程序源碼:

        #include

        unsigned char code table[]={0x3f,0x06,0x5b,0x4f,0x66,

        0x6d,0x7d,0x07,0x7f,0x6f};

        unsigned char Count;

        void delay1s(void)

        { unsigned char m,n,k;
        for(k=100;k>0;k--)
        for(m=30;m>0;m--)
        for(n=248;n>0;n--);
        }
        void delay10ms(void)
        {
        unsigned char i,j;
        for(i=20;i>0;i--)
        for(j=248;j>0;j--);
        }
        void main(void)
        {
        Count=0;
        P0=table[Count/10];
        P1=table[Count];
        while(1)
        { if(P3_7==0)
        {
        delay10ms();
        if(P3_7==0)
        { Count++;
        if(Count==100)
        {
        Count=0;
        }
        P1=table[Count/10];
        P0=table[Count%10];
        while(P3_7==0);
        delay1s();
        /* 延時1秒,兩袋水泥間隔大于1秒,避免出現誤動作 */
        }
        }
        }
        }

        本文引用地址:http://www.104case.com/article/201611/323792.htm





        評論


        技術專區

        關閉
        主站蜘蛛池模板: 阆中市| 延庆县| 洱源县| 和田市| 宁城县| 普兰店市| 昌乐县| 灵寿县| 武隆县| 孝感市| 龙江县| 石渠县| 江华| 桦南县| 平邑县| 镇雄县| 武安市| 临安市| 新野县| 南漳县| 高陵县| 高清| 海安县| 杨浦区| 桐乡市| 云梦县| 上饶县| 锡林郭勒盟| 西藏| 田林县| 肥西县| 莱州市| 平遥县| 海南省| 新巴尔虎右旗| 宿迁市| 双柏县| 股票| 唐河县| 鄂伦春自治旗| 遵化市|