资源简介
包含R61509V.c和.h两个文件
代码片段和文件信息
#include “type_def.h“
#include “SD.h“
#include “FAT32.h“
#include “R61905V.h“
#include “gui.h“
#include “ASCII(8x16).h“
#include “ASCII(12x24).h“
//#include “ASCII(16x32).h“
//#include “ASCII(20x40).h“
extern PART_INFO_type xdata FAT32_info;
extern ITEM_INFO_type xdata HZK16;
extern ITEM_INFO_type xdata HZK24;
//extern ITEM_INFO_type xdata HZK32;
//extern ITEM_INFO_type xdata HZK40;
//全角字符各字号对应的字符宽度和字模总字节数
u8 code full_char[2][5]=
{
{81624 32 40} //字模宽度
{83272128200} //字模总字节数
};
//半角字符各字号对应的字符宽度、高度和字节总数
u8 code half_char[2][5]=
{
{4 81216 20} //字模宽度
{8162436 40} //字模高度
//{8164864128} //字模总字节数
};
/*******************************************************************************
* 函 数 名: lcd_paint
* 功 能: 液晶全屏刷屏
* 入口参数: color刷屏颜色
* 出口参数: 无
* 返 回 值: 无
*******************************************************************************/
void lcd_paint(u16 color)
{
u8 xy;
lcd_set_window(00239319);
for(y=160;y>0;y--) //液晶总有像素320*240
{
for (x=240;x>0;x--)
{
lcd_write_dat(color);
lcd_write_dat(color);
}
}
}
/*******************************************************************************/
void lcd_show_half_char(u16 xu16 yu8 sizeu16 f_coloru16 b_coloru8 pchar)
{
u8 datheightn8i*ppchar;
//size-=1;
pchar-=32;
height=half_char[1][size-1]; //取得相应字号的字符高度
lcd_set_window( x y x+half_char[0][size-1]-1 y+half_char[1][size-1]-1 );//得出起点、终点坐标并调用活动窗口函数设置活动窗口
switch (size-1)
{
case 0:break; //对应1号字,因未建立1号字符字模,故不可用
case 1:ppchar=ASCII_8x16[pchar];break; //对应2号字,取得相应字号字模头指针
case 2:ppchar=ASCII_12x24[pchar];break; //对应3号字,取得相应字号字模头指针
//case 3:ppchar=ASCII_16x32[pchar];break; //对应4号字,取得相应字号字模头指针
//case 4:ppchar=ASCII_20x40[pchar];break; //对应5号字,取得相应字号字模头指针
default:return;
}
for(;height>0;height--)
{
for(n8=(half_char[0][size-1]>>3);n8>0;n8--) //根据相应字号的字模宽度得出写8点像素数据的次数
{
dat=*(ppchar++); //取得ASCII码字模数据
for(i=8;i>0;i--) //循环8次写入8点像素
{
if(dat&0x80)
{
lcd_write_dat(f_color);
}
else
{
lcd_write_dat(b_color);
}
dat<<=1; //移位1准备写入一下点像素
}
}
if( half_char[0][size-1]&0x07 ) //根据字号得出是否存在有无效位的字节
{
dat=*(ppchar++); //取得字模数据
for(i=4;i>0;i--) //有效像素是4点,写入4点,丢弃4点
{
if(dat&0x80)
{
lcd_write_dat(f_color);
}
else
{
lcd_write_dat(b_color);
}
dat<<=1;
}
}
}
}
/*******************************************************************************/
/*
void lcd_show_half_str(u16 xu16 yu8 sizeu8 *stru16 color)
{
//size-=1;
while( (*str)!=‘\0‘ ) //判断是否到达字符串末尾
{
lcd_show_half_char(xysize*strcolor);
x+=half_char[0][size-1];
str++;
}
}*/
/*******************************************************************************/
/*
void lcd_show_
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 4782 2013-06-27 09:05 R61905V.c
文件 968 2013-06-28 16:17 gui.h
文件 344 2013-06-27 10:27 R61905V.h
文件 9398 2013-06-28 16:17 gui.c
----------- --------- ---------- ----- ----
15492 4
- 上一篇:智能车电机驱动模块
- 下一篇:HIWIN 线性马达说明书
评论
共有 条评论