新聞中心

        EEPW首頁 > 消費電子 > 設計應用 > 使用1602液晶顯示的實驗例子

        使用1602液晶顯示的實驗例子

        作者: 時間:2011-04-06 來源:網絡 收藏

        //讀狀態
        unsigned char ReadStatusLCM(void)
        {
        LCM_Data = 0xFF;
        LCM_RS = 0;
        LCM_RW = 1;
        LCM_E = 0;
        LCM_E = 0;
        LCM_E = 1;
        while (LCM_Data Busy); //檢測忙信號
        return(LCM_Data);
        }

        void LCMInit(void) //LCM初始化
        {
        LCM_Data = 0;
        WriteCommandLCM(0x38,0); //三次顯示模式設置,不檢測忙信號
        Delay5Ms();
        WriteCommandLCM(0x38,0);
        Delay5Ms();
        WriteCommandLCM(0x38,0);
        Delay5Ms();

        WriteCommandLCM(0x38,1); //顯示模式設置,開始要求每次檢測忙信號
        WriteCommandLCM(0x08,1); //關閉顯示
        WriteCommandLCM(0x01,1); //顯示清屏
        WriteCommandLCM(0x06,1); // 顯示光標移動設置
        WriteCommandLCM(0x0C,1); // 顯示開及光標設置
        }

        //按指定位置顯示一個字符
        void DisplayOneChar(unsigned char X, unsigned char Y, unsigned char DData)
        {
        Y = 0x1;
        X = 0xF; //限制X不能大于15,Y不能大于1
        if (Y) X |= 0x40; //當要顯示第二行時地址碼+0x40;
        X |= 0x80; //算出指令碼
        WriteCommandLCM(X, 0); //這里不檢測忙信號,發送地址碼
        WriteDataLCM(DData);
        }

        //按指定位置顯示一串字符
        void DisplayListChar(unsigned char X, unsigned char Y, unsigned char code *DData)
        {
        unsigned char ListLength;

        ListLength = 0;
        Y = 0x1;
        X = 0xF; //限制X不能大于15,Y不能大于1
        while (DData[ListLength]>0x20) //若到達字串尾則退出
        {
        if (X = 0xF) //X坐標應小于0xF
        {
        DisplayOneChar(X, Y, DData[ListLength]); //顯示單個字符
        ListLength++;
        X++;
        }
        }
        }

        //5ms延時
        void Delay5Ms(void)
        {
        unsigned int TempCyc = 5552;
        while(TempCyc--);
        }

        //400ms延時
        void Delay400Ms(void)
        {
        unsigned char TempCycA = 5;
        unsigned int TempCycB;
        while(TempCycA--)
        {
        TempCycB=7269;
        while(TempCycB--);
        };
        }


        上一頁 1 2 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 逊克县| 铁力市| 洛扎县| 宜兰县| 潮安县| 墨脱县| 阿拉善右旗| 达尔| 喀喇沁旗| 攀枝花市| 阜平县| 浦城县| 东乡县| 礼泉县| 泾源县| 景东| 阿图什市| 阜新| 泽普县| 蒲江县| 江津市| 常宁市| 垦利县| 镶黄旗| 尼玛县| 谷城县| 交口县| 博白县| 突泉县| 徐闻县| 侯马市| 衡南县| 宁陕县| 井冈山市| 望谟县| 天津市| 北安市| 东乡县| 长垣县| 桃源县| 沾化县|