1、数码相框之框架分析

news/2024/11/8 16:47:08/

文章目录

  • 1、需求分析
  • 2、设计框架
  • 3、编写代码
  • 4、测试

下一节:2、数码相框之显示文字

设计产品时的思路大体如下:

  • 弄清需求
  • 设计框架
  • 编写代码
  • 测试

1、需求分析

在这里插入图片描述

2、设计框架

在这里插入图片描述
系统工作大致流程如下:
1、输入进程

  • 触摸屏线程(或按键线程)不断调用tslib得到触摸屏(或按键数据)数据,封装好数据上报给主控,若使用socket方式上报数据的话,就可以很容易去掉触摸屏线程或者按键线程。
  • 主控线程得到上报的数据之后发出socket

2、显示进程

  • 根据接收线程中接收到的数据决定显示五幅图片中的哪一个;
  • 若想显示左边的图片,则主控立刻启动DMA,将左边线程对应内存中的数据传输到LCD的显存中;
  • 若发现当前在屏幕上按下手动显示、自动显示的对话框,就直接将对应菜单的图片显示在显存上;若要对话框消失,则将之前的图片数据移过来就可以恢复之前显示的图片了。

所以数码相框的总体框架如下:

1、输入进程

  • 触摸屏线程:使用tslib得到触摸屏上的数据,将事件进行封装,然后上报给主控线程;
  • 按键线程:读取按键,将事件进行封装,然后上报给主控线程;
  • 主控线程:得到上报的事件,使用socket发送给显示进程

2、显示进程

  • socket线程:接收socket数据;
  • 放大线程:准备好当前图片的放大数据;
  • 缩小线程:准备好当前图片的缩小数据;
  • 上一幅线程:准备好上一幅图片的数据;
  • 下一幅线程:准备好下一幅图片的数据;
  • 当前图片线程:准备好当前要显示的图片;
  • 主控线程:根据socket得到的事件,决定显示哪一幅图片;

3、驱动程序

  • 分配五块内存用来存放图片数据;
  • 设置DMA操作用来传输图片数据;
  • 设置mmap用来给应用程序和操作系统之间进行数据传输;
  • 还有触摸屏、按键、LCD的驱动程序;

其中使用线程为了各个线程之间可以共享一些资源变量等等。使用进程是为了保持独立。

程序的框架如下:

触摸屏:主按线程,通过socket发给显示进程---------------------------封装事件:ts线程          按键线程---------------------------操作系统
封装的数据有:时间、类型(点击、上下左右移动)、位置、速度、幅度显示
放大()  缩小()  左边    右边   当前    显示控制     接收sochketlibjpegmmap
----------------------------------------
内存      内存      内存    内存    内存framebuffer-----------LCD

3、编写代码

暂时未到此步骤。

4、测试

暂时未到此步骤。

下一节:2、数码相框之显示文字


http://www.ppmy.cn/news/588343.html

相关文章

10、数码相框编写程序之图标显示

文章目录 1、bmp数据提取1.1、bmp 文件格式1.2、文件信息头1.3、位图信息头1.4、RGB 颜色阵列1.5、关于pic_operation.h1.6、关于bmp.c 2、图片缩放3、图片合并4、测试 上一节:9、数码相框编写程序之框架分析 下一节:11、数码相框编写程序之MainPage显存…

Wifi-ESL接口文档

一、更新Wifi ESL数据接口,updateScreen 使用系统模板 接口简介: 使用服务器模板更新ESL数据 基本信息: 标识 接口信息 接口状态 开发中 接口地址 http://47.106.109.236:8010/mms/associate/updateScreen 请求方式 POST 请求类型 …

关于小米路由器青春版刷老固件

首先要知道因为重置过的路由器,未配置拨号或者宽带连联网,所以手动降级要将我们的电脑与路由器用网线连接,再登陆mini.com,进行刷机。

小米2s回退出厂版本_小米8青春版官方出厂rom系统刷机包_降级包回退包V10.0.8.0...

下面同样是这个小米8青春版的固件rom包了,也就是原版的系统刷机包了,不知道有没有机友需要的呢,在这里说的这个系统包是线刷格式的出厂rom包了,也就是原版的没有任何改的固件rom线刷包了,这个是很实用的,当…

小米10青春版科学计算机,小米10青春版,能找回你的青春吗?

原标题:小米10青春版,能找回你的青春吗? 小米10青春版将于4月27日(下周一)正式发布,现在该机已开启预约。页面显示目前预约人数已超过3.2万人。 性能方面,小米10青春版搭载高通骁龙765G移动平台,它基于7nm工…

小米10青春版科学计算机,确定了!小米10青春版:首发搭载 MIUI 12 系统,50倍变焦加持...

确定了!小米10青春版:首发搭载 MIUI 12 系统,50倍变焦加持 2020-04-21 11:23:37 0点赞 0收藏 1评论 4月21日早间消息,小米手机官微正式宣布小米10 青春版和 MIUI 12 来了,小米将于4月27日下午2点举办线上发布会&#x…

android p小米8青春版,小米8青春版获得Android P更新,MIUI10越发强大

MIUI系统虽然是基于安卓而来,但是经过多年的发展积累也成为国内数一数二的系统。对于许多小米机型来说适配度非常的高,甚至很多老旧的机型依然可以凭借MIUI获得比较新的安卓系统。虽然国内没有办法用Googl的全家桶,但是得益于小米系统的本地化…

小米路由器青春版装linux,小米路由器青春版开启SSH

前言 当时贪图便宜,就入手了青春版,结果官方迟迟不放出SSH,同时固件在去年10月就没有更新过了,估计不会管我们了,没办法自食其力吧。 方法 网上有人发现了一个漏洞,可以方便的开启SSH,因为其实青…