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

📄 lcd.c

📁 Interfacing 8 bit LCD to any microcontroller
💻 C
字号:
/*------------------------------------------------------------------------------------------
LCD.C
Source file to LCD operation
Project: RADIATION COUNTING SYSTEM
ELECTRONICS CORPORATION OF INDIA LIMITED, HYDERABAD
Developed By VINAY                			All rights reserved.
--------------------------------------------------------------------------------------------*/

#include"at89x51.h"
#include"lcd.h"
#include"lcdcmd.h"

sbit LCD_E = P1^2;
sbit LCD_RS = P1^3;


void LcdWriteCmd(unsigned char cmd) 
{

    LCD_RS = 0;
    LCD_E = 1;
    P2 = cmd;
    LCD_E = 0;
    delay(50);

}

void LcdMoveCursor(unsigned char row, unsigned char col)
{
    LcdWriteCmd(LCD_MOVEDISPLAY | (row << 6) | col);
}

void LcdWriteChar(unsigned char dval)
{

    LCD_RS = 1;
    LCD_E  = 1;
    P2 = dval;
    LCD_E  = 0;
    delay(0);

}


void LcdWriteString(unsigned char *str)
{
    while (*str != '\0')
    {
        LcdWriteChar(*str);
        ++str;
    }
}

void delay(long int k)
{
int i;
for (i=0;i<k;i++)
        {
        }
}
void LcdClear(void)
{
    LcdWriteCmd(LCD_CLEAR);
}

void LcdInit(void) {



    LcdWriteCmd(0x38);

    LcdWriteCmd(0x38);

    LcdWriteCmd(0x38);

    LcdWriteCmd(LCD_SETIFLEN | LCD_SETIFLEN_N | LCD_SETIFLEN_DL);

    // The thing oughta be initialized here.

    LcdWriteCmd(LCD_DISPEN); // display off, cursor off, no blink
    LcdWriteCmd(LCD_CLEAR);
    LcdWriteCmd(LCD_DISPEN | LCD_DISPEN_DISP); // | LCD_DISPEN_CURSOR);
    LcdWriteCmd(LCD_MOVEDIR | LCD_MOVEDIR_ID);

}

void LcdAutoMove(void)
{
LcdWriteCmd(LCD_MOVEDIR|LCD_MOVEDIR_SHIFT|LCD_MOVEDIR_ID);
}


⌨️ 快捷键说明

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