第四篇 RA8889 实现酷炫车载液晶仪表系列:功能函数实现指针转动

电子说

1.4w人已加入

描述

引言

本期文章介绍如何通过瑞佑的RA8889芯片,仅仅使用一个功能的接口函数,轻松拿捏液晶仪表指针的转动,实现液晶汽车仪表盘指针的转动,以及LCD液晶仪表盘所需显示的信息:如车速、油量、灯光提示、以及各种报警灯等等的显示。

下面我们进入车载液晶仪表的Demo程序,了解下RA8889如何非常简单的实现指针的转动效果,以下是keil开发环境界面,指针转动的函数代码在Car_demo()内。

驱动控制器

如下图代码解析:

驱动控制器

设定步骤:

1. Main_Image_Start_Address:设定显示视窗(即看到屏上显示的区域)从SDRAM的地址 0 开始;

2. IDEC_Destination_Start_Address :设定JPG图片写入SDRAM地址从 0 开始,也就是图层1;

3. BTE_Solid_Fill 是填充矩形颜色的API功能函数,这里填充黑色,起到清屏的效果。

4. avi_demo_800x640_full 播放开机视频,把视频在FLASH存放的地址,以及视频大小填入到AVI_NAND() ;API接口函数中即可播放视频。

5. SPI_NAND_initial_JPG_AVI() ; 初始化NAND FLASH,定位 BUS1、 CS2上的FLASH,为保存JPEG图片做准备。

6. JPG_NAND();读取NAND FLASH 中图片的接口函数API,_CS3[Car_BG].start_addr参数代表车载仪表背景图在FLASH中的地址,_CS3[Car_BG].img_size :JPEG大小 ;canvas_image_width:选择默认即可。最后两个参数表示图片显示在屏上的坐标。

7. BTE_Memory_Copy();通俗来说就是复制粘贴的功能,这里配置是把车载仪表背景图复制到图层3备用。

8. 设定以下调用JPG_NAND();API函数读取的FLASH图片放到指定图层,这里设定读取存放到图层2中。

9. number_i参数代表的是0-9数字小icon图标。预先把小icon放置到备用图层。

如下图代码解析:

驱动控制器

1. 显示档位把档位P、N、R、S从FLASH中读取到RA8889 SDRAM的缓冲区做备用。

2. 读取仪表背景图到SDRAM的显示区显示

3. 把备用在图层2的数字复制到显示区显示,使用BTE_Memory_Copy 接口函数。

操作完以上功能,液晶屏如下图:

驱动控制器

如下图代码解析:

驱动控制器

1. 给速度设定初始值。

2. meter_needle 代表放在FLASH中的图片数据,_CS3[meter_needle].start_addr 使用结构体的方式调用对应的参数。该结构体使用瑞佑公司的Iamge Tool 工具会自动生成。

3. PIP 接口函数,使用该功能实现弹窗的效果(换挡位)。

4. 模拟速度数字变动,如下截图

驱动控制器

使用BTE_Memory_Copy 接口函数,把预先存放在SDRAM缓冲区的数字图片复制粘贴到显示,实现数字的跳动。

以下是反复使用JPG_NAND接口函数调用指针JPEG图片,实现指针的转动,非常简单且容易上手,即可快速实现车载液晶仪表盘的方案。

驱动控制器

指针转动的介绍就到这里,回顾一下,使用瑞佑的RA8889液晶控制芯片来实现汽车液晶仪表盘方案,仅仅用了几条接口函数就可以实现,方案简单,容易,开发更是省时省力。

接下来的文章会介绍RA8889驱动控制不同LCD液晶屏时,所要调整的部分。

驱动控制器



审核编辑 黄宇

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分