📄 demo.c
字号:
/*******************************************************************************
*
* Filename : Demo.c
*
* Author : Tony Kan
* Author Date : 2007/08/21
* Company : RAiO Technology Inc.
* Case : 320 x 240
* Device : MXIC MX10E8050IQC at 18.432MHZ
* Modifier :
* Modify Date :
* Visions : X
* Compiled Using Keil C v7.50
*
*******************************************************************************/
#include "Demo.h"
/******************************************************************************/
/*Main program area */
/******************************************************************************/
void main(void)
{
// int i;
uchar state;
P0 = 0xff;
P1 = 0xff;
P2 = 0xff;
#ifdef Parallel_8080
P3 = 0xff;
#endif
#ifdef Parallel_6800
P3 = 0x77;
#endif
#ifdef Parallel_8080_4bit
P3 = 0xff;
#endif
#ifdef Real_8080
P3 = 0xff;
#endif
AUXR = B0000_0011; //Enable MOVX for external interface
LCD_Reset();
LCD_Initial();
LCD_CmdWrite(BTMR);
LCD_DataWrite(0x20);
LCD_CmdWrite(ITCR);
LCD_DataWrite(0xff);
LCD_ON();
while(1)
{
LCD_Clear();
switch(state)
{
case 0x00:
Display_Text();
break;
case 0x01:
Display_Picture();
break;
case 0x02:
Display_Ratate_90();
break;
case 0x03:
Display_Touch();
break;
}
Delay100ms(20);
state++;
if(state == 0x04) state = 0;
}
}
void Display_Text(void)
{
uchar i;
Access_Page1();
Only_Show_Page1();
LCD_Text();
LCD_GotoXY(0,0);
LCD_CmdWrite(0xb0);
for(i=0;i<40;i++)
{
LCD_DataWrite(sRAiO1[i]);
Delay1ms(1);
}
for(i=0;i<40;i++)
{
LCD_DataWrite(sRAiO2[i]);
Delay1ms(1);
}
LCD_Inv();
LCD_CmdWrite(0xb0);
for(i=0;i<40;i++)
{
LCD_DataWrite(sRAiO3[i]);
Delay1ms(1);
}
LCD_NoInv();
LCD_CmdWrite(0xb0);
for(i=0;i<40;i++)
{
LCD_DataWrite(sRAiO2[i]);
Delay1ms(1);
}
LCD_FontSize(15);
LCD_GotoXY(0,80);
LCD_CmdWrite(0xb0);
for(i=0;i<10;i++)
{
LCD_DataWrite(sRAiO5[i]);
Delay1ms(5);
}
LCD_FontSize(0);
LCD_GotoXY(0,160);
LCD_CmdWrite(0xb0);
for(i=0;i<40;i++)
{
LCD_DataWrite(i);
Delay1ms(1);
}
LCD_Bold();
LCD_CmdWrite(0xb0);
for(i=40;i<80;i++)
{
LCD_DataWrite(i);
Delay1ms(1);
}
LCD_NoBold();
LCD_CmdWrite(0xb0);
for(i=40;i<120;i++)
{
LCD_DataWrite(i);
Delay1ms(1);
}
}
void Display_Picture(void)
{
int i;
LCD_Graphic();
LCD_GotoXY(0,0);
LCD_CmdWrite(0xb0);
for(i=0;i<9600;i++)
LCD_DataWrite(gImage_pic1[i]);
}
void Display_Ratate_90(void)
{
int i;
LCD_Text();
LCD_Rotate90();
COM_DIR_239_0();
LCD_LineDist_Adjust(8);
LCD_GotoXY(0,0);
LCD_CmdWrite(0xb0);
for(i=0;i<159;i++)
{
LCD_DataWrite(sRAiO6[i]);
Delay1ms(10);
}
}
void Display_Touch(void)
{
uchar Debounce_count = 0;
uchar temp2,X1,Y1,X2,Y2;
int i, Timer_count = 0;
LCD_LineDist_Adjust(0);
LCD_Rotate90_Disable();
COM_DIR_0_239();
LCD_FontSize(5);
LCD_Text();
LCD_GotoXY(4,12);
LCD_CmdWrite(0xb0);
for(i=0;i<16;i++)
{
LCD_DataWrite(sRAiO7[i]);
Delay1ms(1);
}
LCD_FontSize(0);
LCD_GotoXY(0,220);
LCD_CmdWrite(0xb0);
for(i=0;i<40;i++)
{
LCD_DataWrite(sRAiO8[i]);
Delay1ms(1);
}
Access_Page1();
Only_Show_Page1();
LCD_CmdWrite(0xC0); // Enable Touch Panel Function
LCD_DataWrite(0xC4);
while(1)
{
Debounce_count = 0; // initial Debounce counter
LCD_CmdWrite(0x0f); // Clear int
LCD_DataWrite(0x00);
Delay1ms(10);
LCD_CmdWrite(0x0f);
temp2 = LCD_DataRead();
if((temp2 & 0x01) == 0x01) //
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -