走进紫芯
查看文章

A1150全新32位MCU,真彩LCD刷屏性能最优

LCD人机交互(HMI)终端

     TFT-LCD液晶屏作为“人机交互HMI界面”或“人机交互显示终端或模组”,越来越广泛地应用于家用电器、仪器仪表、智能装备、智能家居、工业自动化设备、手持设备、医疗设备、新能源充电桩、人工智能、安防设备等各行业的产品中。这些产品一般采用一个专门用于控制终端的人机交互(HMI)的串口屏或组态屏模组,其硬件一般由显示控制驱动板和TFT-LCD液晶显示屏组成,通过USART串口或者SPI串口等与产品的主机进行通讯并实现控制和交互的功能。提供这种串口屏或组态屏的厂商一般还提供一种图形化的人机交互功能设计软件,用户不需要做描点、画线的等界面设计工作,直接调用代码函数或采用图形界面设计图形化的产品界面,降低了设计难度和工作量,让设计人员把更多的精力集中于产品研发上,提高了开发效率。另一种方法是由产品开发者采用产品主控板上的处理器或微控制器芯片来直接控制和驱动TFT-LCD显示屏,这种方法的好处是对于家电等大批量生产的产品,可以省略购买模组的中间环节并节省成本。不管采用哪种方法,液晶显示屏的控制和图形界面以及通讯等核心功能都会采用微控制器(MCU)芯片来实现。

用于人机交互(HMI)的MCU芯片

    MCU(Microcontrollers)是一种集成电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU、随机存储器RAM、多种I/O接口、定时器/计数器、模数转换器等功能集成到一颗芯片上而构成的一个完整的微型计算机系统。在HMI应用中,MCU扮演着最核心的角色,对于显示屏的界面效果和用户体验起到了决定性的作用。 

    在众多MCU的性能和功能中,对于图形界面性能最具挑战,对产品影响最大的莫过于刷屏速度了。如果CPU刷屏速度不够快,在切换画面过程中,人眼会明显看到画面由上到下或由左到右的变化,会同时呈现前后两幅画面,在两幅画面交接的地方就会看到画面被撕裂一样的线条。而由于3.5寸等小尺寸屏幕的像素颗粒大,画面撕裂线会非常明显。目前市场上绝大多数用于HMI或串口屏的MCU芯片,除非通过特殊软件处理,480*320分辨率的屏刷屏时间普遍都在50-100mS左右,无法满足要求。实际应用中,必须将刷屏速度提升到10mS级后,画面切换才会比较流畅,同时消除了画面撕裂线的情况。

怎样提高刷屏性能?

    哪些因素会影响MCU刷屏的性能呢?我们来看一下刷屏时间的计算方法:众所周知,i8080总线(CPU总线)的屏幕使用的图片数据为RGB565格式的取模数据,比如分辨率为320*480的图片,他的取模数据为320*480*2=307200字节。假如CPU的主频为64MHz,单线SPI的时钟频率是32MHz,数据从Flash读取的速度为4MB/秒,也就是说仅仅将图片从Flash读取进来就需要耗时307200/4000=76.8毫秒,显然这个速度对于用户来说是无法接受的。

    那么有哪些办法能够提高这个速度呢?首先,我们看到从Flash读取的速度是最大的瓶颈,这个速度受到了SPI接口的频率和带宽的制约。如果一颗MCU的SPI为单线,接口的时钟频率又低于80MHz的话,从Flash读取数据的绝对时间则大于30毫秒,也就是说该MCU芯片不适合用于LCD刷屏应用。如果能提高SPI的频率,并采用4线的QSPI,将大大提高图片数据读取的速度。

    有人会很容易地想到用数据压缩的办法来提高刷屏性能,也就是用解压缩的时间换取更小的数据读取的时间。如果MCU内部没有集成JPEG之类的硬件解压缩功能,那么就需要耗费CPU时间来进行软件解压缩。在这种情况下,要求CPU的主频越高,流水线级数越多,软件运行速度越快越好。例如一个主频96MHz的M0内核,由于其内部采用3级流水线,比一个主频64MHz的M0+内核(2级流水线)的软件运行性能要高出2倍以上。此外,采用i8080接口的LCD显示屏一般采用软件模拟i8080硬件接口的时序,CPU的主频越高也会对刷屏性能有所提高。例如,在屏上显示单色数据的时候,刷一帧图片的时间主要取决于i8080接口时钟频率和软件模拟时序的速度,这个时候刷屏速度和Flash的访问速度无关,主要取决于CPU的效率。

    由于刷屏本身的时间少于Flash读取数据的时间,可以把刷屏和读取数据进行同步处理,这就是有些串口屏供应商宣称的“0”时间或“负”时间刷屏的机制。但是这并不能减少数据从外部存储到显示屏上出现的绝对时间。

    此外,还有一些软件处理的方法,比如采用对BMP RGB图片进行2次简易压缩,以缩小数据量的消耗,减少刷图过程中对Flash的访问次数。但是这种方法会受到图片本身特点的限制,比如需要显示的图片比较简单,整个图片只有几种颜色,可以达到很高的压缩率,那么对Flash的读取时间就很小,甚至可以忽略不计,其刷图速度接近刷单色图片。但是,如果图片颜色极其丰富,压缩率极低,甚至根本没有办法压缩,那么刷屏还是会受制于Flash的读取速度。

A1150:为LCD刷屏而生的MCU

A1150是一款高性能的采用M0内核的32位MCU,专门为LCD触控屏应用开发的一款高性能微控制器芯片,M0内核主频为96MHz,芯片内置32KB的可用于数据的SRAM,片外Flash可通过XIP直接运行软件,4线的QSPI速度高达96MHz,实现连续高速的外部Flash读取数据,特别适合刷屏等MCU应用。此外,芯片还集成12位ADC和比较器等丰富的硬件和接口资源,在刷屏之外,还有足够的性能冗余进行其它控制和运算。

以下是A1150E的关键特性:

(1)适用于小尺寸的i8080接口LCD模组,分辨率高达480*320时刷屏速度12ms以下;

(2)支持电阻触摸屏和电容触摸屏;

(3)支持i8080接口8-bit,16-bit数据总线以及SPI数据总线;

(4)支持SD卡固件升级以及图片字库等资源数据升级;

(5)Flash容量无限制;

(6)支持 MCU芯片唯一序列号、随机数发生器等加密,保证代码安全;

(7)集成12位高精度ADC和比较器,支持2路USART,1路I2C等外设,外扩应用灵活。

 配置

 A1150E 

某厂家S

某厂家A

内核

M0

M0+

M4

主频

96MHZ

64MHZ

120Mhz

FLASH

外置最大支持到64MB

64KB

64KB

SRAM

40K(32K + 8K)

8KB

16KB

SPI

4线 96MHZ

单线

单线

刷图速度

12ms

25ms

9ms(简单色彩)

50ms(色彩丰富)

资源储存

QSPI nor Flash

SPI nor Flash

SPI nor Flash

服务与支持

控件+上位

 

如您对 A1150E 感兴趣,请及时与我们取得联系。我们将竭诚为您服务。