新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 單片機液晶顯示代碼

        單片機液晶顯示代碼

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

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

        //***************************************以下****************************************************

        void waitLcd() //just wait until 液晶不忙為止

        {

        char temp;

        bit flag=1;

        while(flag==1)

        {

        temp=XBYTE[rc];

        if (temp>>7==0) flag=0;

        P1=temp;

        }

        P1=0xff;

        }

        //just wait until 液晶不忙為止

        void WriteCommand_Lcd(bit isCheck,char c)

        {

        if (isCheck==1) waitLcd();

        XBYTE[wc]=c;

        }

        void writedata(char c)

        {

        waitLcd();

        XBYTE[wd]=c;

        }

        void LcdInit()

        {

        delay5ms();

        delay5ms();

        delay5ms();

        WriteCommand_Lcd(0,0x38); //三次顯示模式設置,不檢測忙信號

        delay5ms();

        WriteCommand_Lcd(0,0x38);

        delay5ms();

        WriteCommand_Lcd(0,0x38);

        delay5ms();

        WriteCommand_Lcd(1,0x38); //顯示模式設置,開始要求每次檢測忙信號,8位2行5*7

        WriteCommand_Lcd(1,0x08); //關閉顯示

        WriteCommand_Lcd(1,0x01); //清顯示

        WriteCommand_Lcd(1,0x06); // 文字不動,光標右移

        WriteCommand_Lcd(1,0x0C); // 顯示開及光標設置

        }

        void displayListChar(unsigned char X, unsigned char Y, uchar DData)

        {

        Y = 0x1;

        X = 0xF;

        if (X = 0xF)

        {

        Y = 0x1;

        X = 0xF;

        if (Y) X = 0x40;

        X = 0x80;

        WriteCommand_Lcd(0,X);

        writedata(dispbuf[DData]);

        }

        }

        //****************************************以上驅動*****************************************************

        //*************************************************

        //**********************************以下顯示時間*****************************************************

        void Show_Time(void)

        {

        displayListChar(0,0,hour/10);

        displayListChar(1,0,hour%10);

        displayListChar(2,0,10);

        displayListChar(3,0,minute/10);

        displayListChar(4,0,minute%10);

        displayListChar(5,0,10);

        displayListChar(6,0,second/10);

        displayListChar(7,0,second%10);

        }

        //**********************************以上顯示時間*****************************************************



        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 海南省| 古丈县| 县级市| 浙江省| 冀州市| 广河县| 钟祥市| 麦盖提县| 南昌市| 保亭| 沁水县| 承德县| 彰武县| 明水县| 大名县| 西贡区| 高阳县| 顺义区| 高雄县| 罗定市| 温州市| 榆社县| 得荣县| 泗阳县| 鄯善县| 临武县| 和林格尔县| 蒙阴县| 精河县| 台州市| 察隅县| 海盐县| 甘洛县| 兴国县| 普安县| 宜兰县| 静乐县| 青田县| 荥阳市| 凤台县| 巢湖市|