模块化思想——粤嵌GEC6818读取图片宽度、高度、色深

简介: 模块化思想——粤嵌GEC6818读取图片宽度、高度、色深
  • 模块化思想
    交叉编译两个c文件的方法:

模块化思想:

。。。
只有一个唯一的main函数‘
一个或者多个功能函数 
main.c
lcd.c   lcd.h
bmp.c   bmp.h
led.c   led.h
beef.c   beef.h
.....



.h怎么写? 
例:led.h

#ifndef  __LED_H__
#define  __LED_H__


// 变量的定义 
// 函数的声明

//。。。

#endif



功能函数: 封装一个函数 
/*
  功能函数:对一个坐标点为(x,y)的像素点上色。
  参数: 
    @x : 像素点的X轴坐标值
    @y :像素点的Y轴坐标值
    @color : 要画的颜色
*/
void draw_point (  int x, int y, int color )
{
  if(x>=0 && x<800 && y>=0 && y<480)
  *(p + 800*y +x ) = 0x00ff0000 ;//p定义成全局变量
}
//lcd.h
#ifndef __LCD_H__
#define __LCD_H__


#include <stdio.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <unistd.h>
#include <sys/mman.h>


extern int *p ;

void init() ;
void end();





#endif
//lcd.c
#include "lcd.h"
int fd = 0;
void init() 
{
  fd = open("/dev/fb0",O_RDWR);
  if(fd==-1)
  {
    perror("open error\n");
    return ;
  }
  
  p = mmap (NULL,800*480*4 ,PROT_READ | PROT_WRITE ,MAP_SHARED , fd , 0);
  if(p == MAP_FAILED)
  {
    perror("mmap error\n");
    return ;
  }
}
void end()
{
  close(fd);
  munmap(p,800*480*4);
}
//main.c
#include "lcd.h"
#include "bmp.h"
int main()
{ 
  //init();//打开帧缓冲 映射
   bmp_inf("./1.bmp");
  //end();//关闭帧缓冲设备文件 解除映射
}
相关文章
|
15天前
如何实现图片垂直旋转90度的问题
如何实现图片垂直旋转90度的问题
16 2
|
3月前
|
前端开发 容器
你不知道的css——3. 内外尺寸、流宽度、格式化宽度、格式化高度、首选最小宽度、包裹性、最大宽度
你不知道的css——3. 内外尺寸、流宽度、格式化宽度、格式化高度、首选最小宽度、包裹性、最大宽度
34 2
|
3月前
|
容器
软件开发常见流程之物理像素导致图片变形问题如何解决,先把图缩放为原先的两倍,再缩放,利用Cutterman生成矢量图
软件开发常见流程之物理像素导致图片变形问题如何解决,先把图缩放为原先的两倍,再缩放,利用Cutterman生成矢量图
|
5月前
表格高度根据内容自适应的瀑布流
表格高度根据内容自适应的瀑布流
50 1
|
5月前
|
移动开发 前端开发 iOS开发
H5页面布局之图片液态化(自适应)处理简述
H5页面布局之图片液态化(自适应)处理简述
47 0
H5页面布局之图片液态化(自适应)处理简述
|
人工智能 Java
Java实现图片无损任意角度旋转
Java实现图片无损任意角度旋转
250 1
|
算法 前端开发 JavaScript
图片转ASCII字符图案的原理(可调整亮度对比度 宽高度)
平时看代码会看到很多标点符号的字符拼起来的图案, 特别有趣, 像kong(一个高性能API网关), 除了源代码里面有图案, 命令行也藏了彩蛋. 我今天要玩的会深入一点: 基于图片的灰度值来生成图案. 此时的图片不单单有轮廓, 还有光影效果, 也就是素描中提及的黑白灰.
89 0
|
vr&ar Android开发
【Android 应用开发】Paint 图形组合 Xfermod 之 合成模式表示方法 ( Xfermod 使用步骤 | 透明度 颜色值 公式表示方法 | 老版本表示方法 | 合成区域分块 )
【Android 应用开发】Paint 图形组合 Xfermod 之 合成模式表示方法 ( Xfermod 使用步骤 | 透明度 颜色值 公式表示方法 | 老版本表示方法 | 合成区域分块 )
214 0
【Android 应用开发】Paint 图形组合 Xfermod 之 合成模式表示方法 ( Xfermod 使用步骤 | 透明度 颜色值 公式表示方法 | 老版本表示方法 | 合成区域分块 )
|
前端开发 小程序
css 宽度分离原则
css 宽度分离原则