⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 e20_lcd.c

📁 HSAV DR53E CF卡MP3录放板应用编程源代码
💻 C
📖 第 1 页 / 共 2 页
字号:
#include "E20_main.h"           

CONST_CHAR TabDIP_ASCII[] = {
    0x00,0x00, 0x00,0x00, 0x00,0x00,   /*   */ 
    0x00,0x00, 0xbf,0x00, 0x00,0x00,   /* ! */ 
    0x00,0x03, 0x00,0x03, 0x00,0x00,   /* " */ 
    0x24,0xf4, 0x2f,0xf4, 0x2f,0x24,   /* # */ 
    0xc6,0x89, 0xff,0x91, 0x63,0x00,   /* $ */ 
    0x06,0xc9, 0x36,0x6c, 0x93,0x60,   /* % */ 
    0x70,0x8e, 0xb9,0x4e, 0xb8,0x80,   /* & */ 
    0x02,0x01, 0x00,0x00, 0x00,0x00,   /* ' */ 
    0x00,0x00, 0x00,0x7e, 0x81,0x00,   /* ( */ 
    0x00,0x00, 0x81,0x7e, 0x00,0x00,   /* ) */ 
    0x24,0x18, 0x7e,0x18, 0x24,0x00,   /* * */ 
    0x08,0x08, 0x7f,0x08, 0x08,0x00,   /* + */ 
    0x00,0x80, 0x00,0x00, 0x00,0x00,   /* , */ 
    0x08,0x08, 0x08,0x08, 0x08,0x00,   /* - */ 
    0x00,0x80, 0x00,0x00, 0x00,0x00,   /* . */ 
    0x00,0xe0, 0x18,0x07, 0x00,0x00,   /* / */ 
    0x7e,0x81, 0x81,0x81, 0x7e,0x00,   /* 0 */ 
    0x00,0x82, 0xff,0x80, 0x00,0x00,   /* 1 */ 
    0xc6,0xa1, 0x91,0x89, 0x86,0x00,   /* 2 */ 
    0x42,0x81, 0x89,0x89, 0x76,0x00,   /* 3 */ 
    0x10,0x2c, 0x22,0xff, 0xa0,0x00,   /* 4 */ 
    0x4f,0x89, 0x89,0x89, 0x71,0x00,   /* 5 */ 
    0x7e,0x89, 0x89,0x8b, 0x70,0x00,   /* 6 */ 
    0x03,0x01, 0xf9,0x07, 0x01,0x00,   /* 7 */ 
    0x76,0x89, 0x89,0x89, 0x76,0x00,   /* 8 */ 
    0x0e,0xd1, 0x91,0x91, 0x7e,0x00,   /* 9 */ 
    0x00,0x00, 0x84,0x00, 0x00,0x00,   /* : */ 
    0x00,0x00, 0x88,0x00, 0x00,0x00,   /* ; */ 
    0x00,0x08, 0x14,0x22, 0x41,0x80,   /* < */ 
    0x24,0x24, 0x24,0x24, 0x24,0x00,   /* = */ 
    0x00,0x80, 0x41,0x22, 0x14,0x08,   /* > */ 
    0x06,0x01, 0xb1,0x09, 0x06,0x00,   /* ? */ 
    0x7e,0x81, 0xb9,0xa5, 0xbe,0x00,   /* @ */ 
    0x80,0xf8, 0x27,0x3c, 0xe0,0x80,   /* A */ 
    0x81,0xff, 0x89,0x89, 0x76,0x00,   /* B */ 
    0x7e,0x81, 0x81,0x81, 0x43,0x00,   /* C */ 
    0x81,0xff, 0x81,0x81, 0x7e,0x00,   /* D */ 
    0x81,0xff, 0x89,0x9d, 0xc3,0x00,   /* E */ 
    0x81,0xff, 0x89,0x1d, 0x03,0x00,   /* F */ 
    0x3c,0x42, 0x81,0x91, 0x73,0x10,   /* G */ 
    0x81,0xff, 0x08,0x08, 0xff,0x81,   /* H */ 
    0x81,0x81, 0xff,0x81, 0x81,0x00,   /* I */ 
    0x80,0x01, 0x01,0xff, 0x01,0x01,   /* J */ 
    0x81,0xff, 0x89,0x34, 0xc3,0x81,   /* K */ 
    0x81,0xff, 0x81,0x80, 0x80,0xc0,   /* L */ 
    0xff,0x0f, 0xf0,0x0f, 0xff,0x00,   /* M */ 
    0x81,0xff, 0x8c,0x31, 0xff,0x01,   /* N */ 
    0x7e,0x81, 0x81,0x81, 0x7e,0x00,   /* O */ 
    0x81,0xff, 0x89,0x09, 0x06,0x00,   /* P */ 
    0x7e,0xa1, 0xa1,0xc1, 0x7e,0x00,   /* Q */ 
    0x81,0xff, 0x89,0x19, 0xe6,0x80,   /* R */ 
    0xc6,0x89, 0x89,0x91, 0x63,0x00,   /* S */ 
    0x03,0x81, 0xff,0x81, 0x03,0x00,   /* T */ 
    0x01,0x7f, 0x80,0x80, 0x7f,0x01,   /* U */ 
    0x01,0x1f, 0xe0,0x38, 0x07,0x01,   /* V */ 
    0x07,0xf8, 0x0f,0xf8, 0x07,0x00,   /* W */ 
    0x81,0xe7, 0x18,0xe7, 0x81,0x00,   /* X */ 
    0x01,0x87, 0xf8,0x87, 0x01,0x00,   /* Y */ 
    0x83,0xe1, 0x99,0x87, 0xc1,0x00,   /* Z */ 
    0x00,0x00, 0xff,0x81, 0x81,0x00,   /* [ */ 
    0x00,0x03, 0x0c,0x70, 0x80,0x00,   /* \ */ 
    0x00,0x81, 0x81,0xff, 0x00,0x00,   /* ] */ 
    0x00,0x04, 0x02,0x04, 0x00,0x00,   /* ^ */ 
    0x80,0x80, 0x80,0x80, 0x80,0x80,   /* _ */ 
    0x00,0x00, 0x02,0x00, 0x00,0x00,   /* ` */ 
    0x00,0x50, 0xa8,0xa8, 0xf0,0x80,   /* a */ 
    0x01,0xff, 0x88,0x88, 0x70,0x00,   /* b */ 
    0x00,0x70, 0x88,0x88, 0x98,0x00,   /* c */ 
    0x00,0x70, 0x88,0x89, 0xff,0x80,   /* d */ 
    0x00,0x70, 0xa8,0xa8, 0xb0,0x00,   /* e */ 
    0x00,0x88, 0xfe,0x89, 0x89,0x01,   /* f */ 
    0x00,0xd0, 0xa8,0xa8, 0x98,0x08,   /* g */ 
    0x81,0xff, 0x88,0x08, 0xf0,0x80,   /* h */ 
    0x00,0x88, 0xf9,0x80, 0x00,0x00,   /* i */ 
    0x00,0x00, 0x08,0xf9, 0x00,0x00,   /* j */ 
    0x81,0xff, 0xa0,0x38, 0xc8,0x88,   /* k */ 
    0x81,0x81, 0xff,0x80, 0x80,0x00,   /* l */ 
    0xf8,0x08, 0xf8,0x08, 0xf0,0x00,   /* m */ 
    0x88,0xf8, 0x88,0x08, 0xf0,0x80,   /* n */ 
    0x00,0x70, 0x88,0x88, 0x70,0x00,   /* o */ 
    0x08,0xf8, 0x88,0x88, 0x70,0x00,   /* p */ 
    0x00,0x70, 0x88,0x88, 0xf8,0x00,   /* q */ 
    0x88,0xf8, 0x90,0x08, 0x08,0x00,   /* r */ 
    0x00,0x98, 0xa8,0xa8, 0xc8,0x00,   /* s */ 
    0x00,0x08, 0x7e,0x88, 0x80,0x00,   /* t */ 
    0x08,0x78, 0x80,0x88, 0xf8,0x80,   /* u */ 
    0x08,0x38, 0xc8,0x60, 0x18,0x08,   /* v */ 
    0x18,0xe0, 0x38,0xe0, 0x18,0x00,   /* w */ 
    0x88,0xd8, 0x20,0xd8, 0x88,0x00,   /* x */ 
    0x08,0x38, 0xc8,0x60, 0x18,0x08,   /* y */ 
    0x00,0x88, 0xe8,0x98, 0x88,0x00,   /* z */ 
    0x00,0x00, 0x08,0xf7, 0x00,0x00,   /* { */ 
    0x00,0x00, 0x00,0xff, 0x00,0x00,   /* | */ 
    0x00,0x00, 0xf7,0x08, 0x00,0x00,   /* } */ 
    0x00,0x00, 0x00,0x01, 0x01,0x00,   /* ~ */ 
};

CONST_CHAR TabDIP_END[] = {

    0xff,0xff,0xff,0xff, 0xff,0xff,0xff,0xff, 0xff,0xff,0xff,0xff, 0xff,0xff,0xff,0xff,
    0xff,0xff,0xff,0xff, 0xff,0xff,0xff,0xff, 0xff,0xff,0xff,0xff, 0xff,0xff,0xff,0xff,
    0xff,0xff,0xff,0xff, 0xff,0xff,0xff,0xff, 0xff,0xff,0xff,0xff, 0xff,0xff,0xff,0xff,
    0xff,0xff,0xff,0xff, 0xff,0xff,0xff,0xff, 0xff,0xff,0xff,0xff, 0xff,0xff,0xff,0xff,

    0xff,0xff,0xff,0xff, 0xff,0xff,0xff,0xff, 0xff,0xff,0xff,0xff, 0xff,0xff,0xff,0xff,
    0xff,0xff,0xff,0xff, 0xff,0xff,0xff,0xff, 0xff,0xff,0xff,0xff, 0xff,0xff,0xff,0xff,
    0xff,0xff,0xff,0xff, 0xff,0xff,0xff,0xff, 0xff,0xff,0xff,0xff, 0xff,0xff,0xff,0xff,
    0xff,0xff,0xff,0xff, 0xff,0xff,0xff,0xff, 0xff,0xff,0xff,0xff, 0xff,0xff,0xff,0xff,

    0xff,0xff,0xff,0xff, 0xff,0xff,0xff,0xff, 0xff,0xff,0xff,0xff, 0xff,0xff,0xff,0xff,
    0xff,0xff,0xff,0xff, 0xff,0xff,0xff,0xff, 0xff,0xff,0xff,0xff, 0xff,0xff,0xff,0xff,
    0xff,0xff,0xff,0xff, 0xff,0xff,0xff,0xff, 0xff,0xff,0xff,0xff, 0xff,0xff,0xff,0xff,
    0xff,0xff,0xff,0xff, 0xff,0xff,0xff,0xff, 0xff,0xff,0xff,0xff, 0xff,0xff,0xff,0xff,

    0xff,0xff,0xff,0xff, 0xff,0xff,0xff,0xff, 0xff,0xff,0xff,0xff, 0xff,0xff,0xff,0xff,
    0xff,0xff,0xff,0xff, 0xff,0xff,0xff,0xff, 0xff,0xff,0xff,0xff, 0xff,0xff,0xff,0xff,
    0xff,0xff,0xff,0xff, 0xff,0xff,0xff,0xff, 0xff,0xff,0xff,0xff, 0xff,0xff,0xff,0xff,
    0xff,0xff,0xff,0xff, 0xff,0xff,0xff,0xff, 0xff,0xff,0xff,0xff, 0xff,0xff,0xff,0xff,

    0xff,0xff,0xff,0xff, 0xff,0xff,0xff,0xff, 0xff,0xff,0xff,0xff, 0xff,0xff,0xff,0xff,
};

BYTE MLCD_Read(BYTE gLocal_1){
    IOP0 = 0xff;
    pLRW = 1;
    switch (gLocal_1){
        case cLCDLow_C  : 
            pLCS0 = 1;
            pLCS1 = 0;
            pLDI = 0;
            break;
        case cLCDLow_D  : 
            pLCS0 = 1;
            pLCS1 = 0;
            pLDI = 1;
            break;
        case cLCDHigh_C :
            pLCS0 = 0;
            pLCS1 = 1;
            pLDI = 0;
            break;
        case cLCDHigh_D :
            pLCS0 = 0;
            pLCS1 = 1;
            pLDI = 1;
        default : break;
    }
    pLE = 1;
    gLocal_1 = P0;
    pLE = 0;
    pLCS0 = 1;
    pLCS1 = 1;
    return gLocal_1;
}

void MLCD_Write(BYTE gLocal_1, BYTE gLocal_2){
    BYTE gLocal_3;
    pLE = 1;
    pLRW = 0; 
    switch (gLocal_1){
        case cLCDLow_C  : 
            pLCS0 = 1;
            pLCS1 = 0;
            pLDI = 0;
            break;
        case cLCDLow_D  : 
            pLCS0 = 1;
            pLCS1 = 0;
            pLDI = 1;
            if (FDIPReverse) gLocal_2 = ~gLocal_2;
            break;
        case cLCDHigh_C :
            pLCS0 = 0;
            pLCS1 = 1;
            pLDI = 0;
            break;
        case cLCDHigh_D :
            pLCS0 = 0;
            pLCS1 = 1;
            pLDI = 1;
            if (FDIPReverse) gLocal_2 = ~gLocal_2;
        default : break;
    }  

    P0 = gLocal_2;
    pLE = 0;
#ifndef V3LagreRAM 
    while (MLCD_Read(cLCDLow_C) & 0x80);
#else
    gLocal_3 = 10;
    while (--gLocal_3 != 0);
#endif    
    return;
}

