⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 lcd_test.c

📁 linux 基于frambuffer 的lcd 驱动
💻 C
字号:
#include <stdio.h>#include <stdlib.h>#include <sys/types.h>#include <sys/stat.h>#include <unistd.h>#include <fcntl.h>#include <string.h>#include "lcd.h"//中//超级字符/图形字模提取软件 V1.0 作者:管廷卫  电邮:guantingwei@163.com//C51 Code,逐行从上到下取模,每行左为最高位//Creat By Super Led_Dot_Matrix Char V1.0const unsigned char bmp_zhong[32] = {0x00,0x00,0x00,0x00,0x0F,0xE0,0x0F,0xE0,				0x08,0xC0,0x08,0xC0,0x08,0xC0,0xFF,0xFE,				0xFF,0xFE,0x08,0xC0,0x08,0xC0,0x08,0xC0,				0x0F,0xE0,0x0F,0xE0,0x00,0x00,0x00,0x00};//华//超级字符/图形字模提取软件 V1.0 作者:管廷卫  电邮:guantingwei@163.com//C51 Code,逐行从上到下取模,每行左为最高位//Creat By Super Led_Dot_Matrix Char V1.0const unsigned char bmp_hua[32] = {0x00,0x00,0x04,0x30,0x0C,0x30,0x3F,0xB0,				0x7F,0xF0,0x40,0x30,0x06,0x30,0x04,0x7E,				0xFF,0x7E,0x7F,0xB0,0x19,0xB0,0x11,0xB0,				0x31,0xB0,0x23,0xB0,0x03,0x30,0x00,0x00};//人//超级字符/图形字模提取软件 V1.0 作者:管廷卫  电邮:guantingwei@163.com//C51 Code,逐行从上到下取模,每行左为最高位//Creat By Super Led_Dot_Matrix Char V1.0const unsigned char bmp_ren[32] = {0x00,0x00,0x00,0x04,0x00,0x06,0x00,0x0C,				0x00,0x1C,0x00,0x38,0x01,0xE0,0x7F,0x80,				0x7F,0x80,0x00,0xE0,0x00,0x70,0x00,0x18,				0x00,0x0C,0x00,0x06,0x00,0x06,0x00,0x00};//民//超级字符/图形字模提取软件 V1.0 作者:管廷卫  电邮:guantingwei@163.com//C51 Code,逐行从上到下取模,每行左为最高位//Creat By Super Led_Dot_Matrix Char V1.0const unsigned char bmp_min[32] = {0x00,0x00,0x00,0x00,0x7F,0xFE,0x7F,0xFE,				0x64,0x8C,0x64,0x8C,0x64,0x98,0x66,0x80,				0x67,0xE0,0x64,0xF8,0x64,0x9C,0x64,0x86,				0x7C,0x86,0x04,0x86,0x00,0x0E,0x00,0x00};//共//超级字符/图形字模提取软件 V1.0 作者:管廷卫  电邮:guantingwei@163.com//C51 Code,逐行从上到下取模,每行左为最高位//Creat By Super Led_Dot_Matrix Char V1.0const unsigned char bmp_gong[32] = {0x00,0x00,0x00,0x40,0x0C,0x47,0x0C,0x46,				0x0C,0x4C,0x7F,0xD8,0x7F,0xD8,0x0C,0x40,				0x0C,0x40,0x0C,0x40,0x7F,0xD8,0x4C,0x5C,				0x0C,0x4C,0x0C,0x46,0x0C,0x42,0x00,0x00};//和//超级字符/图形字模提取软件 V1.0 作者:管廷卫  电邮:guantingwei@163.com//C51 Code,逐行从上到下取模,每行左为最高位//Creat By Super Led_Dot_Matrix Char V1.0const unsigned char bmp_he[32] = {0x00,0x00,0x26,0x30,0x26,0x70,0x27,0xC0,				0x3F,0xFE,0x7F,0xFE,0x66,0xC0,0x66,0x60,				0x00,0x00,0x1F,0xFC,0x10,0x30,0x10,0x30,				0x10,0x30,0x1F,0xF8,0x1F,0xF8,0x00,0x00};//国//超级字符/图形字模提取软件 V1.0 作者:管廷卫  电邮:guantingwei@163.com//C51 Code,逐行从上到下取模,每行左为最高位//Creat By Super Led_Dot_Matrix Char V1.0const unsigned char bmp_guo[32] = {0x00,0x00,0x00,0x00,0x7F,0xFE,0x60,0x04,				0x69,0x34,0x69,0x34,0x69,0x34,0x6F,0xF4,				0x6F,0xF4,0x69,0x74,0x69,0xF4,0x69,0x74,				0x60,0x14,0x7F,0xFE,0x7F,0xFE,0x00,0x00};unsigned char *bmps[] = {bmp_zhong,bmp_hua,bmp_ren,bmp_min,bmp_gong,bmp_he,bmp_guo};struct lcd_dev *lcd_devp;int main(int argc,char **argv){	int testdev=-1;	int i;	unsigned char bmp_index;	unsigned char x0,layer,width;	unsigned char *bmp;		printf("function parameter:\n");	printf("argc:%d\n", argc);	for(i=0;i<argc;i++){		printf("argv[%d]:%s\n", i, argv[i]);	}		testdev = open("/dev/lcddev0",O_RDWR);	if (testdev == -1){		printf("can't open lcddev.\n");		exit(0);	}	cmd=(unsigned char)strtoul(argv[1],0,0);	if (cmd == LCD_Write){		lcd_devp = (struct lcd_dev *)malloc(sizeof(struct lcd_dev));		if (lcd_devp){			printf("malloc fail.\n");			exit(0);		}		x0=(unsigned char)strtoul(argv[2],0,0);		layer=(unsigned char)strtoul(argv[3],0,0);		width=(unsigned char)strtoul(argv[4],0,0);		bmp_index = (unsigned char)strtoul(argv[5],0,0);		memcpy(lcd_devp->RomImage, &bmps[bmp_index], sizeof(lcd_devp->RomImage));		for (i=0; i<sizeof(lcd_devp->RomImage), i++){			if ( !(i%8) ) printf("\n");			printf("0x%x ",lcd_devp->RomImage[i]);		}		printf("\n");		ioctl(testdev, cmd, (unsigned long)lcd_devp);		}else{			ioctl(testdev, cmd, 0);	}	printf("lcd_test end.");	return 0;}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -