本发明涉及航空图像领域,特别涉及一种基于ufcp绘图帧率提升方法。
背景技术:
ufcp是作为飞机的正前方控制板,具备高实时性和高可靠性的要求。由于ufcp的体积有限,所以电路设计一般采用低功耗高可靠的处理器。
近年来,由于st公司推出的stm32f系列微处理器性能提升明显,特别在f4系列以后增加了lcd接口,很大程度上增加了该系列微处理的使用范围;同时该系列处理器在低功耗方面表现优异,另外稳定性也得到了业界的一致认可。所以目前在智能穿戴、工业控制、航空显示等领用被广泛的采用。
目前基于stm32f7系列微处理的绘图,采用官方的驱动,在存储芯片上设置一个与图像分辨率相同的存储区域,利用逐点方式进行字符绘制,然后利用dma方式将图像数据搬至lcd接口上。此种方式,由于图像的绘制、清除、搬运都在同一个区域,为了防止图像显示抖动,必须在绘制下一帧图像前,将前一帧图像全部清除,绘图帧率很低,在显示实时性要求很高的应用领域,存在明显不足。
因此设计一种利用stm32f7处理器的ufcp绘图帧率提升算法,有效的提升其绘图帧率,增加该系列处理器在实时性显示领域的应用,具有很大的实用意义。
技术实现要素:
要解决的技术问题
为了避免现有技术的不足之处,本发明提出一种基于ufcp的绘图帧率提升方法。利用stm32f7芯片的显示接口有两个显示层的特性,开辟双缓存区,将两个缓存区分别对应到两个显示层。利用一个缓存区进行绘图,一个缓存区用于显示。将绘图和显示涉及到的存储区域隔离开,可以有效的提升绘图和显示的效率及实时性。
技术方案
一种基于ufcp的绘图帧率提升方法,所述的ufcp由stm32f7作为主控处理器,sdram存储绘制的视频数据,线收发器用于与外部设备进行通信,时钟与复位用于向stm32f7提供运行时钟和复位,电源模块对整个模块提供二次电源;其特征在于步骤如下:
步骤1:在sdram中设置两块绘图区域,一块用于绘图,另一块用于显示;
步骤2:stm32f7的视频接口有两个显示图层,将两个显示图层的数据区域分别对应两个绘图区域;
步骤3:初始化绘图功能,并开启一帧视频结束中断功能;
步骤4:判断一帧图像是否显示完成,如果完成则产生中断,调用中断服务程序;
步骤5:在中断服务程序中监控新的一帧视频是否绘制完成:在绘图程序开始阶段,将绘图标志位拉低,在绘图完成后,将绘图标志位拉高;通过监控绘图标志位,可以判断绘图是否完成;如果完成,则将视频接口的显示层切换到绘图完成区域对应的显示层,同时切换绘图到另一个区域;
步骤6:切换完成后,判断是否结束绘图,如果不结束,跳转到第5步;如果结束绘图,则结束。
有益效果
本发明提出的一种基于ufcp的绘图帧率提升方法,结合ufcp的高可靠性、高实时性、低功耗要求。根据stm32f7芯片的特点,设计两个绘图缓存区,将stm32f7的两个显示层分别对应到两个绘图缓存区。通过监控一帧显示完成的中断,并结合绘图结束标志。进行绘图区域和显示层的切换,保证一个区域用于显示,另一个区域用于缓存。将绘图和显示所用的存储空间隔离开,可以有效的提升ufcp的绘图帧率,满足并提升ufcp实时性显示的需求。
附图说明
图1是ufcp绘图的硬件架构;
图2是绘图帧率提升算法的流程图。
其中,1-stm32f7处理器,2-sdram存储器,3-时钟、复位单元,4-电源单元,5.线性收发器单元。
具体实施方式
现结合实施例、附图对本发明作进一步描述:
本发明利用stm32f7系列微处理的硬件平台,设计了一种新的绘图方法。该方法采用双区域绘图方式,一个区域用于显示,另一个区域用于绘图;并且利用监控硬件状态和软件状态,设计了状态转换算法。在保证绘图和显示正确性的前提下,有效的提升了绘图帧率;经测试,在绘制相同字符画面的情况下,本方面提出的绘图方式速率较官方绘图方式提升了6倍。
本发明实现利用stm32f7处理器的ufcp绘图帧率提升方法,包括以下几步:
步骤1:开辟两块绘图存储区域;
步骤2:将两块绘图存储区域与显示接口的两个绘图层进行关联;
步骤3:根据显示结束中断和绘图结束标志控制绘图区域的切换和显示区域的切换,保证开辟的两块绘图存储区域,一块区域用于绘图,另一块区域用于显示。
详细实施步骤如下:
1、在sdram中设置两块绘图区域,一块用于绘图,另一块用于显示;
2、stm32f7的视频接口有两个显示图层,将两个图层的数据区域分别对应到2中的两个绘图区域;
3、初始化绘图功能,并开启一帧视频结束中断功能;
4、判断一帧图像是否显示完成,产生中断,调用中断服务程序;
5、在中断服务程序中监控新的一帧视频是否绘制完成(监控的方案为:在绘图程序开始阶段,将绘图标志位拉低,在绘图完成后,将绘图标志位拉高。通过监控绘图标志位,可以判断绘图是否完成。),如果完成,则将视频接口的显示层切换到绘图完成区域对应的显示层,同时切换绘图到另一个区域;如果绘图未完成,则跳转到步骤4。
6、切换完成后,判断是否结束绘图,如果不结束,跳转到第4步。
7、如果结束绘图,则结束。
1.一种基于ufcp的绘图帧率提升方法,所述的ufcp由stm32f7作为主控处理器,sdram存储绘制的视频数据,线收发器用于与外部设备进行通信,时钟与复位用于向stm32f7提供运行时钟和复位,电源模块对整个模块提供二次电源;其特征在于步骤如下:
步骤1:在sdram中设置两块绘图区域,一块用于绘图,另一块用于显示;
步骤2:stm32f7的视频接口有两个显示图层,将两个显示图层的数据区域分别对应两个绘图区域;
步骤3:初始化绘图功能,并开启一帧视频结束中断功能;
步骤4:判断一帧图像是否显示完成,如果完成则产生中断,调用中断服务程序;
步骤5:在中断服务程序中监控新的一帧视频是否绘制完成:在绘图程序开始阶段,将绘图标志位拉低,在绘图完成后,将绘图标志位拉高;通过监控绘图标志位,可以判断绘图是否完成;如果完成,则将视频接口的显示层切换到绘图完成区域对应的显示层,同时切换绘图到另一个区域;如果绘图未完成,则跳转到步骤4;
步骤6:切换完成后,判断是否结束绘图,如果不结束,跳转到步骤4;如果结束绘图,则结束。