ILI9235的51单片机驱动程序-推箱子游戏
完整的代码下载地址:http://www.51hei.com/bbs/dpj-20611-1.html
下面是ILI9235的驱动程序部分预览
#include "mylib.h"
/*******************************************************************************
函数名称:void ClearScreen(uint Color)
函数功能:刷屏使得全屏显示单一的颜色
入口参数:Clolr:屏幕背景的颜色(直接写入颜色的英文,在.h中有定义)
出口参数:无
备 注:
********************************************************************************/
void ClearScreen(uint Color)
{
uint i,j;
LCD_SetPos(0,320,0,240); //设置起始地址为(0,0) ~(320,240)
for (i=0;i<325;i++)
{
for (j=0;j<240;j++)
{
Write_Data_U16(Color);
}
}
}
/*******************************************************************************
函数名称:void Show_RGB (uint x0,uint x1,uint y0,uint y1,uint Color)
函数功能:在屏幕的(x0,y0)到(x1,y1)区域显示某一种颜色
入口参数:(x0,y0)和(x1,y1)表示位置;
Color :显示区域的颜色
出口参数:无
备 注:可以实现画点和画水平和垂直的直线
显示时输入的参数x:0-320,y:0-240(横向)
*******************************************************************************/
void Show_RGB (uint x0,uint x1,uint y0,uint y1,uint Color)
{
uint i,j;
i=x0;x0=y0;y0=i;
i=x1;x1=y1;y1=i;
i = y0;
y0 = 320-y1;
y1 = 320-i;
LCD_SetPos(x0,x1,y0,y1);
for (i=y0;i<=y1;i++)
{
for (j=x0;j<=x1;j++)
{
Write_Data_U16(Color);
}
}
}
/*******************************************************************************
函数名称:void DrawCoord(uint x0,uint x1, uint y0, uint y1, uint LineWidth, uint Color)
函数功能:在屏幕上画坐标,屏幕是横放的
入口参数:(x0,y0)和(x1,y1)表示位置;
Color :显示区域的颜色
Line_Width:坐标轴的线宽
出口参数:无
备 注:无
*******************************************************************************/
void DrawCoord(uint x0,uint x1, uint y0, uint y1, uint LineWidth, uint Color)
{
LineWidth = LineWidth-1;
Show_RGB (x0,x0+LineWidth,y0,y1,Color); //竖
Show_RGB (x0,x1,y1-LineWidth,y1,Color); //横
}
/*******************************************************************************
函数名称:void Show_Xmark(uint x0,uint x1, uint y0, uint y1, uint LineWidth, uint Color)
函数功能:在屏幕上画横线,屏幕是横放的
入口参数:(x0,y0)和(x1,y1)表示位置;
Color :显示区域的颜色
Line_Width:坐标轴的线宽
出口参数:无
备 注:无
*******************************************************************************/
void Show_Xmark(uint x0,uint x1, uint y0, uint y1, uint LineWidth, uint Color)
{
LineWidth = LineWidth-1;
Show_RGB (x0,x0+LineWidth,y0,y1,Color); //竖
}
/*******************************************************************************
函数名称:void Show_Xmark(uint x0,uint x1, uint y0, uint y1, uint LineWidth, uint Color)
函数功能:在屏幕上画竖线,屏幕是横放的
入口参数:(x0,y0)和(x1,y1)表示位置;
Color :显示区域的颜色
Line_Width:坐标轴的线宽
出口参数:无
备 注:无
*******************************************************************************/
void Show_Ymark (uint x0,uint x1, uint y0, uint y1, uint LineWidth, uint Color)
{
LineWidth = LineWidth-1;
Show_RGB (x0,x1,y0,y0+LineWidth,Color);
}
/*******************************************************************************
函数名称:void Init_data (uchar x,uint y)
函数功能:些数据到寄存器
入口参数:x,y 需要写入的数据
出口参数:无
备 注:无
*******************************************************************************/
void Init_data (uchar x,uint y)
{
uchar m,n;
m=y>>8;
n=y;
Write_Cmd(0x00,x);
Write_Data(m,n);
}
/*******************************************************************************
函数名称:void Write_Data_U16(uint y)
函数功能:写入颜色
入口参数:y 颜色数据
出口参数:无
备 注:无
*******************************************************************************/
void Write_Data_U16(uint y)
{
uchar m,n;
m=y>>8;
n=y;
Write_Data(m,n);
}
/************************************
ILI923551单片机推箱子游 相关文章:
- Windows CE 进程、线程和内存管理(11-09)
- RedHatLinux新手入门教程(5)(11-12)
- uClinux介绍(11-09)
- openwebmailV1.60安装教学(11-12)
- Linux嵌入式系统开发平台选型探讨(11-09)
- Windows CE 进程、线程和内存管理(二)(11-09)