?? lcd_drv.c
字號(hào):
//液晶RT12232F顯示程序
/*******************************************************************
**名稱:12232F.c
**功能:RT12232F液晶顯示(并行方式)
使用這款LCD應(yīng)該要注意的問題:
1、J2的設(shè)置:
在線路板上,有一焊接處,標(biāo)有J2,共3個(gè)焊點(diǎn)。使用并行方式,連接上2個(gè)焊點(diǎn)。
使用串行方式,連接下2個(gè)焊點(diǎn)(默認(rèn))。
2、一定要在VO與VDD及VSS這三個(gè)腳間接一個(gè)20K的電位器,
電位器的中間腳接VO,其它二腳接VDD和VSS。
然后調(diào)節(jié)電位器的大小,直到有顯示為止。若是不接的話,
顯示器可能是一片黑暗,什么也沒有顯示,發(fā)命令也沒有反
3、VDD用3.3V可以,只是對(duì)比度差點(diǎn),但此時(shí)是1腳和3腳之間接一個(gè)可調(diào)電阻。
VDD用5V還沒有試驗(yàn)!!!
**編寫人:ywt
**時(shí)間:2005年11月21日
**說明:每行顯示7.5個(gè)漢字,共15個(gè)漢字
*******************************************************************/
//#include <REGSND1.H>
//#include <regx51.h>
#include "config.h" /* system configuration */
#include "lcd_drv.h"
//#include <intrins.h>
//typedef unsigned char Byte;
//typedef unsigned int Uint16;
//Byte ucBuffer;
#define RS P5_3
#define RW P4_0
#define E P4_1
void Delay(void)
{
Byte i,j;
for(i=0x0ff;i>0;i--)
for(j=0x0ff;j>0;j--);
}
/*************************寫控制指令***************************/
void Write_Command(Byte ucCommand) //按時(shí)序操作
{
Delay(); //INSTEAD OF CHECKING BF STATE
RS=0;
RS=0; //WRITE COMMANDS TO ST7920
RW=0;
RW=0;
P0=ucCommand;
E=1;
E=1;
Delay();
E=0;
E=0;
}
/************************寫數(shù)據(jù)*********************************/
void Write_Data(Byte ucData)
{
Delay(); //INSTEAD OF CHECKING BF STATE
RS=1;
RS=1; //WRITE DISPLAY DATAS TO ST79220
RW=0;
RW=0;
P0=ucData;
E=1;
E=1;
Delay();
E=0;
E=0;
}
/***********************寫漢字到LCD的指定位置**************/
void Lcd_Display(Byte x_data,Byte data1,Byte data2)
//x_data--RAM地址,data1--漢字編碼高8位,data2--漢字編碼低8位
{
Write_Command(x_data); //指定顯示地址
Write_Data(data1); //漢字編碼高8位
Write_Data(data2); //漢字編碼低8位
}
/**********************LCD初始化********************************/
void Lcd_Initial()
{
Delay();//延時(shí)40MS
Write_Command(0x30); //功能設(shè)定:8位數(shù)據(jù),基本指令30
Write_Command(0x06); //點(diǎn)設(shè)定:畫面右移
Write_Command(0x0c); //lcd開,光標(biāo)關(guān)
Write_Command(0x01); //清屏
Write_Command(0x02); //地址歸位
}
/************************main**********************************/
/*
void main()
{
Lcd_Initial();
Write_Command(0x80);//設(shè)定DDRAM起始地址
//漢字顯示
Lcd_Display(0x80,0xb1,0xb4);//貝
Lcd_Display(0x81,0xb1,0xb4);//貝
Lcd_Display(0x82,0xa3,0xac);//,
Lcd_Display(0x83,0xb1,0xb4);//貝
Lcd_Display(0x84,0xb1,0xb4);//貝
Lcd_Display(0x90,0xce,0xd2);//我
Lcd_Display(0x91,0xb0,0xae);//愛
Lcd_Display(0x92,0xc4,0xe3);//你
Lcd_Display(0x93,0xa3,0xa1);//!
Lcd_Display(0x94,0xa3,0xa1);//!
Lcd_Display(0x95,0xa3,0xa1);//!
// Lcd_Display(0x95,0xa3,0xd6);//v
// Lcd_Display(0x96,0xa3,0xc5);//e
/* Lcd_Display(0x80,0xc4,0xcf);
Lcd_Display(0x81,0xd1,0xf4);
Lcd_Display(0x82,0xc0,0xed);
Lcd_Display(0x83,0xb9,0xa4);
Lcd_Display(0x84,0xd1,0xa7);
Lcd_Display(0x85,0xd4,0xba);
Lcd_Display(0x90,0xc0,0xee);
Lcd_Display(0x91,0xcf,0xdc);
Lcd_Display(0x92,0xc0,0xa4);
Lcd_Display(0x93,0xa3,0xcc);//l
Lcd_Display(0x94,0xa3,0xcf);//o
Lcd_Display(0x95,0xa3,0xd6);//v
Lcd_Display(0x96,0xa3,0xc5);//e*/
//}
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -