一种基于MCU的背景图上叠加动态图显示系统及其显示方法技术方案

技术编号:19240878 阅读:31 留言:0更新日期:2018-10-24 04:13
本发明专利技术涉及图像显示技术领域,尤其涉及一种基于MCU的背景图上叠加动态图显示系统及其显示方法。一种基于MCU的背景图上叠加动态图显示系统,包括上位机、MCU和显示器;所述上位机对BMP图片数据进行分析之后获取关键数据提供给MCU使用;所述MCU对图片数据解析,得出结果;所述显示器将结果显示出来。该基于MCU的背景图上叠加动态图显示系统,大大减小了图片的数据量提高了显示的便捷性和清晰度。

【技术实现步骤摘要】
一种基于MCU的背景图上叠加动态图显示系统及其显示方法
本专利技术涉及图像显示
,尤其涉及一种基于MCU的背景图上叠加动态图显示系统及其显示方法。
技术介绍
随着科技的发展,TFT屏幕在电子产品中的使用变得越来越普遍。但是受制于硬件成本的限制,目前不带图形处理芯片的嵌入式产品的图像显示大部分都还停留在静态显示的阶段。整图刷新屏幕或者局部刷新屏幕是当前这些产品图像显示的主流。比如我们要显示72号的数字字体,一般采取的方式有三种:第一种为用72号的字库显示,但是其显示并不细腻,有锯齿感。第二种则是将PC端制作好的字体图片采用局部刷新的方式刷入。采用此种方式的时候,如果背景图是单色图片,那么我们可以将字体图片的背景色改为和背景图片一致的颜色,这样可以看不出异样,但是如果切换背景色彩或者直接切换为彩色的图片,那么刷入的字体图片将会破坏背景图。当然,还可以多用几张带不同背景图的字体图片,但是这样势必会大大增加flash的消耗,而且这样的字体图片没办法在彩色的背景图上移动位置。所以需要一种能在任意位置、任意背景上显示的图片叠加算法,来解决以上问题。第三种方式则是比第二种方式更进一步,采用带alpha通道的图片进行叠加。此种方式叠加效果好,显示位置不受限制,在没有压缩之前,图片的数据量大,需要较大的flash来存储图片数据。如果采用标准的压缩方式压缩,则压缩算法复杂,MCU测解压缩速度慢,影响负载率,除非采用高端的MCU,不然较难实现快速切换图片的目的。
技术实现思路
为了解决在低成本的MCU方案中实现动态图片在背景图上任意位置叠加的问题,本专利技术的目的在于提供一种基于MCU的背景图上叠加动态图显示系统,大大减小了图片的数据量提高了显示的便捷性和清晰度。本专利技术的另一个目的在于提供一种基于MCU的背景图上叠加动态图显示方法。本专利技术的技术方案如下:方案一本专利技术提供的一种基于MCU的背景图上叠加动态图显示系统,包括上位机、MCU和显示器;所述上位机对BMP图片数据进行分析之后获取关键数据提供给MCU使用;所述MCU对图片数据解析,得出结果;所述显示器将结果显示出来。方案二本专利技术的另一个技术方案提供了一种基于MCU的背景图上叠加动态图显示方法,采用上述显示系统,包括以下依次执行的步骤:S1:采用上位机对BMP图片数据进行分析之后获取关键数据提供给MCU使用;所述步骤包括以下子步骤:S1-1:采用alpha通道的32位色的BMP图片,从文件头开始偏移54个字节倒序读取位图数据;根据在计算时记录的总的像素点数乘以每个像素点所需字节数获得数据部分的大小;根据BMP图片的信息头和用户的选择获得每个像素点所需字节数,当要叠加的图片是分辨率小于等于255x255的单色图片时,数据部分直接提供给MCU使用;当叠加的图片是分辨率大于255x255的彩色图片,数据部分就直接采用BGRA格式存储。S1-3采用上位机批量转化图片为坐标,如果生成的带坐标的数据比原文件大,就直接保存源文件;否则,生成一个包含地址索引的C文件;读取地址索引,获得每张图片相对于存储位置的相对位移。S2:采用MCU对图片数据解析,得出结果;所述步骤包括以下子步骤:S2-1:MCU根据图片地址索引找到相应的图片,并读取16字节的数据头,获取要叠加图片的分辨率、是否为单色图片、数据部分的像素点个数和每个像素点的字节构成;S2-2:根据信息头的信息获取要叠加的图形数据,根据x、y坐标,alpha通道值和读取的RGB的值或者是用户指定的RGB的值,在背景图上叠加图片;S2-3:如果为单色图片,那么其RGB颜色就是用户在显示的时候指定,其叠加公式如下:目标颜色Red值=(背景颜色Red值x(255-alpha值)/255))+(用户指定的颜色Red值xalpha值/255));Green和Blue的目标颜色值的算法和Red值一样;如果为彩色图片,那么其RGB颜色就是数据部分的RGB的值,其叠加公式如下:目标颜色的Red值=(背景颜色Red值x(255-alpha值)/255))+数据部分Red值;Green和Blue的目标颜色值的算法和Red值一样。本专利技术的技术方案具有以下显著效果:(1)本专利技术通过上位机将图片数据进行分析,只提取关键数据,之后再在MCU上解析并叠加到背景图的方式,大大减小了图片的数据量,使得MCU可存储更多的图片;(2)由于采用坐标的方式存储,在显示的时候只要根据坐标就能找到要显示的点,软件处理简单。(3)由于没有采用普通的压缩方式,省去了解压缩的步骤,加快了数据的处理速度,降低了MCU的负载率。(4)由于本专利技术保留了alpha通道叠加方式,叠加后的图片显示效果清晰、细腻。附图说明图1是本专利技术基于MCU的背景图上叠加动态图显示系统的系统架构示意图;图2是本专利技术MCU和显示器之间的数据传递关系图;图3是本专利技术上位机界面图;图4是本专利技术上位机数据处理流程图;图5是本专利技术MCU侧软件流程图;图6是本专利技术实施例显示的背景图;图7是本专利技术实施例显示的叠加图;图8是本专利技术实施例显示的叠加效果图。具体实施方式为使得本专利技术的专利技术目的、特征、优点能够更加的明显和易懂,下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而非全部实施例。基于本专利技术中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。如图1所示,为本专利技术基于MCU的背景图上叠加动态图显示系统的系统架构示意图;具体地,一种基于MCU的背景图上叠加动态图显示系统,包括上位机、MCU和显示器;所述上位机对BMP图片数据进行分析之后获取关键数据提供给MCU使用;所述MCU对图片数据解析,得出结果;所述显示器将结果显示出来。实施例二如图2所示,一种基于MCU的背景图上叠加动态图显示方法,采用上述显示系统,包括以下依次执行的步骤:S1:采用上位机对BMP图片数据进行分析之后获取关键数据提供给MCU使用;所述步骤包括以下子步骤:S1-1:采用alpha通道的32位色的BMP图片,从文件头开始偏移54个字节倒序读取位图数据;根据在计算时记录的总的像素点数乘以每个像素点所需字节数获得数据部分的大小;根据BMP图片的信息头和用户的选择获得每个像素点所需字节数,当要叠加的图片是分辨率小于等于255x255的单色图片时,数据部分直接提供给MCU使用;当叠加的图片是分辨率大于255x255的彩色图片,数据部分就直接采用BGRA格式存储。S1-3采用上位机批量转化图片为坐标,如果生成的带坐标的数据比原文件大,就直接保存源文件;否则,生成一个包含地址索引的C文件;读取地址索引,获得每张图片相对于存储位置的相对位移。S2:采用MCU对图片数据解析,得出结果;所述步骤包括以下子步骤:S2-1:MCU根据图片地址索引找到相应的图片,并读取16字节的数据头,获取要叠加图片的分辨率、是否为单色图片、数据部分的像素点个数和每个像素点的字节构成;S2-2:根据信息头的信息获取要叠加的图形数据,根据x、y坐标,alpha通道值和读取的RGB的值或者是用户指定的RGB的值,在背景图上叠加图片;S2-3:如果为单色图片,那么其RGB颜色就本文档来自技高网...

