2016-03-16.강정수.LCD를 이용한 입력표기
LCD에 원하고자 하는 문자를 출력하려면 아래의 5개 구간에 맞추어 소스를 입력하면 된다.
void LCD_Inst(unsigned char ucInst)
{
volatile unsigned int uiCnt;
CTL = CTL & ~(1<<RS);
CTL = CTL & ~(1<<RW);
CTL = CTL & ~(1<<EN);
BUS = ucInst;
for(uiCnt = 0; 30000>uiCnt; ++uiCnt); //A구간
//CTL = CTL & ~(1<<RS);
//CTL = CTL & ~(1<<RW);
//CTL = CTL & ~(1<<EN);
//BUS = ucInst;
for(uiCnt = 0; 30000>uiCnt; ++uiCnt); //B구간
CTL = CTL & ~(1<<RS);
CTL = CTL & ~(1<<RW);
CTL = CTL | (1<<EN);
BUS = ucInst;
for(uiCnt = 0; 30000>uiCnt; ++uiCnt); //C구간
CTL = CTL & ~(1<<RS);
CTL = CTL & ~(1<<RW);
CTL = CTL & ~(1<<EN);
BUS = ucInst;
for(uiCnt = 0; 30000>uiCnt; ++uiCnt); //D구간
CTL = CTL & ~(1<<RS);
CTL = CTL & ~(1<<RW);
CTL = CTL & ~(1<<EN);
BUS = ucInst;
for(uiCnt = 0; 30000>uiCnt; ++uiCnt); //E구간
}
원하는 자리에 0을 넣고 싶을 때. 11111111 -> 00010000(1>>RS).... 11111111 & 11101111(~) => 11101111