·上一文章:高压恒流充电电源监控系统设计
·下一文章:基于JSP技术的酒店客房管理系统设计与实现
3.3 软件总体设计
基于以上数据结构,软件设计的流程如图5所示。系统首先进行初始化操作,然后从Flash中读取显示屏参数,进行参数初始化。接着建立任务TaskControl(),其优先级比各窗口显示任务都要高,主要用于实时管理各窗口显示任务,每个窗口的显示由单个窗口显示任务来控制。
窗口显示任务根据各窗口显示方式的不同,在其对应的part存储区域进行下一帧数据的处理运算,然后调用窗口显示子任务进行显示。在完成一帧数据的显示后,调用一次OSTimeDlyHMSM()使当前任务进入等待状态,下一个优先级最高并进入了就绪态的任务,立刻被赋予了CPU的控制权,由此完成窗口显示任务之间的切换。任务TaskControl()定期查询Reset是否有效,若有效则删除原来建立的任务,重新读取窗口数,建立新任务,启用各个窗口显示任务Task_i。
任务TaskControl的伪程序段描述如下:
4 结语
本设计充分利用了NiosII32位处理器的高性能和μC/OS2II实时操作系统高效的任务调度算法,实现了单屏幕多窗口显示,且显示屏控制变得更加灵活。整个控制系统在1片FPGA芯片上完成,有效地降低了系统的成本。