新闻中心

EEPW首页>嵌入式系统>设计应用> 基于DSP的铝电磁铸造磁场控制器的设计和实现

基于DSP的铝电磁铸造磁场控制器的设计和实现

作者: 时间:2009-10-23 来源:网络 收藏

(5)人机接口
人机接口处理采用专门的单片机进行管理,单片机与系统主控制核心间采用SPI总线形式通信,编程简单且容易。单片机主要完成键盘扫描(参数的设置等)、液晶显示(运行检测的参数显示)功能。根据人机接口功能的需要,考虑性价比,选用新华龙推出的C8051F410单片机,显示装置则选择北京青云公司的LCM128×64蓝色背光液晶,按照总体规划设置6个按键,采用矩阵式结构即可。人机接口框图如图6所示。

本文引用地址://m.amcfsurvey.com/article/152311.htm

1.2 系统软件
(1)系统软件架构
鉴于整个系统要的任务繁多,各外设均被应用,对处理的实时性要求比较高,并且(TMS320F2808)平台支持和能承载RTOS的开发,所以系统软件采用mC/OS-II设计。mC/OS-II是一种源码公开、可移植、可固化(ROMable)、可裁减(scalable)、可剥夺性(preemptive)、占先式的实时多任务操作系统[3,5]。整个系统软件分为两步:a.μ C/OS-II到DSP移植;b.μC/OS-II平台上软件的编写。μ C/OS-II到DSP移植只需要修改与处理器相关的OS_CPU.H、OS_CPU_C.C和OS CPU A.A三个文件的代码,移植的工作量相对较小。由于μ C/OS-II是优先级的抢占式实时多任务操作系统,因此,在进行代码编写之前,应先确认系统的任务数,每个任务的优先级别,并为每个任务分配一定数量的堆栈空间以供运行时调用。也就是说,要首先对复合控制系统软件的各功能模块进行管理。

根据复合控制系统的特殊性,将控制软件分为0~9十个级别,表1为软件各功能模块以及分别对应的任务名称、任务优先级别。
控制程序的流程是:首先进行CPU及程序数据初始化;再进行操作系统初始化,主要完成任务控制块(TCB)初始化、TCB优先级表初始化、TCB链表初始化、事件控制块(ECB)链表初始化、空任务的创建等等;然后创建任务D TK ST,在任务D TK ST中再创建其他任务;最后启动多任务调度。在多任务调度开始后,启动时钟节拍源开始计时,此节拍源给系统提供周期性的时钟中断信号,延时和超时确认。当时钟中断来临时,系统把当前正在执行的任务挂起,保护现场,进行中断处理,判断有无任务延时到期,若有,则使该任务进入就绪态,并把所有进入就绪态的任务的优先级进行比较,通过任务切换去执行最高优先级的任务,若没有别的任务进入就绪态,则恢复现场继续执行原任务。任务之间通过信号量和消息邮箱进行通信,任务和中断之间通过消息邮箱进行通信。
在保证功能实现的基础上,为进一步提高系统的可靠性,增加了系统监控任务。该任务功能是监视系统其他任务的运行。被监视任务在其即将运行完毕时监视任务发送消息说明自身运行正常。被监视任务运行时,监视任务等待被监视任务给它发送消息,等待时间被设定为预计的任务正常运行所需的最大时间。若等待时间内监视任务收到消息,则认为发送消息的任务运行正常,依照各任务执行顺序的开始运行下一任务,监视任务等待下一任务发送的消息。若等待时间已过,监视任务仍未收到消息,则系统的时间管理函数将强行把监视任务视为就绪状态。因为监视任务的优先权是最高的,它将抢占对CPU的控制权并采取相应的纠错方案以保证系统的稳定运行。



评论


相关推荐

技术专区

关闭