【技术保护点】
1.一种基于MCU的背景图上叠加动态图显示系统,其特征在于,包括上位机、MCU和显示器;所述上位机对BMP图片数据进行分析之后获取关键数据提供给MCU使用;所述MCU对图片数据解析,得出结果;所述显示器将结果显示出来。

【技术特征摘要】
1.一种基于MCU的背景图上叠加动态图显示系统,其特征在于,包括上位机、MCU和显示器;所述上位机对BMP图片数据进行分析之后获取关键数据提供给MCU使用;所述MCU对图片数据解析,得出结果;所述显示器将结果显示出来。2.一种基于MCU的背景图上叠加动态图显示方法,其特征在于,采用权利要求1所述的基于MCU的背景图上叠加动态图显示系统,该显示方法包括以下步骤:S1:采用上位机对BMP图片数据进行分析之后获取关键数据提供给MCU使用;所述步骤包括以下子步骤:S1-1:采用alpha通道的32位色的BMP图片,从文件头开始偏移54个字节倒序读取位图数据;根据在计算时记录的总的像素点数乘以每个像素点所需字节数获得数据部分的大小;根据BMP图片的信息头和用户的选择获得每个像素点所需字节数,当要叠加的图片是分辨率小于等于255x255的单色图片时,数据部分直接提供给MCU使用;当叠加的图片是分辨率大于255x255的彩色图片,数据部分就直接采用BGRA格式存储。S1-3采用上位机批量转化图片为坐标,如果生成的带坐标的数据比原文件大,就直接保存源文...

【专利技术属性】
技术研发人员:郑远林蓓
申请(专利权)人:温州长江汽车电子有限公司
类型:发明
国别省市:浙江,33

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1