📄 123.c
字号:
#include <reg52.h>
//#include<stdio.h>
#include<define.h>
//#include<asc_zimo.h>
//#include<Hz_zimo.h>
//#include<pic.h>
#include<ssd1289.c>
//#include<touch.c>
uchar xdata pic[240];
uchar num,flag;
uint num_shu;
//=================================
void DispSmallPic(uint num, uchar *str)
{
uint k,temp;
uchar i,j;
if(num%2==0)
{
j=120;
k=num/2-1;
}
else
{
j=0;
k=(num+1)/2-1;
}
Set_ramaddr(j,k);
send_command(0x22);
for(i=0;i<120;i++)
{
temp=str[2*i+1]<<8; //低位在前
temp|=str[2*i];
send_data(temp);
}
}
void uartint()
{
TMOD=0x20;
TH1=0xff;
TL1=0xff;
PCON=0x80;
TR1=1;
SM0=0;
SM1=1;
REN=1;
EA=1;
ES=1;
}
main()
{
// uint T_x = 3;
// uint T_y = 4;
uchar R_data=0;
uchar G_data=0;
uchar B_data=0;
num_shu=0;
num=0;
uartint();
// uint i,j,k=0;
res=0; //低电平复位
DelayNS(1000);
res=1;
// send_command(0x00);
// i=rece_data();
DelayNS(10000);//等待电源恢复正常
ssd1289_init();
// touch_Init();
DispClear();
send_command(0x22);
// DispSmallPic(0, 0, 101, 103, pic2);
// DrawString(0, 70, "触摸测试:", WHITE, BLACK, NORMAL);
// DrawString(0, 152, "Easy Do It!!", RED, YELLOW, NORMAL);
// DrawString(0, 168, "支持各种单片机", RED,YELLOW,TRANSP);
// DrawString(0, 184, "提供Keil C51演示程序",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);}
}
B_data=0;
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(flag==1)
{
// EA=0;
num_shu++;
if(num_shu==641)
num_shu=1;
DispSmallPic(num_shu, pic);
// SBUF=0x01;
// while(!TI);
// TI=0;
flag=0;
// EA=1;
}
}
/* {
if (touch_INT==0)
{
touch_GetAdXY(&T_x, &T_y);
DispNum(20, 90, T_x);
DispNum(20, 110, T_y);
}
}*/
}
void serial() interrupt 4
{
pic[num]=SBUF;
num++;
if(num==240)
{
flag=1;
num=0;
}
RI=0;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -