久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

標題: 常用lcd12864驅動 [打印本頁]

作者: mariclecreater    時間: 2021-1-20 09:19
標題: 常用lcd12864驅動
#include "lcd12864.h"
#include "intrins.h"
void Lcd12864_ByteShow_String(uint8 *str1)
        {         
                                while(*str1!='\0')
                                        {
                                          Lcd12864_Write_Data(*str1);
                                          str1++;
                                  }
                                                               
  }


void Lcd12864_Show_String(uint8 row, uint8 col,uint8 *str){
        uint8 *defaultValue = "parameter error" ;
        switch(row){
                case 1:
                                Lcd12864_Write_Cmd(0x80+col-1);//第一行第y個空格
                                while(*str!='\0')
                                        {
                                        Lcd12864_Write_Data(*str);
                                        str++;
                                 }
                                break;       
                case 2:
                                Lcd12864_Write_Cmd(0x90+col-1);//第二行第y個空格
                                while(*str!='\0'){
                                        Lcd12864_Write_Data(*str);
                                        str++;
                                }
                                break;
                case 3:
                                Lcd12864_Write_Cmd(0x88+col-1);//第一行第y個空格
                                while(*str!='\0'){
                                        Lcd12864_Write_Data(*str);
                                        str++;
                                }
                                break;       
                case 4:
                                Lcd12864_Write_Cmd(0x98+col-1);//第二行第y個空格
                                while(*str!='\0'){
                                        Lcd12864_Write_Data(*str);
                                        str++;
                                }
                                break;

           default:
                                   Lcd12864_Write_Cmd(0x00+0x80);//parameter error
                                while(*defaultValue!='\0'){
                                        Lcd12864_Write_Data(*defaultValue);
                                        defaultValue++;
                                }                                       
        }       
}


/******************************************************************************/
// 函數名稱:Lcd12864_Busy_Check
// 輸入參數:無
// 輸出參數:無
// 函數功能:LCD1602忙信號檢查
/******************************************************************************/
void Lcd12864_Busy_Check(void){
        uint8 tmp;
        lcdPort = 0xff;//一開始的時候,lcdPort設置成輸入狀態

        do{
                RS2 = 0;
                RW2 = 1;
                EN2 = 0;
                EN2 = 1;
                _nop_();
                _nop_();//延時CP
                tmp = lcdPort;
                _nop_();//延時PQ
                EN2 = 0;
                _nop_();
        }while(tmp&0x80);       
}


/******************************************************************************/
// 函數名稱:Lcd12864_Init
// 輸入參數:無
// 輸出參數:無
// 函數功能:LCD12864初始化
/******************************************************************************/
void Lcd12864_Init(void)
        {
        Lcd12864_Write_Cmd(0x30);//基本指令設置
        Lcd12864_Write_Cmd(0x01);//清屏
        Lcd12864_Write_Cmd(0x06);//顯示光標移動設置
        Lcd12864_Write_Cmd(0x0c);//顯示開及光標設置
        vout2 = 0;
        rst2 = 1;
}


/******************************************************************************/
// 函數名稱:Lcd12864_Write_Cmd
// 輸入參數:cmd
// 輸出參數:無
// 函數功能:LCD12864發送命令
/******************************************************************************/
void Lcd12864_Write_Cmd(uint8 cmd){
        Lcd12864_Busy_Check();//busycheck
        PSB2 = 1;
        RS2 = 0;
        RW2 = 0;
        EN2 = 0;

        EN2 = 1;
        _nop_();
        _nop_();
        lcdPort = cmd;
        _nop_();
        _nop_();
        EN2 = 0;
        _nop_();
        _nop_();               
}

/******************************************************************************/
// 函數名稱:Lcd12864_Write_Data
// 輸入參數:Data-寫入數據
// 輸出參數:無
// 函數功能:LCD12864寫一個字節數據
/******************************************************************************/
void Lcd12864_Write_Data(uint8 Data){
        Lcd12864_Busy_Check();//busycheck
        PSB2 = 1;
        RS2 = 1;
        RW2 = 0;
        EN2 = 0;

        EN2 = 1;
        _nop_();
        _nop_();
        lcdPort = Data;
        _nop_();
        _nop_();
        EN2 = 0;
        _nop_();
        _nop_();               
}


/******************************************************************************/
// 函數名稱:Lcd12864_Screen_Flash
// 輸入參數:無
// 輸出參數:無
// 函數功能:LCD12864屏幕閃爍
/******************************************************************************/
//void Lcd12864_Screen_Flash(void){
//        Lcd12864_Write_Cmd(0x08);
//        Delay400ms();Delay400ms();
//        Lcd12864_Write_Cmd(0x0c);
//        Delay400ms();Delay400ms();
//        Lcd12864_Write_Cmd(0x08);
//        Delay400ms();Delay400ms();
//        Lcd12864_Write_Cmd(0x0c);
//        Delay400ms();Delay400ms();               
//}


/******************************************************************************/
// 函數名稱:Lcd12864_Show_Specific_Symbol
// 輸入參數:無
// 輸出參數:無
// 函數功能:LCD12864顯示特殊符號
/******************************************************************************/
//void Lcd12864_Show_Specific_Symbol(void){
//        uint8 i;
//        Lcd12864_Write_Cmd(0x01);//清屏
//        for(i=0;i<32;i++){
//                Lcd12864_Write_Cmd(0x80+i); //顯示位置
//                Lcd12864_Write_Data(0x02+i);//顯示內容       
//        }       
//}

/******************************************************************************/
// 函數名稱:Lcd12864_Screen_Clear
// 輸入參數:無
// 輸出參數:無
// 函數功能:LCD12864清屏
/******************************************************************************/
void Lcd12864_Screen_Clear(void){
        Lcd12864_Write_Cmd(0x01);
}






歡迎光臨 (http://www.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 九九久久在线看 | 中文字幕视频网 | 亚洲免费观看视频网站 | 亚洲欧美激情国产综合久久久 | 久久久久久成人 | 国产精品国产a级 | 亚洲二区在线 | 亚洲精品久久国产高清情趣图文 | 蜜桃精品噜噜噜成人av | 精品综合久久久 | 色资源在线 | 日韩av第一页 | 黄色片在线观看网址 | 精品国产乱码久久久久久蜜柚 | 欧美色综合一区二区三区 | 亚洲国产精品一区 | 精品一区二区免费视频 | 91色在线| 韩国毛片一区二区三区 | 欧美激情国产日韩精品一区18 | 狠狠操狠狠搞 | 一区二区三区亚洲 | 韩国av网站在线观看 | 综合第一页 | 一区二区在线观看免费视频 | 日韩一区二区久久 | 一区二区三区精品视频 | 久久综合九色综合欧美狠狠 | 亚洲国产成人精品女人久久久 | 欧美一区二区三区在线视频 | 国产91丝袜在线播放 | 日韩成人在线观看 | 精品国产乱码久久久久久蜜臀 | 亚洲成人国产精品 | 亚洲天天干| 午夜精品久久久久久不卡欧美一级 | 中文天堂在线一区 | 久久一区二区免费视频 | 精品亚洲一区二区 | 91在线观看免费 | 日韩国产高清在线观看 |