void MWriteToLCD(BYTE gLocal_1, BYTE gLocal_2){
    if (gLocal_1 > 63){
        MLCD_Write(cLCDHigh_D, gLocal_2);
    }
    else{   
        MLCD_Write(cLCDLow_D, gLocal_2);
    }
    return;
}

void MLCDOffsetWrite(BYTE x, BYTE y){
    y = 0xb8 + y;
    MLCD_Write(cLCDHigh_C, y);
    if (x < 64){
        MLCD_Write(cLCDHigh_C, 0x40);
       
        MLCD_Write(cLCDLow_C, y);
        MLCD_Write(cLCDLow_C, 0x40 + x);
    }
    else{
        MLCD_Write(cLCDHigh_C, 0x40 + (x-64));
    }
    return;
}

void M4094Output(){     
    M4094DataWrite(g4094Output);
    p4094_ExtSTB = 1;
    NOP();
    p4094_ExtSTB = 0;

    return;
}

void MDIPClearALL(){   /*清全屏*/
    MDIPClearScreen(cDOTLine1);/*清除第一行*/               
    MDIPClearScreen(cDOTLine2);/*清除第二行*/                
    MDIPClearScreen(cDOTLine3);/*清除第三行*/               
    MDIPClearScreen(cDOTLine4);/*清除第四行*/               
    return;
}
void MDIPWriteString(BYTE gLocal_XS, BYTE gLocal_YS, const char *gpString) {
    BYTE gLocal_1;

    while (1) {
        gLocal_1 = *gpString++;
        if (gLocal_1 == 0x00) break;
        MDIPASCIIToScreen(gLocal_XS, gLocal_YS, gLocal_1);
        gLocal_XS += 7;
    };
    return;
}


void MDIPWriteChinese_String(BYTE gLocal_XS, BYTE gLocal_YS, const char *gpString) {
    BYTE gLocal_1;
    WORD g2Local_2;
    WORD gLocal_2;
    WORD g2Local_1;

    while (1) {
        g2Local_1 = *gpString++;
        if (g2Local_1 == 0x00) break;
        g2Local_2 = g2Local_1;
        gLocal_1 = *gpString++;
        gLocal_2 = gLocal_1;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -