Linux-LCD应用层编程学习笔记

LCD应用层编程

LCD驱动 --> 设备节点文件 --> fb0

设备节点文件 等同于 显存空间!

如果想要在屏幕上显示图像,只需要往显存中写入数据即可!

LCD应用程序就是往显存中写入数据的操作!!!

 

LCD应用程序编程步骤:

1)打开LCD驱动对应的设备节点文件(显存)

2)把内核中的显存空间映射到进程空间中

3)往映射空间中写入数据

4)关闭显存

 

mmap();

头文件:#include <sys/mman.h>

函数原型:void *mmap(void *addr, size_t length, int prot, int flags,

                  int fd, off_t offset);

函数功能:把内核中的一块空间映射到进程空间中。

映射空间大小由length指定。映射空间首地址通过函数返回值接收!

形参列表:

addr:映射空间首地址。 如果传参为NULL,在进程空间中系统自动分配映射空间

length:映射空间大小。

prot:映射空间的操作权限

PROT_EXEC 可执行

PROT_READ 可读

PROT_WRITE 可写

PROT_NONE 无任何操作权限

flags:映射空间的同步方式

MAP_SHARED :实时和内核空间同步

MAP_PRIVATE :映射空间不同步

fd:要映射的对象! <是一个文件或者一个设备>

offset:对内核空间建立映射的时候,是否有偏移! <映射空间和内核空间是否有偏移>

返回值:

成功:映射空间首地址

失败:NULL

 

 

 

 

 

 

 

 

 

posted @ 2020-03-24 16:19  卢老师  阅读(395)  评论(0)    收藏  举报