新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 基于51單片機的單通道頻率計1602顯示

        基于51單片機的單通道頻率計1602顯示

        作者: 時間:2016-11-29 來源:網絡 收藏
        /*內容:T0外部計數,T1計時1S,計算1S內外部脈沖個數,

        并在1602液晶顯示頻率:單位時間內完成振動的次數*/
        #include
        #include
        #include
        #define uchar unsigned char
        #define CHECK_BUSY
        sbit RS = P2^4; //定義端口
        sbit RW = P2^5;
        sbit EN = P2^6;
        bit OVERFLOWFLAG;
        bit TIMERFLAG;
        void DelayMs(uchar t)
        {
        int x,y;
        for (x=t;x>0;x--)
        for(y=110;y>0;y--);

        }
        /*判忙函數*/
        bit LCD_Check_Busy(void)
        {
        #ifdef CHECK_BUSY
        P0= 0xFF;
        RS=0;
        RW=1;
        EN=0;
        _nop_();
        EN=1;
        return (bit)(P0 & 0x80);
        #else
        return 0;
        #endif
        }
        /*寫入命令函數*/
        void write_Com(uchar com)
        {
        while(LCD_Check_Busy()); //忙則等待
        RS=0;
        RW=0;
        EN=1;
        P0= com;
        _nop_();
        EN=0;
        }
        /*寫入數據函數*/
        void write_dat(uchar dat)
        {
        while(LCD_Check_Busy()); //忙則等待
        RS=1;
        RW=0;
        EN=1;
        P0= dat;
        _nop_();
        EN=0;
        }
        /*清屏函數*/
        void LCD_Clear(void)
        {
        write_Com(0x01);
        DelayMs(5);
        }
        /*寫入字符函數*/


        上一頁 1 2 下一頁

        評論


        技術專區

        關閉
        主站蜘蛛池模板: 武宁县| 嵊州市| 宝丰县| 历史| 龙江县| 郓城县| 阿拉善右旗| 甘谷县| 蕲春县| 沂水县| 车险| 梧州市| 怀来县| 申扎县| 博爱县| 湾仔区| 舟山市| 固安县| 莱州市| 长春市| 天等县| 九龙城区| 始兴县| 罗甸县| 深州市| 绥化市| 沙坪坝区| 正宁县| 融水| 白河县| 南华县| 兴仁县| 延安市| 新丰县| 治县。| 莆田市| 新竹县| 遵义县| 永康市| 石林| 靖安县|