📄 main.c
字号:
#include <msp430x14x.h>
#include "define.h"
#include "pic.h"
#include "ssd1289.h"
#include "touch.h"
//=================================
void main(void)
{
uint T_x = 3;
uint T_y = 4;
uchar R_data=0;
uchar G_data=0;
uchar B_data=0;
uchar *s1 = "触摸测试:";
uchar *s2 = "Easy Do It!!";
uchar *s3 = "支持各种单片机";
uchar *s4 = "提供Keil C51演示程序";
uchar i;
uint j;
WDTCTL = WDTPW + WDTHOLD; //关闭看门狗
/*------选择系统主时钟为8MHz-------*/
/* BCSCTL1 &= ~XT2OFF; // 打开XT2高频晶体振荡器
do
{
IFG1 &= ~OFIFG; //清除晶振失败标志
for (i = 0xFF; i > 0; i--); // 等待8MHz晶体起振
}
while ((IFG1 & OFIFG)); // 晶振失效标志仍然存在?
BCSCTL2 |= SELM_2; //主时钟选择高频晶振
*/
Init_IO(); //初始化LCD控制IO
LCD_RESET_0; //低电平复位
DelayNS(1000);
LCD_RESET_1;
send_command(0x00);
i=rece_data();
DelayNS(10000);//等待电源恢复正常
ssd1289_init();
touch_Init();
DispClear();
DispOneColor(RED);
DispOneColor(GREEN);
DispOneColor(BLUE);
DispOneColor(WHITE);
DispOneColor(YELLOW);
DispOneColor(BLACK);
send_command(0x22);
DispSmallPic(0, 0, 109, 66, pic2);
DrawString(0, 70,s1 , WHITE, BLACK, NORMAL);
DrawString(0, 152,s2, RED, YELLOW, NORMAL);
DrawString(0, 168,s3, RED,YELLOW,TRANSP);
DrawString(0, 184,s4,YELLOW,RED,NORMAL);
DispSmallPic(148, 0, 92, 175, pic);
//==============================
Set_ramaddr(0,200);
send_command(0x22);
/*红色渐强条*/
R_data=0;
G_data=0;
B_data=0;
for(j=0;j<20;j++)
{
for(i=0;i<240;i++)
{
R_data=i/8;
send_data(R_data<<11|G_data<<5|B_data);
}
}
R_data=0x1f;
G_data=0x3f;
B_data=0x1f;
for(j=0;j<20;j++)
{
for(i=0;i<240;i++)
{
G_data=0x3f-(i/4);
B_data=0x1f-(i/8);
send_data(R_data<<11|G_data<<5|B_data);
}
}
/*绿色渐强条*/
R_data=0;
G_data=0;
B_data=0;
for(j=0;j<20;j++)
{
for(i=0;i<240;i++)
{
G_data=i/4;
send_data(R_data<<11|G_data<<5|B_data);
}
}
R_data=0x1f;
G_data=0x3f;
B_data=0x1f;
for(j=0;j<20;j++)
{
for(i=0;i<240;i++)
{
R_data=0x1f-(i/8);
B_data=0x1f-(i/8);
send_data(R_data<<11|G_data<<5|B_data);
}
}
/*蓝色渐强条*/
R_data=0;
G_data=0;
B_data=0;
for(j=0;j<20;j++)
{
for(i=0;i<240;i++)
{
B_data=i/8;
send_data(R_data<<11|G_data<<5|B_data);
}
}
R_data=0x1f;
G_data=0x3f;
B_data=0x1f;
for(j=0;j<20;j++)
{
for(i=0;i<240;i++)
{
G_data=0x3f-(i/4);
R_data=0x1f-(i/8);
send_data(R_data<<11|G_data<<5|B_data);
}
}
//触摸屏
while(1)
{
if (TP_INT_Value==0)
{
touch_GetAdXY(&T_x, &T_y);
DispNum(20, 90, T_x);
DispNum(20, 110, T_y);
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -