您的位置 首页 发布

根据NiosⅡ嵌入式渠道完成μC/GUI在便携式医疗监护仪上的移植

便携式医疗监护仪已成为人们日常生活中不可缺少的一部分。便携式设备是由硬件与软件紧凑组合的一个单元模块,是一种体积小、智能化程度高、功能全、使

便携式医疗监护仪已成为人们日常日子中不行短少的一部分。便携式设备是由硬件与软件紧凑组合的一个单元模块,是一种体积小、智能化程度高、功用全、运用灵敏、操作便利的便携机,合适家庭运用、外出带着等用处。为了使便携式心电监护仪完成友爱的人机交互和愈加便利的显现,这儿提出一种GUI界面体系规划,便是在依据NiosⅡ处理器的嵌入式渠道上完成μC/GUI的移植,使之完成体系功用。

1 μC/GUI的体系移植

1.1 μC/GUI简介及可移植性剖析

μC/GUI是Micrium公司开发的通用的嵌入式图形用户界面软件,其间图形用户接口GUI(Graphical User Interface)。该界面软件被规划用于为任何运用一个图形LCD的运用供给一个有用的不依赖于处理器和LCD操控器的图形用户接口。它能作业于单任务或多任务的体系环境下。μC/GUI适用于运用任何LCD操控器和CPU的任何尺度的物理和虚拟显现,具有源代码敞开及模块化规划的特色。

μC/GUI的代码悉数用ANSI的C言语编写的,具有很强的移植性。因为μC/GUI选用分层结构,即具有驱动接口层和运用层,因而可便利地移植到各种 CPU下运用。μC/GUI对各类图画LCD显现器具有杰出的支撑,并且有常见的2D图形库和窗口办理功用,并且耗费较少的体系资源,占用RAM和ROM 的空间很小。在典型的运用中,μC/GUI需求的资源如表1所示。由表1可见,运转μC/GUI需求的体系资源不是许多,并支撑简直一切类型的CPU与大多数的LCD模块,μC/GUI的源代码规划适中,移植进程中可将不需求的代码进行除掉,并且结构层次明晰,因而合适用于嵌入式体系中。

1.2 μC/GUI移植原理

嵌入式用户图形界面体系μC/GUI与嵌入式实时操作体系μC/OS-Ⅱ都是美国Micrium公司产品,μC/GUI能更轻易地在 μC/OS-Ⅱ上运用,完成与μC/0S-Ⅱ的无缝结合。在NiosⅡ嵌入式体系中,Altera公司现已将μC/OS-Ⅱ操作体系移植成功并且供给运用,所做的作业是将μC/GUI移植到NiosⅡ嵌入式渠道之上,使其能与μC/OS-Ⅱ操作体系结合运用,选用μC/GUI 3.98版别的源代码进行移植。

μC/GUI的软件体系结构如图1所示,μC/GUI函数库为用户程序供给GUI接口,包括的函数有文本、数值、二维图形、输入设备以及各种窗口目标。其间,输入设备可所以键盘、鼠标或触摸屏;二维图形包括图片、直线、多边形、圆、椭圆、圆弧等;窗口目标包括按钮、编辑框、进度条、复选框等。

μC/GUI函数库能够经过GUIConf.h文件进行装备,包括内存设备,窗口办理器,支撑操作体系、触摸屏,以及装备动态内存的巨细等。在移植中,需求依据体系需求以外设所支撑的功用对GUIConf.h文件进行装备。

在LCDConf.h文件中界说了与硬件有关的各种特点,如液晶的巨细、色彩以及与液晶的接口函数。而LCD驱动文件则担任把μC/GUI的各种函数解说成LCDConf.h文件界说的液晶接口函数,这个文件与具体的硬件联接无关。在移植时,需求对LCDConf.h文件进行装备,并针对LCD操控器编写相应的LCD驱动文件。

2 μC/GUI在NiOSⅡ上的移植规划

2.1 TFT LCD IP核结构

μC/GUI的移植是依据IP核的移植,编写TFT LCD操控器,所以移植时,在底层装备文件,参数的装备要和TFT LCDIP的相关参数相匹配,不然不行能移植成功,该IP核的结构如图2所示。

液晶屏选用台湾统宝公司的TRDB_LCM 3.6寸屏,该屏的分辨率是320×240,支撑24位色,也便是RGB888方式,可是因为Avalon总线支撑传输数据宽度的差异,因而只用16位色,即RGB为565的方式。因为DE2-70有2个32 MB的SDRAM,所以拿运用其间一块作为数据的存储器,Nio-sⅡ处理器将图画数据写入该SDRAM中,在NiosⅡIDE顶用软件操控缓冲器的敞开,当敞开缓冲器之后,该BUFFER会源源不断地读取SDRAM中的数据,为防止读数据和NiosⅡ处理器向其间写入数据时发生冲突,Avalon总线主动在二者之间参加了一个Arbitrator裁定模块来决议履行哪个操作。

