本帖最后由 Evan_ic 于 2021-7-1 11:59 编辑
方案使用STM32F103主控,实际使用中只是用到STM32极少资源(8080时序下指令),主要界面处理的工作都由RA8889完成了,RA8889作为液晶屏控制芯片,控制显示7寸800*480液晶屏。UI界面以及视频广告原档存放在RA8889外挂的SPI NOR FLASH中,当需要调用显示时,只需MCU发送对应界面信息后,RA8889自行搬运图片数据到屏显示。 屏上划分4个显示区域:楼层信息、视频广告、日历、新闻播报。
通过以下小图标实现,上下行箭头表示电梯运行方向,数字0~9显示当前所在楼层
预先烧录好的AVI视频格式文档在RA8889外挂的FLASH中,调用时直接使用RA8889库功能函数,给出视频存放FLASH地址以及视频占用字节数 AVI_NOR(Video_addr,Video_size,shadow_buff,shadow_buff+2400,x,y,W,H,canvas_image_width); 当需要暂停或者停止视频播放也很简单,只需调用RA8889库函数 Press_AVI_Pause(); //暂停AVI视频播放 Stop_AVI(); //停止AVI视频播放
使用RTC实时时钟模块,每个日期调用固定0~9字符,对应生成日历界面,如下图所示:
输入一串文字新闻到SDRAM缓存,然后使用RA8889库函数--BTE_Memory_Copy将字符串搬移到显示区显示,并实现跑马灯效果。
总体来说,使用RA8889控制界面的方案,使用上可以不占用太多主控资源,界面处理MCU直接通过指令控制RA8889即可,具体操作由RA8889执行处理。另外RA8889有配套的转图工具,可将做好界面转成FLASH烧录档,并生成对应图片信息的表格以及h文件的图片宏定义方便查看以及软件编写。RA8889还有提供库函数,基本的功能实现,比如调图-DMA、填充、画二维图形、数据搬移、画中画-PIP等功能都有对应接口函数,只要修改参数值即可实现想要功能,基本可以不用看规格书实现开发,大大缩减开发时间。 |