历史上的今天
今天是:2024年09月16日(星期一)
2019年09月16日 | LCD显示文字的函数-ARM体系-2440
2019-09-16 来源:eefocus
/*
*lcd显示汉字
*输入参数:
* x:开始位置横坐标
* y:开始位置纵坐标
* color:字体颜色
* ch[]:文字
*
*/
void Draw_Text16(int x, int y, int color, const unsigned char ch[])
{
unsigned short i, j ;
unsigned char mask, tem ;
for(i=0; i<16; i++)
{
mask= 0x80 ;
tem = ch[i*2] ; //俩个字节一组16位,取第一个字节
for(j=0; j<8; j++)
{
if(tem & mask)
{
PutPixel(x+j, y+i, color) ;
}
mask = mask >> 1 ;
}
mask = 0x80 ;
tem = ch[i*2 + 1] ;
for(j=0; j<8; j++)
{
if(tem & mask)
{
PutPixel(x+j+8, y+i, color) ;
}
mask = mask >> 1 ;
}
}
}
/*
* 画点
* 输入参数:
* x、y : 象素坐标
* color: 颜色值
* 对于16BPP: color的格式为0xAARRGGBB (AA = 透明度),
* 需要转换为5:6:5格式
* 对于8BPP: color为调色板中的索引值,
* 其颜色取决于调色板中的数值
*/
void PutPixel(UINT32 x, UINT32 y, UINT32 color)
{
UINT8 red,green,blue;
switch (bpp){
case 16:
{
UINT16 *addr = (UINT16 *)fb_base_addr + (y * xsize + x);
red = (color >> 19) & 0x1f;
green = (color >> 10) & 0x3f;
blue = (color >> 3) & 0x1f;
color = (red << 11) | (green << 5) | blue; // 格式5:6:5
*addr = (UINT16) color;
break;
}
case 8:
{
UINT8 *addr = (UINT8 *)fb_base_addr + (y * xsize + x);
*addr = (UINT8) color;
break;
}
default:
break;
}
}
下一篇:触摸屏驱动-JZ2440
史海拾趣
|
我在原来的公司做的时候,就注意观察公司在管理上的成功和失败的经验教训,并在网络上找很多关于管理的文章。 管理上有很多故事,让我领悟到管理就是设计一个合理的机制。 故事之一:分粥 分粥的故 ...… 查看全部问答> |
|
s3c2440 for wince4.2 的 eboot启动时出现的网络端口问题,高手请进给解答一下。 启动后,DNW出现下列打印信息: WinCE NAND Boot v1.00 Jun 11 2007 11:50:13 Start Eboot... Start Launch...0 Microsoft Windows CE Ethernet Bootloader Common Library Version 1.0 Built Mar 13 2003 23:05:42 Microsoft Windows CE SMD ...… 查看全部问答> |
|
拿到STM32开发板三天了!写了几个程序!程序简单但对入门还是有点帮助的!我自己下次调试成功了的! 上传供一起刚入门的朋友分享下! 第一天学习:MDK工程建立和GPIO 第二天学习:RCC和按键程序 第三天学习:EXTI程序(一个中断按键程序) 每 ...… 查看全部问答> |
|
我用2407做一个液晶显示,因为有存放大量字符数据的常量数组,我把这些数组定义为const unsigned char 类型。cmd文件如下: -o LCD.out - stack 60 MEMORY { PAGE 0: /* Program Memory */ & ...… 查看全部问答> |
|
电风扇模拟控制系统设计1.用4个LED显示电风扇的工作状态(1,2,3,4四档风力),显示风类:“自然风”、 “常风”和“睡眠风”。2.设计 “自然风”、 “常风”和“睡眠风” 三个风类键用于设置风类; 设计一个“摇头” 键用于控制电机摇头。 &nb ...… 查看全部问答> |
|
我们知道, MOS管最常见的应用可能是电源中的开关元件,此外,它们对电源输出也大有裨益。服务器和通信设备等应用一般都配置有多个并行电源,以支持N+1 冗余与持续工作 (图1)。各并行电源平均分担负载,确保 ...… 查看全部问答> |




