LCD显示文字的函数-ARM体系-2440
来源:互联网 发布:linux top 某个进程 编辑:程序博客网 时间:2024/05/19 17:06
/**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; }}
阅读全文
0 0
- LCD显示文字的函数-ARM体系-2440
- LCD显示图片的函数-ARM体系-2440
- arm的lcd基础显示
- arm的lcd显示字体
- 深入理解ARM体系架构(S3C6410)---lcd 显示图片
- ARM cortex a 的 LCD显示
- ARM lcd 显示 问题
- LCD 显示文字与图片
- ARM平台LCD显示汉字
- ARM平台LCD显示汉字
- ARM学习笔记--LCD显示
- GIMP 创建arm LCD上显示的图片
- LCD浮点数显示函数的探讨
- arm 体系的汇编
- ARM的体系架构
- arm的LCD的学习
- S3C2440的LCD显示
- dm365的LCD显示
- C语言入门第八篇,if语句
- HDU 6154
- HDU 1867 A + B for you again——kmp
- FreeSWITCH源码分析之主函数main()
- mysql性能分析之explain的用法
- LCD显示文字的函数-ARM体系-2440
- unity读取本地硬盘照片
- POJ
- android 歌曲名称旋转 框架
- 第七章 图(最短路径之dijkstra、 bellman-ford、floyd算法)
- nefu118 n!后面有多少个0(数学)
- Android SDK Manager 目录文件下载
- maven的依赖管理
- SPOJ