采集板程序设计报告.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
可控源中子孔隙度采集板程序设计报告 PAGE PAGE 5 硬件介绍 采集板使用Freescale芯片,型号为MC9S12DJ64,开发环境CodeWarrior IDE。外部晶振频率2.4576MHz,外围器件:通过IIC总线连接的4片存储器,型号为24LC1025;SCI模块连接MIX4426,实现QBus通信;脉冲累加器连接MIX4426采样长、短远距计数;时钟芯片DS1629;复位芯片max705。另外,单片机的端口B口控制FP2702的开关。 §1程序实现的功能 通过QBus总线与上位机通讯; 中子仪器长短道计数采样; 计数率、孔隙度的计算并存储于外部存储器; 井下温度采样AD转换并存储外部存储器; 发生器电源开与关的控制。 功能模块图如下: §2程序实现流程 为结构化、高效实现仪器功能要求,程序流程设计有:主流程、初始化流程、参数读写稳定设计流程、定时器使用流程、延迟状态流程、命令解析流程、命令处理流程、响应开关泵情况下处理流程、不响应开关泵情况下处理流程。 流程图说明: 一 数据存储状态 1.响应MWD系统广播指令,在泵打开情况下,中子发生器打开或关闭状态:计数率和孔隙度数据每间隔8秒(可调)存储,;数据指针存储; 2.响应MWD系统广播指令,在泵关闭情况下,存EEEE(标准)及关泵时间有多少个时间间隔(8秒)。 注:是否响应开关泵命令由响应开关泵标志确定(1有效)。 二.系统的工作状态有四种 1 延迟状态 2 中子发生器正常运行的状态(简称中子运行状态) 3 中子发生器运行时间到的关闭状态(简称中子关闭状态) 4 系统停止状态 三.系统重新启动的条件 系统在停止条件下必须有参数的有效设定才能重新工作,用重新启动标志(Reset_Flag)位表示。 四.开关泵状态的切换(响应开关泵的间隔) 系统收到开关泵命令时,只有当前泵状态和要求状态不一样时才开始预处理(延迟开始),在预处理过程中如果又收到状态切换,则预处理结束并且不进行开关泵处理,这里有两个标志位,一个为当前开关泵状态,一个为预处理要求泵状态。 流程图如下:图中标红的部分是现阶段没有实现的部分,在下阶段实现。 §3程序定义的变量类型及意义说明 宏定义 #define stop 0 //系统停止状态 #define delay 1 //延迟状态 #define PNG_on 2 //中子运行状态 #define PNG_down 3 //中子关闭状态 #define pump_on 4 //开泵命令 #define pump_down 5 //关泵命令 #define system_on 6 //系统启动标志 #define cmm_stop 0 //停止命令标志 #define cmm_pump_down 1 //关泵命令标志 #define cmm_pump_on 2 //开泵命令标志 #define cmm_parameter_set 3 //参数设置标志 #define cmm_get_eeprom_data 4 //取数命令标志 #define cmm_clear 5 //清零命令标志 #define cmm_system_on 6 //系统运行命令标志 #define worktime_gap 8 //发生器工作时间更新间隔 变量 unsigned char interval = 0; //定时器50ms变量 long second = 0 ; //1S 变量 unsigned char minute = 0 ;

文档评论(0)

zzqky + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档