学习数码相框1.1.0.0数码相框之系统框架

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u012075395/article/details/78982904

学习数码相框1.1.0.0数码相框之系统框架

项目的流程
1.弄清需求
2.设计框架
3.编写代码
4.测试

分为两个方向:专家和系统。

数码相框项目的弄清需求

数码相框项目的弄清需求
①上电,LCD显示一张图片
②根据配置文件,决定顶流还是自动显示下一幅图片
③点击一下,出现对话框
|————————————|
| •手动显示 o自动显示 |
| 确认 取消 |
|————————————|
④根据下(缩小)下(放大)左(下一幅)右(上一幅)来改变。
⑤左右移动很快时,显示下下一幅。

数码相框项目的框架图

Created with Raphaël 2.1.2 数码相框项目的框架图 硬件 硬件 输入进程 输入进程 显示进程 显示进程 触摸屏tslib 触摸屏事件:1.时间 2.类型 类型:点击。移动。 数据:1.位置。 2方向,速度,幅度。 触摸屏封装事件 按键 按键事件:与触摸屏类似 按键封装事件 按键事件:与触摸屏类似 发送socket,显示进程接收socket 当前 左:准备好左边的照片 右:准备好右边的照片 上:准备好放大的图片 下:准备好缩小的图片 上面5副图片,都开内存用libjpeg库 内存->DMA->显存->LCD 如果向左滑,把做的内存图片DMA发送给显存

线程分为:触摸屏ts线程,按键线程。
上报 主控线程,然后发送socket
主控线程接收socket,然后根据,再调用不同内存,显示不同。

总结

1.输入进程
①主控线程,得到上报的时间,用socket发出
②ts线程,使用tslib读TS,封装事件,上报
③按键线程,读按键,封装事件,上报
2.显示进程
①socket线程,接收socket信息
②放大线程,准备好当先图片的放大数据
③缩小线程,准备好当前图片的缩小数据
④上一幅线程,准备好要保留的上一幅图片
⑤下一幅线程,准备好下一幅图片
⑥当前图片线程,准备好当前图片
⑦主控线程,根据得到的socket时间,决定显示哪一幅图片。
3.驱动
①分配5块内存。DMA的操作

猜你喜欢

转载自blog.csdn.net/u012075395/article/details/78982904
今日推荐