1.通过操作嵌入式的触屏文件

2.打开lcd的文件显示图片

3.使用读取文件来读取照片的bmp,与获取屏幕的下x,y坐标 确定屏幕位置

代码实现:

#include <stdio.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <sys/mman.h>
#include <linux/input.h>//输入设备的头文件int show_bmp(char *path_name,int *addr)
{//读取bmp图片int fd_bmp;fd_bmp = open(path_name,O_RDWR);if(fd_bmp < 0){printf("open bmp fail\n");// printf("path_name\n");// printf("path\n");return -1;}lseek(fd_bmp,54,SEEK_SET);//去掉头54个字节char buf[800*480*3];read(fd_bmp,buf,800*480*3);int x,y;int i = 0;for(y=0;y<480;y++){for(x=0;x<800;x++)*(addr+(479-y)*800+x) = buf[3*(y*800+x)]|buf[3*(y*800+x)+1]<<8|buf[3*(y*800+x)+2]<<16;}close(fd_bmp);return 0;
}int main()
{//打开触摸屏int fd_ts;fd_ts = open("/dev/input/event0",O_RDWR);if(fd_ts < 0){printf("open ts fail\n");return -1;}//打开LCDint fd_lcd;fd_lcd = open("/dev/fb0",O_RDWR);if(fd_lcd < 0){printf("open lcd fail\n");return -1;}//映射LCDint *addr;addr = mmap(NULL,800*480*4,PROT_READ|PROT_WRITE,MAP_SHARED,fd_lcd,0);if(addr == NULL){printf("mmap fail\n");return -1;}//将要显示的图片char *path[5] = {"a.bmp","b.bmp","c.bmp","d.bmp","e.bmp"};//默认第一张图片int i=0;show_bmp(path[i],addr);struct input_event ts;int x,y,x1,y1;while(1){   //取出按下去的值while(1){  read(fd_ts,&ts,sizeof(struct input_event));if(ts.type == EV_ABS&&ts.code == ABS_X){//printf("x=%d ",ts.value); //蓝色x = ts.value;    }if(ts.type == EV_ABS&&ts.code == ABS_Y){//printf("y=%d\n",ts.value); //蓝色y = ts.value;}if(ts.type == EV_KEY && ts.code == BTN_TOUCH&&ts.value==1){printf("按下: %d %d\n",x,y);break;}    }//取出松手后的值while(1){ read(fd_ts,&ts,sizeof(struct input_event));if(ts.type == EV_ABS&&ts.code == ABS_X){//printf("x=%d ",ts.value); //蓝色x1 = ts.value;   }if(ts.type == EV_ABS&&ts.code == ABS_Y){//printf("y=%d\n",ts.value); //蓝色y1 = ts.value;}if(ts.type == EV_KEY && ts.code == BTN_TOUCH&&ts.value==0){  printf("松手:%d %d\n",x1,y1);break;} }       //通过比较两者的差值来判断滑动的方向//右滑动if(x1-x > 50){i++; if (i>4) i=0;show_bmp(path[i],addr);printf("right\n");    }//左滑动if(x1-x < -50){i--;if (i<0) i=4;show_bmp(path[i],addr);printf("left\n");}    //下滑动if(y1-y > 50){printf("down\n");}//上滑动if(y1-y < -50){printf("up\n");}     }return 0;
}

嵌入式电子简单电子相册左右滑动相关推荐

  1. 基于嵌入式linux电子相册设计,用于LINUX或者嵌入式LINUX的电子相册程序,基于QT开发...

    用于LINUX或者嵌入式LINUX的电子相册程序,基于QT开发,包含源代码和编译好的可执行程序 linux_project\album\album.pro .............\.....\al ...

  2. 嵌入式电子软硬件开发编程培训面对面手把手包学会

    1学习内容 1.1电子常识.常见电子器件识别.功能介绍 1.2常见电路分析.数字电路设计.模拟电路设计 1.3PROTEL软件的使用.原理图设计.PCB设计 1.4常用仪器原理.操作 1.5 C语言介 ...

  3. 嵌入式Qt-控制硬件:滑动条控制RGB灯

    前面的几篇文章,介绍Qt例程,都是和硬件无关的,Windows平台和嵌入式平台都能运行. 本篇,来测试一下Qt界面控制嵌入式平台上的硬件,以野火i.MX6ULL板子上的RGB LED为例,实现Qt界面 ...

  4. 嵌入式linux音乐电子相册制作软件,ApowerShow – 超级轻便的在线照片音乐视频制作软件...

    有没有什么好用的照片视频制作软件呢?我大概对比了一下国内的其他软件,发现转场效果很多,但是需要自己去添加.它们的界面感觉有点繁琐,不是那么简洁. 其实除了使用国内的照片视频制作软件,你还可以使用Apo ...

  5. 防人人网客户端侧滑效果,简单实现Android滑动菜单特效

    人人网客户端,有一个侧滑效果不错,就是菜单(menu)和内容(content)可以实现侧滑. 首先,我们先来看一下最终的效果图,有图有真相,这样讲解起来,会更加的清楚. 程序运行时,我们刚开始看到的是 ...

  6. 毕业设计 嵌入式 电子时钟设计与实现

    文章目录 单片机电子时钟程序设计 实现效果 最后 单片机电子时钟程序设计 共用体除非必要,否则学长不推荐使用,枚举的用法比较简单,在本书19章的项目实践中有很好的示例,这节课我们先来练习一下结构体的使 ...

  7. 简单电子相册视频制作的步骤和要点

    1.套用AE模板,找到图片,按住alt将自己的图片拖拉到工作区,将原来的例图覆盖,在按alt+E制作影片,输出为avi格式的视频: 2.导出的视频为avi格式比较大,十几秒就有2G左右,用格式工厂转换 ...

  8. 模拟滑动android无障碍,Android无障碍简单开发-模拟滑动点击输入等

    似乎除了input type=password的edit text 其他所有的UI都可以进行操作.直接开始. 首先配置环境. 创建一个service 清单中代码如下,就算用AS直接创建,也需要配置一些 ...

  9. ARM嵌入式裸机简单使用

    基于正点原子 ALPHA开发板,长文预警,建议收藏用到之后再查看 文章目录 主频与时钟 I.MX6U系统时钟分析 7路PLL 时钟树 外设如何选择时钟 需要初始化的PLL和PFD I.MX6U系统配置 ...

最新文章

  1. react登录页面_「开源」React-Admin终极后台管理项目解决方案
  2. QThread中的互斥、读写锁、信号量、条件变量
  3. NIO这样理解才够深入!
  4. 《剑指offer》不用加减乘除做加法
  5. Java校招笔试题-Java基础部分(二)
  6. Tomcat配置可以访问外部资源路径
  7. 做工程为什么不用python_为什么“python setup.py sdist”在项目根目录中创建不需要的“PROJECT-egg.info”?...
  8. 物理、化学实验仪器与设备
  9. Android设备中直接通过shell操作GPIO或者上层c服务直接操作GPIO
  10. Node.js与V8引擎
  11. 淘口令流量属于淘宝什么流量来源 如何用淘口令来刷流量
  12. XSS 之 haozi me 题解——人生第一份CSDN题解
  13. int类型的整数能够表示的最大数字
  14. AR红包Android端实现原理
  15. Qt笔记(五十七)之显示图片缩略图
  16. ORB-SLAM2原理分析
  17. ai中画板脱离绘图区域_AI让您脱离舒适区
  18. 基于win10的hyper-v安装openwrt与zerotier实现内网穿透及异地组网
  19. pandas之创建DataFrame
  20. php 同步微信大量粉丝在数据表,微粉丝—— 微信加粉统计系统/复制统计准确率90%以上...

热门文章

  1. 人这一辈子要不要创业
  2. SMT贴片快速打样时锡不饱满的原因
  3. autojs获取QQ群成员列表里的群员数据,免root脚本源码分享
  4. wps文件丢失如何恢复?找回只需要用到一招?
  5. 觖决Outlook2003 无法删除规则的问题
  6. js设置样式的三种 常用方式及其点击实现样式切换
  7. 百度地图上传VR全景的核心优势
  8. 对于遗传算法的基础梳理
  9. castep 编译安装说明
  10. The ONE --Bug记录