?? s0029701(lm320240c_80mode_example).c
字號:
0x60,0x20,0x20,0x44,0x18,0x00,0x00,0x00,0x00,0x00,0x08,0x00,0x00,0x00,0x00,0x01,
0x85,0x22,0x8A,0x48,0x20,0x8A,0x22,0x04,0x92,0x0D,0xA2,0x8A,0x28,0xA2,0x88,0x88,
0xA2,0x8A,0x28,0x82,0x02,0x00,0x02,0x00,0x80,0x20,0x00,0x04,0x08,0x00,0x00,0x00,
0x00,0x00,0x08,0x00,0x00,0x00,0x00,0x01,0x88,0xA2,0x82,0x28,0x20,0x82,0x22,0x04,
0xA2,0x0A,0xB2,0x8A,0x28,0xA2,0x80,0x88,0xA2,0x89,0x45,0x04,0x73,0xC7,0x9E,0x73,
0xE7,0xA0,0x60,0xC4,0x88,0xD2,0xC7,0x3C,0x79,0x67,0x3E,0x8A,0x28,0xA2,0x8B,0xC1,
0x8F,0xBC,0x82,0x2F,0x3C,0xBB,0xE2,0x04,0xC2,0x0A,0xAA,0x8B,0xC8,0xBC,0x70,0x88,
0xA2,0xA8,0x82,0x08,0x0A,0x28,0x22,0x88,0x88,0xAC,0x20,0x45,0x08,0xAB,0x28,0xA2,
0x89,0x88,0x08,0x8A,0x28,0x94,0x88,0x41,0x88,0xA2,0x82,0x28,0x20,0x8A,0x22,0x04,
0xA2,0x08,0xA6,0x8A,0x0A,0xA8,0x08,0x88,0xA2,0xA9,0x42,0x10,0x7A,0x28,0x22,0xF8,
0x87,0xB2,0x20,0x46,0x08,0xAA,0x28,0xBC,0x79,0x07,0x08,0x8A,0x2A,0x88,0x78,0x81,
0x88,0xA2,0x8A,0x48,0x20,0x8A,0x22,0x24,0x92,0x08,0xA2,0x8A,0x09,0x24,0x88,0x88,
0x94,0xAA,0x22,0x20,0x8A,0x28,0x22,0x80,0x80,0xA2,0x22,0x45,0x08,0xAA,0x28,0xA0,
0x09,0x00,0x88,0x99,0x4A,0x94,0x09,0x01,0x88,0xBC,0x73,0x8F,0xA0,0x72,0x27,0x18,
0x8B,0xE8,0xA2,0x72,0x06,0xA2,0x70,0x87,0x08,0x52,0x22,0x3E,0x7B,0xC7,0x9E,0x70,
0x87,0x22,0x71,0x84,0x9C,0xAA,0x27,0x20,0x09,0x0F,0x06,0x68,0x85,0x22,0x73,0xC1,
0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x82,0x1C,0x70,0x4F,0x9C,0xF9,0xC7,0x1C,
0x21,0xC7,0x04,0xF9,0xCF,0x9C,0x71,0xC2,0x1C,0x70,0x4F,0x9C,0xF9,0xC7,0x1C,0x21,
0xC7,0x04,0xF9,0xCF,0x9C,0x71,0xC2,0x1C,0x70,0x4F,0x9C,0xF9,0xC7,0x1C,0x21,0xC1,
0x86,0x22,0x88,0xC8,0x22,0x0A,0x28,0xA2,0x62,0x28,0x8C,0x82,0x20,0xA2,0x8A,0x26,
0x22,0x88,0xC8,0x22,0x0A,0x28,0xA2,0x62,0x28,0x8C,0x82,0x20,0xA2,0x8A,0x26,0x22,
0x88,0xC8,0x22,0x0A,0x28,0xA2,0x62,0x21,0x82,0x02,0x09,0x4F,0x20,0x12,0x28,0xA2,
0x20,0x20,0x94,0xF2,0x01,0x22,0x8A,0x22,0x02,0x09,0x4F,0x20,0x12,0x28,0xA2,0x20,
0x20,0x94,0xF2,0x01,0x22,0x8A,0x22,0x02,0x09,0x4F,0x20,0x12,0x28,0xA2,0x20,0x21,
0x82,0x04,0x12,0x40,0xBC,0x21,0xC7,0xA2,0x20,0x41,0x24,0x0B,0xC2,0x1C,0x7A,0x22,
0x04,0x12,0x40,0xBC,0x21,0xC7,0xA2,0x20,0x41,0x24,0x0B,0xC2,0x1C,0x7A,0x22,0x04,
0x12,0x40,0xBC,0x21,0xC7,0xA2,0x20,0x41,0x82,0x08,0x0B,0xE0,0xA2,0x22,0x20,0xA2,
0x20,0x80,0xBE,0x0A,0x22,0x22,0x0A,0x22,0x08,0x0B,0xE0,0xA2,0x22,0x20,0xA2,0x20,
0x80,0xBE,0x0A,0x22,0x22,0x0A,0x22,0x08,0x0B,0xE0,0xA2,0x22,0x20,0xA2,0x20,0x81,
0x82,0x10,0x88,0x48,0xA2,0x22,0x28,0xA2,0x21,0x08,0x84,0x8A,0x22,0x22,0x8A,0x22,
0x10,0x88,0x48,0xA2,0x22,0x28,0xA2,0x21,0x08,0x84,0x8A,0x22,0x22,0x8A,0x22,0x10,
0x88,0x48,0xA2,0x22,0x28,0xA2,0x21,0x01,0x87,0x3E,0x70,0x47,0x1C,0x21,0xC7,0x1C,
0x73,0xE7,0x04,0x71,0xC2,0x1C,0x71,0xC7,0x3E,0x70,0x47,0x1C,0x21,0xC7,0x1C,0x73,
0xE7,0x04,0x71,0xC2,0x1C,0x71,0xC7,0x3E,0x70,0x47,0x1C,0x21,0xC7,0x1C,0x73,0xE1,
0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,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};
//-----------------------------------
// Delay Routine
//-----------------------------------
void delayms(uint m) // 12MHz Xtal, close to ms value
{
uint j;
uint i;
for(i=0; i<m; i++)
for(j=0; j<109; j++)
_nop_();
}
//-----------------------------------
// IO Routine
//-----------------------------------
void SdCmd(uchar Command) //send command
{
_WR = 1; // init all control signal
_RD = 1;
A0 = 1; // for command
LCDBUS = Command;
_CS = 0; // enable the access
_nop_();
_WR = 0;
_nop_();
_nop_();
_WR = 1;
_nop_();
_CS = 1; // disable the access
delayms(1);
}
void SdData(uchar DData) //send display data
{
_WR = 1; // init all control signal
_RD = 1;
A0 = 0; // for diaplay data
LCDBUS = DData;
_CS = 0; // enable the access
_nop_();
_WR = 0;
_nop_();
_nop_();
_WR = 1;
_nop_();
_CS = 1; // disable the access
_nop_();
_nop_();
}
//-----------------------------------
// Init LCD module
//-----------------------------------
void initLCDM(void)
{
_RES = 1; // reset pin
_RES = 0;
delayms(5);
_RES = 1;
delayms(10);
SdCmd(0x40); //System set (8 byte parameter)
SdData(0x30); // IV=1(no line comp),ws=0(single drv),M2=0(8bit char height),M0=0(int CGROM), D4=1(by default)
SdData(0x87); // MOD=1 two frame AC drv, HorChar Size=8
SdData(0x07); // VerChar Size=8
SdData(0x28); // (320/8=40) char per line
SdData(0x47); // 23+blanking (frame freq = 66Hz (clk ratio=1/4 @ 10MHz)
SdData(0xEF); // (240-1=239) line per screen
SdData(0x28); // Virtual screen width LSB
SdData(0x00); // Virtual screen width MSB
SdCmd(0x59); // Display ON/OFF(1 byte parameter)
SdData(0x04); // SAD1=on, cursor=off
SdCmd(0x44); //Scroll (10 byte parmeter)
SdData(0x00); // SAD1 start ADD LSB
SdData(0x00); // SAD1 start ADD MSB
SdData(0xEF); // SAD1 block size(no.of line-1)
SdData(0x00); // SAD2 start ADD LSB
SdData(0x00); // SAD2 start ADD MSB
SdData(0xEF); // SAD2 block size(no.of line-1)
SdData(0x00); // SAD3 start ADD LSB
SdData(0x00); // SAD3 start ADD MSB
SdData(0x00); // SAD4 start ADD LSB
SdData(0x00); // SAD4 start ADD MSB
SdCmd(0x5D); //CSRFORM (2 byte parmeter)
SdData(0x07); // cursor width = 8
SdData(0x17); // CM=1, for graphic mode, cursor height = 8
SdCmd(0x4C); // CSRDIR (0 byte parmeter) to the right side
SdCmd(0x5B); // OVLAY (1 byte parmeter)
SdData(0x05); // 0v=0(2layer),DM1=0(blk3 for text),DM0=1(blk1 for graphic),layers combine=01(XOR)
SdCmd(0x5A); // HDOT SCR (1 byte parmeter)
SdData(0x00); // no scroll
SdCmd(0x60); // GRAYSCALE (1 byte parmeter)
SdData(0x00); // 1bpp
}
//-----圖畫寫入子程序-----------------------------------
void ShowBMP(uint x,y,width,high,uchar bmp[])
// 坐標(x,y),x為水平方向字節數;y為垂直方向像素行數
//width:圖形水平字節數;high:圖形垂直像素點數;bmp[]:圖形數組名
{
uchar i,j;
uint addr,k=0; // 第一顯示區域為圖形屬性
addr=y*0x28+x+0x0000; // 計算顯示RAM地址
for(i=0;i<high;i++) // 寫入行循環量
{
SdCmd(0x46); // 設置圖形顯示首地址
SdData(addr);
SdData(addr>>8);
SdCmd(0x4c); // 設置地址水平加1
SdCmd(0x42); // 寫數據指令
for(j=0;j<width;j++) // 寫入數據個數/行
{
SdData(bmp[k]); // 寫入圖形數據
k=k+1;
}
addr=addr+0x28; // 地址修正
}
}
//-----------------------------------
// Main Program
//-----------------------------------
void main()
{
SP=0x60;
EA = 0; // disable interrupts
_RES = 1;
_CS = 1;
_RD = 1;
_WR = 1;
A0 = 1;
LCDBUS = 0xff; // pull up data bus
initLCDM();
ShowBMP(0,0,40,240,LCMLogo);
while(1)
{
}
}
//end of program
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -