天嵌二次封装库使用手册
V2.1.2
|
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <unistd.h>
#include <fcntl.h>
#include <stdarg.h>
#include <sys/ioctl.h>
#include <sys/mman.h>
#include <sys/time.h>
#include <linux/vt.h>
#include <linux/kd.h>
#include <linux/fb.h>
#include <arpa/inet.h>
#include "font.h"
类 | |
struct | fb_data |
用来保存framebuffer设备相关数据 更多... | |
union | multiptr |
像素点大小,根据每个像素占用字节数而自由变化 更多... | |
宏定义 | |
#define | FBUTIL_API |
#define | XORMODE 0x80000000 |
模式 更多... | |
函数 | |
FBUTIL_API int | open_framebuffer (const char *dev, struct fb_data *f_data) |
打开framebuffer设备并用mmap建立内存映射 更多... | |
FBUTIL_API void | close_framebuffer (struct fb_data *f_data) |
关闭framebuffer设备并释放掉相关内存 更多... | |
FBUTIL_API void | line (struct fb_data *f_data, int x1, int y1, int x2, int y2, unsigned colidx) |
在屏幕上化一条线 更多... | |
FBUTIL_API void | put_string (struct fb_data *f_data, int x, int y, char *s, unsigned colidx) |
在屏幕上显示一个字符串 更多... | |
FBUTIL_API void | rect (struct fb_data *f_data, int x1, int y1, int x2, int y2, unsigned colidx) |
在屏幕上显示一个矩形 更多... | |
FBUTIL_API void | fillrect (struct fb_data *f_data, int x1, int y1, int x2, int y2, unsigned colidx) |
填充矩形颜色 更多... | |
FBUTIL_API void | put_string_center (struct fb_data *f_data, int x, int y, char *s, unsigned colidx) |
在屏幕显示一个字符串 更多... | |
FBUTIL_API void | setcolor (struct fb_data *f_data, unsigned colidx, unsigned value) |
设置屏幕颜色 更多... | |
FBUTIL_API void | progress_bar (struct fb_data *f_data, int progress, const char *fmt,...) |
显示进度条 更多... | |
FBUTIL_API void | put_cross (struct fb_data *f_data, int x, int y, unsigned colidx) |
画交叉线 更多... | |
FBUTIL_API int | show_bmp (const char *fbp, struct fb_var_screeninfo *scrinfo, const char *bmpname) |
显示bmp位图 更多... | |
FBUTIL_API void * | get_framebuffer (const char *dev, int *size) |
获得framebuffer对象 更多... | |
FBUTIL_API void | free_framebuffer (void *buff, int size) |
释放framebuffer对象 更多... | |
#define FBUTIL_API |
在文件 lib_fbraw.h 第 32 行定义.
#define XORMODE 0x80000000 |
模式
在文件 lib_fbraw.h 第 48 行定义.
FBUTIL_API void close_framebuffer | ( | struct fb_data * | f_data | ) |
关闭framebuffer设备并释放掉相关内存
f_data | framebuffer设备相关数据 |
FBUTIL_API void fillrect | ( | struct fb_data * | f_data, |
int | x1, | ||
int | y1, | ||
int | x2, | ||
int | y2, | ||
unsigned | colidx | ||
) |
填充矩形颜色
f_data | framebuffer设备相关数据 |
x1 | 矩形一条对角线上第一个端点的x坐标 |
y1 | 矩形一条对角线上第一个端点的y坐标 |
x2 | 矩形一条对角线上第二个端点的x坐标 |
y2 | 矩形一条对角线上第二个端点的y坐标 |
colidx | 设置填充矩形的颜色 |
FBUTIL_API void free_framebuffer | ( | void * | buff, |
int | size | ||
) |
释放framebuffer对象
buff | 要取消的映射内存 |
size | 映射内存大小 |
FBUTIL_API void* get_framebuffer | ( | const char * | dev, |
int * | size | ||
) |
获得framebuffer对象
dev | 设备名 |
size | 存放映射的地址大小 |
FBUTIL_API void line | ( | struct fb_data * | f_data, |
int | x1, | ||
int | y1, | ||
int | x2, | ||
int | y2, | ||
unsigned | colidx | ||
) |
在屏幕上化一条线
f_data | framebuffer设备相关数据 |
x1 | 第一个的点的x坐标 |
y1 | 第一个的点的y坐标 |
x2 | 第二个的点的x坐标 |
y2 | 第二个的点的y坐标 |
colidx | 设置显示线的颜色 |
FBUTIL_API int open_framebuffer | ( | const char * | dev, |
struct fb_data * | f_data | ||
) |
打开framebuffer设备并用mmap建立内存映射
dev | 设备名 |
f_data | 用来保存打开设备后的相关参数 |
FBUTIL_API void progress_bar | ( | struct fb_data * | f_data, |
int | progress, | ||
const char * | fmt, | ||
... | |||
) |
显示进度条
f_data | framebuffer设备相关数据 |
progress | 显示的进度(百分比%) |
fmt | 在进度条中显示的消息 |
... | 可变参数 |
FBUTIL_API void put_cross | ( | struct fb_data * | f_data, |
int | x, | ||
int | y, | ||
unsigned | colidx | ||
) |
画交叉线
f_data | framebuffer设备相关数据 |
x | 交叉线的中心坐标x |
y | 交叉线的中心坐标y |
colidx | 设置显示的颜色 |
FBUTIL_API void put_string | ( | struct fb_data * | f_data, |
int | x, | ||
int | y, | ||
char * | s, | ||
unsigned | colidx | ||
) |
在屏幕上显示一个字符串
f_data | framebuffer设备相关数据 |
x | 字符串起始x坐标 |
y | 字符串起始y坐标 |
s | 要显示的字符串 |
colidx | 设置显示字符串的颜色 |
FBUTIL_API void put_string_center | ( | struct fb_data * | f_data, |
int | x, | ||
int | y, | ||
char * | s, | ||
unsigned | colidx | ||
) |
在屏幕显示一个字符串
f_data | framebuffer设备相关数据 |
x | 字符串中间位置的x坐标 |
y | 字符串中间位置的y坐标 |
s | 要显示的字符串 |
colidx | 设置显示字符串的颜色 |
FBUTIL_API void rect | ( | struct fb_data * | f_data, |
int | x1, | ||
int | y1, | ||
int | x2, | ||
int | y2, | ||
unsigned | colidx | ||
) |
在屏幕上显示一个矩形
f_data | framebuffer设备相关数据 |
x1 | 矩形一条对角线上第一个端点的x坐标 |
y1 | 矩形一条对角线上第一个端点的y坐标 |
x2 | 矩形一条对角线上第二个端点的x坐标 |
y2 | 矩形一条对角线上第二个端点的y坐标 |
colidx | 设置显示矩形边框的颜色 |
FBUTIL_API void setcolor | ( | struct fb_data * | f_data, |
unsigned | colidx, | ||
unsigned | value | ||
) |
设置屏幕颜色
f_data | framebuffer设备相关数据 |
colidx | 要设置的颜色 |
value | 颜色值 |
FBUTIL_API int show_bmp | ( | const char * | fbp, |
struct fb_var_screeninfo * | scrinfo, | ||
const char * | bmpname | ||
) |
显示bmp位图
fbp | 映射内存起始地址 |
scrinfo | 屏幕信息结构体 |
bmpname | .bmp位图文件名 |