装备LCD选用3线串行总线装备LCD,缓冲器以Avalon存储器映像主机的方法从SDRAM中读取数据,然后以Avalon Streaming Soume的方法把这些数据传送到LCD操控器上,LCD操控器是以Avalon Streaming Sink的方法接纳从缓冲器传来的数据,LCD操控器生成时序,在恰当时分将数据送出到TFT LCD屏上显现。

2.2 移植进程

2. 2.1 μC/GUI的文件安排结构

μC/GUI是以ANSI C源码包的方式供给的。源码包由装备文件目录(Config)和库函数目录(GUI)2个文件目录组成。在Config目录中包括了LCDConf.h、GUITouchConf.h、GUIConf.h 3个装备文件,这3个文件别离用于LCD底层接口的装备、触摸屏底层接口的装备以及μC/GUI本身的装备。在GUI目录中的库函数文件依照不同功用又分红若干子目录如图3所示,各子目录所完成的功用如表2所示。

2.2.2 移植进程

首要树立一个硬件体系,选用Altera公司的QuartusⅡ9.0版别的配套软件,硬件体系在QuartusⅡ集成的 SOPCBuilder体系开发东西中树立,添加NiosⅡ处理、JTAG调试模块、添加定时器SDRAM操控器、BUFFER IP、TFT LCD IP以及其他部分组件,终究生成一个硬件体系。然后在NiosⅡIDE环境下针对该体系树立一个TFT LCD软件工程,并且将μC/GUI有关的源代码拷贝到工程目录下,修正LCDConf.h、GUIConf. h、LCDLin32.c以及GUI_X_uCOS.c文件,使之与LCD操控相匹配,在该体系中,LCD选用16位数据总线,而CPU是32位的 NiosⅡ软核处理器,先查看一下μC/GUI所支撑的数据宽度信息,其数据宽度和NiosⅡ处理器所支撑的宽度根本符合,只要在改动代码时留意就能够。以下是具体的代码完成状况:

因为这儿是依据TFT LCD IP核的移植,所以要界说LCD的读写函数,即LCD_READ_MEM(Off)和LCD_WRITE_MEM(Off,data)以及显现缓存区的开始方位,读写函数中的Off和data都是32位的无符号数,而操作函数IORD_32DIRECT()以及IOWR_32DIRECT()都是一次履行 32位数的操作,刚好和NiosⅡ处理器的数据宽度相匹配。因为支撑μC/OS-Ⅱ操作体系,所以要对GUI_X_uCOS.c文件进行修正,添加体系延时函数OSTimeDly(1),使之能与μC/OSⅡ操作体系完成无缝联接,以及3个子函数,void GUI_X_Log(const char*s){GUI_USE_PARA (s);};void GUI_X_Warn(const char*s){GUI_USE_PARA(s);};void GUI_X_ErrorOut(const char*s){ GUI_USE_PARA(s);};LCDLin32.e是对应3200类型操控器的驱动文件,因为在LCDConf.h中现已对用到的参量进行设置,所以无需修正,剩余的作业便是把不必的文件进行除掉,以削减编译时发生剩余的代码量。

3 移植验证

在NiosⅡIDE环境下修正装备文件以及驱动文件,然后编译该体系,体系编译成功,编译成功之后还有MICRIUM公司的联系方法,这个是提示用户该系列软件假如要用于商业意图是需求买license的,用于研讨意图是免费的。

图片验证是选用μC/GUI自带的位图转化东西uC-GUI-BitmapConvert.exe,该东西能够将.bmp格局图片转化成指定的C言语数组的方式保存,例如将兰博基尼跑车标志的图片转化成RGB565的格局进行保存,参加工程,编译工程,然后下载验证,如图4所示。窗口办理组件验证选用代码包中自带的一个测验代码,其作用如图5所示。试验结果表明,移植是成功的。

4 定论

本文介绍了μC/GUI界面体系,以及NiosⅡ嵌入式体系,具体介绍了移植的进程,以及终究完成移植。试验结果表明,在嵌入式体系中运用μC/GUI进行人机界面的开发,不光移植简略、运用灵敏,并且功用强大,安稳高效,大大降低了在嵌入式体系中开发图形人机界面的杂乱程度,并且 μC/GUI还供给了几个十分有用的东西软件,其间包括一个仿真器,它使得在进行移植作业的一起,就能够在仿真器上进行软件界面部分的程序编写,加快了整个体系的开发进度。还有位图转化东西,能够轻松地将图片转化成C言语数组的方式保存,便利界面开发。μC /GUI还支撑其他PS2鼠标、PS2键盘、触摸屏,包括丰厚的绘图库、动画显现优化、还能够自己参加中文字体,经过运用μC/GUI的各项功用,信任能够在嵌入式体系中开宣布功用强大的人机界面,并且在嵌入式体系中有很好的运用远景。

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/changshang/fabu/138766.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部