系统以S3C44B0X 的T0 定时器作为操作系统的时钟源,中断频率为10ms。系统每隔10ms 就调用一下键盘查询程序以实时响应键盘事件,串口和CPU之间的SPI 通信采用中断方式接收和发送。任何时候只要没有关中断,中断的执行就高于任何任务以保证通信的实时性。根据控制系统的工作要求,任务可划分为键盘任务,茶杯给水任务,茶杯给水定时设置任务,无影灯任务,LED 指示灯任务,报警信息任务和冲洗痰盂任务。
因为任务间、任务和中断间的通信都是基于信号量机制集中管理,所以要建立起信号量的保护机制。
在起始任务StartTask 中,首先建立一系列的信号量和邮箱:
然后,用OSTaskCreate( )函数建立7 个任务。最后,在起始任务中将它本身删除掉。
(1) 键盘任务:调用OSSemPend(Sem_Keyboard,0,&err)来获得信号量。获得信号量后,任务将调用邮箱发送消息任务OSMboxPost (OS_EVENT*pevent,void*msg)唤醒相应的其它任务。
(2) 茶杯给水任务:向茶杯中加水。该任务通过OSMboxPost(Mbox_Cup电感线圈,Msg_Cup)被唤醒。
(3) 茶杯给水定时设置任务:设置茶杯给水定时时间。该任务通过OSMboxPost(Mbox_CupSetting,Msg_CupSetting)被唤醒。
(4) 报警信息任务:牙椅运动到达障碍位置报警等的报警信息,并进行相应的处理。该任务调用OSSemPend(Sem_AlarmTask,0,&err)获得信号量。
(5) 冲洗痰盂任务:冲洗痰盂。该任务通过OSMboxPost (Mbox_Ty,Msg_Ty 被唤醒。
(6) LED 灯指示任务:通过动态扫描方式点亮相应的键盘指示灯来指示当前的系统工作状态。该任务通过OSMboxPost (Mbox_LED,Msg_LED)被唤醒。
(7) 无影灯任务:开关及连续调节无影灯亮度。
该任务通过OSMboxPost(Mbox_Move,Msg_Move)被唤醒。
在系统中,设置任务1 的优先级最高,依次为任务2、任务3 至任务6,程序流程如图3所示。
在上述任共模电感器务中,CPU 主要是接受键盘的输入以唤醒其它相应任务,另外还有相应的记录位置的任务和与上位机通信的任务,这里不再做详细介绍。
3 控制系统调试结果
长时间口腔诊疗应用调试运一体成型电感器行,本牙椅控制系统能够及时响应输入并按要求运动,返回的记忆位置误差控制在1mm 内,茶杯水位误差不超过2mm,运行结果表明,控制系统与上位机的通信及两CPU 之间通信实时性、可靠性均满足设计要求,且整个系统运行平稳可靠绕行电感,便于调试和维护,提高了牙椅自动化水平和档次。
4 结语
本文采用嵌入式处理器和实时多任务操作系统增强了系统的功能,提高了系统的可靠性、实时性并使系统具有良好的可扩展性,便于后续扩展图像采集和人机界面功能,为进一步开发高端产品奠定基础。
无刷直流电机控制器MC33035的原理及应用摘要:MC33035是美国安森美公司开发的高性能第二代单元无刷直流电机控制器,它包含开环三相或四相电机控制所需的全部有效功能。该器件由具有良好整流序列的转子位置译码器、可提供传感器功率的温度补偿参考、
陀螺仪数字可调式测试电源方案设计
陀螺电机是惯性器件陀螺仪的主要构成部分,而陀螺仪是惯性导航系统的核心元件,广泛运用于舰船导航和各种武器系统中。陀螺电机的性能好坏,将直接影响陀螺仪的性能以及整
弱信号放大 生物电信号放大专题报告学生党求助大二学生党啊
刚接触电路
最近要做关于生物电信号放大的专题报告
我选的是心电放大但不知道怎么下手
(该电路的设计目标可供你参考
(1)电压放大倍数:1000,误差:±5%;
(2)-3dB