新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 基于μC/OS-II嵌入式操作系统的TCSC实验控制器前置单元设计

基于μC/OS-II嵌入式操作系统的TCSC实验控制器前置单元设计

作者:时间:2013-04-06来源:网络收藏

 中断服务程序( ISR)的设计

  AD采样和晶闸管触发这两项功能由中断服务程序( ISR)来完成。根据μC /OS-Ⅱ要求, ISR开始时需调用OSIntEnter ( )函数通知μC /OS-Ⅱ系统进入了ISR,ISR结束时需调用OSIntExit ( )函数通知μC /OS-Ⅱ进行进程调度。

  AD采样模块有3 个ISR,分别是: 定时器4 ISR(产生周期性的采样保持信号) ,定时器5 ISR (产生16μs的延迟,以符合S3C44B0X的多路选择器对切换时间的要求) ,AD ISR (读取AD采样结果,并进行相应的操作)。系统必须在两次Timer4中断之间完成6次AD采样工作。晶闸管触发模块有3组、每组2个ISR。每组的2个ISR分别为一个过零检测ISR和一个定时器ISR,共同控制一相的晶闸管触发。

 μC /OS-II任务设计

  通过PD IUSBD12 的Endpoint1 ( PacketSize = 16 B )接受上位机的命令,返回命令的执行状态,通过PD IUSBD12的Endpoint2 ( Packet Size = 64 B)返回AD 采样的结果。 这通过两个函数TaskUsbEp1RxDone和TaskUsbEp2SendData 可以实现, 同时通过TaskUsbSetupPacket函数来处理主机发来的请求。我们设置PD IUSBD12 的Endpoint1 ( Generic Endpoint) 工作在Interrup t 模式, Endpoint2 (Main Endpoint)工作在Bulk模式,则:

1) TaskUsbEp1RxDone

  TaskUsbEp1RxDone为前置机接受上位机采样或置触发角的任务,其工作流程下所示。

  先用OSSemPend ( )等待上位机发送命令,若上位机发来的COMM_START_AD命令,则:

  若TOTAL _ SAMPLE _ TIMES! = 0, 则通过Endpoint1返回错误信息给上位机,否则置AD_BUFF_P =0, TOTAL _ SAMPLE _ TIMES =所需采样的周期数×100,开启Timer4 (采样保持定时器) ,通过Endpoint1返回成功信息给上位机。

  若上位机发来的是COMM _SET_ANGLE命令则设置相应的X_ANGLE变量,能过Endpoint1返回成功信息给上位机。

2) TaskUsbEp2SendData

  TaskUsbEp2SendData任务的工作次序为先等待AD ISR发送要求传送数据的消息,消息发出后,在等待上次USB传送结束,再通过Endpoint2发送缓冲区中的数据。

3) TaskUsbSetupPacket

  TaskUsbSetupPacket任务工作次序为先等待SetupPacket事件,事件发生后再调用UsbControlHandler( )函数处理主机的请求。

 软件整体结构

  整体软件结构框图如图4所示(图中矩形框代表中断服务程序ISR,椭圆代表μC /OS-Ⅱ任务虚线框代表μC /OS-Ⅱ信号量或消息队列)。

 结 论

  实验结果表明,实际系统数据采集速度与设计时预期的结果基本一致,印证了现阶段结合数据采集、AD转换、数据传输及其它功能模块如过零检测、触发可控硅等诸多任务于一体的复杂系统,必须有功能强大的硬件资源平台做支撑;在多任务、实时性较强的场合,嵌入式实时操作系统是必不可少的;在数据传输方面,USB在速度方面的优势比传统的RS232更能满足TCSC实时控制的要求。

参考文献:

[1].RS232datasheethttp://www.dzsc.com/datasheet/RS232_585128.html.
[2].S3C44B0Xdatasheethttp://www.dzsc.com/datasheet/S3C44B0X_5892.html.
[3].74HC14datasheethttp://www.dzsc.com/datasheet/74HC14_99158.html.
[4].TTLdatasheethttp://www.dzsc.com/datasheet/TTL_1174409.html.
[5].LF398datasheethttp://www.dzsc.com/datasheet/LF398_842703.html.
[6].74LS04datasheethttp://www.dzsc.com/datasheet/74LS04_772886.html.
[7].Bulkdatasheethttp://www.dzsc.com/datasheet/Bulk_2523104.html.


上一页 1 2 3 下一页

评论


相关推荐

技术专区

关闭