文档库 最新最全的文档下载
当前位置:文档库 › 51、民用机场飞行程序和运行最低标准管理规定

51、民用机场飞行程序和运行最低标准管理规定

51、民用机场飞行程序和运行最低标准管理规定
51、民用机场飞行程序和运行最低标准管理规定

民用机场飞行程序和运行最低标准管理规定

目 录

第一章 总则

第二章 飞行程序设计和运行最低标准拟定

第三章 飞行程序和运行最低标准的批准、校验、试飞和公布

第四章 飞行程序和运行最低标准的使用和维护

第五章 飞行程序设计人员和单位的管理

第六章 监督检查

第七章 法律责任

第八章 附则

第一章 总 则

第一条 为了保障民用航空器的飞行运行安全,规范民用机场飞行程序和运行最低标准的管理工作,根据《中华人民共和国民用航空法》、《中华人民共和国飞行基本规则》和《民用机场管理条例》,制定本规定。

第二条 本规定适用于中华人民共和国境内民用机场(含军民合用机场的民用部分)飞行程序设计和运行最低标准拟定、批准、使用、维护,以及与飞行程序和运行最低标准相关的航行服务研究活动。

第三条 本规定中的飞行程序,是指为航空器在机场区域运行所规定的、按顺序进行的一系列机动飞行的要求,如飞行区域、航迹、

高度、速度的规定和限制等,一般包括起飞离场程序、进场程序、进近程序、复飞程序和等待程序等,分为仪表飞行程序和目视飞行程序两类。仪表飞行程序包括传统导航飞行程序和基于性能导航(PBN)飞行程序。

机场运行最低标准,是指机场可用于起飞和进近着陆的运行限制,包括能见度(VIS)、跑道视程(RVR)、最低下降高度/高(MDA/H)、决断高度/高(DA/H)、云底高等。

第四条 运输机场应当建立仪表飞行程序,根据需要建立目视飞行程序。通用机场可以建立仪表或者目视飞行程序。

第五条 中国民用航空局(以下简称民航局)负责全国民用机场飞行程序和运行最低标准的监督管理,制定相关政策和技术标准,对飞行程序设计人员和单位实施管理。

第六条 中国民用航空地区管理局(以下简称地区管理局)负责本辖区内民用机场飞行程序和运行最低标准的批准和管理,组织机场试飞,监督检查实施情况,具体负责飞行程序设计人员和单位的日常监管。

第七条 机场管理机构负责机场飞行程序设计和运行最低标准拟定、修改、优化、维护及报批工作。

机场管理机构应当建立并持续完善有关飞行程序设计和运行最低标准工作的制度和程序。

第二章 飞行程序设计和运行最低标准拟定

第一节 基本要求

第八条 飞行程序设计和运行最低标准的拟定应当遵循以下原则:

(一)保证航空器在拟定的飞行航线和高度上具有规定的超障余度,可以安全飞越或避开障碍物;

(二)满足航空器性能要求,便于飞行驾驶员操作,有利于提高航空器运行的安全、正常和效率;

(三)符合空域使用要求,便于提供空中交通服务,减少飞行冲突的可能性,有利于提高机场容量和使用效率;

(四)有利于环境保护,降低噪音影响,减少燃油消耗;

(五)与城市建设规划相协调;

(六)有助于航行新技术应用的推进。

第九条 飞行程序设计和运行最低标准拟定应当考虑下列因素:(一)地形和障碍物特征及净空处理方案;

(二)机场设施、设备保障条件;

(三)航空器类别、性能和机载设备;

(四)起飞一发失效应急程序的需要;

(五)驾驶员的操作;

(六)空域状况;

(七)与相关航路、航线的衔接;

(八)空中交通服务方式;

(九)航空气象特点;

(十)环境影响、机场发展和城市规划。

第十条 飞行程序设计和运行最低标准拟定应当遵守国际民航

组织(ICAO)《空中航行服务程序-航空器运行》(Doc 8168)、其他相关技术标准以及民航局的有关规定。因地形条件、空域使用等原因,确需偏离上述标准的,应当进行安全评估并获得民航局的特别批准。

第十一条 飞行程序设计和运行最低标准拟定可由机场管理机构自行完成,也可委托飞行程序设计单位完成。

第十二条 飞行程序设计和运行最低标准拟定过程中,拟定单位应当征求航空器运营人、空中交通管理部门等相关单位的意见,上述单位应当予以配合。

第十三条 机场管理机构负责与当地政府协调军民航有关单位,共同解决飞行程序设计所需空域条件。

第二节 新建、改建、扩建运输机场飞行程序设计

和运行最低标准拟定

第十四条 新建、改建、扩建运输机场的飞行程序设计和运行最低标准的拟定应当与机场选址、规划和建设同步进行,一般分为四个步骤:

(一)飞行程序预先研究;

(二)飞行程序方案研究;

(三)飞行程序初步设计;

(四)飞行程序正式设计。

第十五条 “飞行程序预先研究”是在运输机场选址或者项目建议书(预可行性研究)阶段,根据飞行运行环境的基本要素,对备选场址或方案进行飞行程序方面的综合分析和比选论证,推选对航空器运行和空中交通管理较为有利的场址或方案。主要内容包括:

(一)净空条件;

(二)空域状况;

(三)气象因素;

(四)跑道基本构型和运行方式;

(五)导航设施基本方案;

(六)航线和进离场基本方案;

(七)对城市规划和环境保护的影响;

(八)对于地形和空域复杂的场址,还应当包括对起飞、最后进近的具体计算和说明,以及其他论证所需材料;

(九)军民航协调意见。

第十六条 “飞行程序方案研究”是在运输机场建设可行性研究阶段和机场总体规划阶段,根据确定的场址和预可行性研究结论,或者根据机场的总体规划方案,确定飞行程序基本方案。主要内容包括:

(一)跑道构型和位置;

(二)空域规划方案;

(三)航线和进离场方案;

(四)导航设施布局和目视助航设施;

(五)起飞、最后进近程序及运行最低标准;

(六)净空控制的基本要求和净空处理方案;

(七)军民航飞行程序协调情况和结论。

第十七条“飞行程序初步设计”是在运输机场工程可行性研究获得批准后,根据批准的建设规模和总体规划以及净空处理方案、空域协调方案和导航台址预选情况,提出飞行程序的具体设计方案。主

c语言:流程控制语句

流程控制 ======= 知识点: if-else语句使用 switch语句使用 break使用 正常情况下,程序从main函数开始,一句一句,自上而下执行每一条语句。 一些语句可以控制,修改程序的运行流程,称为流程控制语句。 一、条件判断语句if if(表达式){ 语句 } 如果……就…… 【逻辑】当程序执行到if语句,首先计算表达式的值,如果为真,执行语句。如果为假,不执行、跳过语句。 【逻辑假设】 if(表达式){ 语句1 }else{ 语句2 } 如果……就……否则…… 【逻辑】当程序执行到if else语句,首先计算表达式的值,如果为真,执行语句1,不执行语句2。 如果为假,执行语句2,不执行语句1。 【逻辑二择】 例,明天考试,80分以下把代码抄写五遍,80分以上奖励棒棒糖一枚。 if(表达式1){ 语句1 }else if(表达式2){ 语句2 }else if(表达式3){ 语句3 } else{ 语句4 } 如果(表达式1成立),那么执行语句1 否则如果(表达式2成立),那么执行语句2 …… 否则,执行语句4。

【逻辑】当程序执行到该结构,计算机表达式1,如果成立,执行语句1,跳出整个结构。如果表达式2为假,计算表达式2,如果为真,执行语句2,跳出结构体。直到表达式2为假,计算表达式3,依次类推,如果表达式都不成立,执行else下的语句。 如果不需要(即所有表达式都不成立,什么都不做),可以不写else。else if的数量根据需求,任意增减,没有限制。 【注】在if else if结构中,每个else都是对前面每个表达式的否定。 【逻辑多择】 嵌套的if-else语句 我们可以在if语句内嵌套if语句,同样,我们也可以在if语句内嵌套if-else语句,在if-else 语句内嵌套if语句,以及在if-else语句内嵌套if-else语句。 int x; scanf(“%d”,&x); if(x<0){ printf(“error!\n”); }else{ if(x%2) printf(“jishu\n”); else printf(“oushu\n”); } 练习 1、使用if else if,模拟下述分段函数。 x^2+1(x<0) y= 2*x+6 (0<=x<=5) 3*x-1 (x>5) 2、输入一个字符,如果是大写字母,转成小写字母。如果是小写字母,转成大写字母,如果不是字母,不变输出。 3、输入一个字符,判断这个字符是表示大写字母,小写字母,数字字符,还是其他。A a 9 % 二、逻辑跳转语句goto switch 1、goto语句 无条件跳转到指定标号的位置,向下执行。 goto 语句标号 printf(“————————1\n”); printf(“————————2\n”); goto A; //跳转到标号的位置 printf(“————————3\n”); printf(“————————4\n”); //标号的名字是标识符,这里使用大写是为了和变量相回避。 A: //这是一个标号,是一个位置的标记,本身是什么都不做。 printf(“————————5\n”); B:

JavaScript流程控制语句

第5章流程控制语句 JavaScript程序是由若干个语句组成的,每一个语句以分号作为结束符。语句可以很简单,也可以很复杂。其中,改变程序正常流程的语句称为控制语句。流程控制语句是用来控制程序中各语句执行顺序的语句,是程序中基本却又非常关键的部分。流程控制语句可以把单个语句组合成有意义的、能完成一定功能的小逻辑模块。本章内容包括: ?顺序控制语句; ?选择控制语句; ?循环控制语句; ?其他流程控制语句。 通过本章学习,读者应该对几种流程控制语句有很深的理解,并可以利用这几种流程控制语句编写简单的程序。 5.1 顺序控制语句 JavaScript语言中,顺序控制语句是最简单的语句。其有如下特点:所有语句按照一定的顺序执行,每一条语句只执行一遍,不重复执行,也没有语句不执行。JavaScript语言中的顺序控制语句包括表达式语句,函数调用语句,空语句和复合语句等。 5.1.1 表达式语句 表达式后面跟一个分号就构成了一个表达式语句。最常见的表达式语句为赋值语句。赋值语句是在一个赋值表达式后跟一个分号形成的,程序中很多计算都由赋值语句完成。 【示例5-1】演示几个表达式语句。其代码如下所示。 var m=4; //把4赋给变量m var n=”hello world”; //把字符串hello world赋值给n i=m+n; //把变量m和n的和赋值给变量i 实际上,任何表达式都可以加上分号而成为语句。 【示例5-2】变量i自增1。 i++; //变量i的值加1 注意:有些语句写法虽然是合法的,但是由于其没有保留计算结果,因而并没有实际意义。如以下代码: a-b; i++-1;

《单片机C语言程序设计》课程标准

广州康大职业技术学院 《单片机C语言程序设计》课程标准 一、基本信息 适用对像:应用电子技术专业的学生 课程代码: 学分:2 学时:36 制定人:徐又又 制定时间:2010年9月 所属系部:自动化 批准人:陶甫廷 二、课程的目标 1.专业能力目标 了解单片机C语言的特点、与PC机C语言的异同之处、单片机C语言的开发环境; 熟悉单片机C语言的基本语法规范、Keil C软件的应用及其与硬件平台的连接、C语言程 序结构设计、与单片机相关的设置等方面知识。 2.方法能力目标 了解用单片机C语言进行应用产品软件开发的步骤,具备单片机C语言程序的识读、修改的基本能力;学会使用Keil C软件进行源程序编辑、编译和软、硬件模拟调试的操作方 法与技能。 3.社会能力目标 通过后续课程《单片机应用实训》的学习与强化训练,具有使用单片机C语言进行电子产品、自动检测与控制和高新视听设施等方面的软件开发的职业技能。 三、整体教学设计思路 1.课程定位 该课程是应用电子技术和自动化技术等专业获得专业技能的必修课程之一,该课程属于职业技术课程,以培养电子产品开发相关行业急需的机电类和电子类高级技能应用型人才 为目标。 本课程一般在学生学完模拟电子技术与数字电子技术、计算机技术等专业基础课后再讲授;《单片机应用》等课程可作为先修课程,也可在同一学期开设。 2.课程开发思路

本课程根据“工学结合”的原则,强调对单片机C语言程序设计的理论部分删繁就简,以“实用够用”为度,就是为了便于他们在后续的实训月(四周)以及即将下厂顶岗实习期 (十周),将所学的单片机C语言程序设计的常用原理与实用知识,能够与实训、实习的生 产工位和顶岗工作更紧密地联系起来。 四、教学内容 1.学时分配 学习情境名称子学习情境1 子学习情境2 子学习情境3 子学习情境4 学时 分配 学习情境(单元)1 单片机C语言概述单片机C语言与 PC机C语言的异 同之处 简单的C程序介绍 及上机操作(编译 三个简单C程序) 3 教学时数 1 2 学习情境(单元)2单片机C语言开发环境 建立 Keil软件的使 用(源文件、 工程的建立) 上机操作(用keil 软件进行工程的设 置) 3 教学时数 2 1 学习情境(单元)3数据的类型、运算符和 表达式 用整型和字符型 定义变量 数的溢出 C51中特有的数 据类型 上机操作(用 算术运算符和 算术表达式编 写程序) 6 教学时数 2 1 2 1 学习情境(单元)4C51流程与控制顺序结构程序选择结构程序循环结构程 序(上机操作 编译冒泡排 序法程序) 6 教学时数 2 2 2 学习情 境(单 元)5 C51构造数据类型数组指针结构共用体和枚举 6 教学时数 2 2 1 1 学习情境(单元)6单片机内部资源的组成中断编程上机操作用定时器 /计数器资源 编程并编译 串口编程 6 教学时数 2 2 2 学习情境(单元)7函数函数的定义函数的调用局部变量和全局 变量 变量的存储类 别 6 教学时数 2 2 1 1

51单片机实验程序

3 3 3 用查表方式编写y=x1 +x2 +x3 。(x 为0~9 的整数) #include void main() { int code a[10]={0,1,8,27,64,125,216,343,512,729}; //将0~9 对应的每位数字的三次方的值存入code中,code为程序存储器,当所存的值在0~255 或-128~+127 之间的话就用char ,而现在的值明显超过这个范围,用int 较合适。int 的范围是0~65535 或-32768~32767 。 int y,x1,x2,x3; //此处定义根据习惯,也可写成char x1,x2,x3 但是变量y 一定要用int 来定义。 x1=2; x2=4; x3=9; //x1,x2,x3 三个的值是自定的,只要是0~9 当中的数值皆可,也可重复。 y=a[x1]+a[x2]+a[x3]; while(1); //单片机的程序不能停,这步就相当于无限循环的指令,循环的内容为空白。 } //结果的查询在Keilvision 软件内部,在仿真界面点击右下角(一般初始位置是右下角)的watch 的框架内双击“double-click or F2 to add”文字输入y 后按回车,右侧会显示其16 进制数值如0x34,鼠标右键该十六进制,选择第一行的decimal,可查看对应的10 进制数。 1、有10 个8 位二进制数据,要求对这些数据进行奇偶校验,凡是满足偶校验的 数据(1 的个数为偶数)都要存到内RAM50H 开始的数据区中。试编写有关程序。 #include void main() { int a[10]={0,1,5,20,24,54,64,88,101,105}; // 将所要处理的值存入RAM 中,这些可以根据个人随意设定,但建议不要超过0~255 的范围。 char i; // 定义一个变量 char *q=0x50; // 定义一个指针*q 指向内部0x50 这个地址。 for(i=9;i>=0;i--) //9~0 循环,共十次,也可以用for(i=0;i<10;i++) { ACC=a[i]; //将a[i] 的值赋给累加器ACC if (P==0) //PSW0 位上的奇偶校验位,如果累加器ACC 内数值1 的个数为偶数那么P 为0,若为奇数,P 为1。这里的P 是大写的。 { *q=a[i]; q++; // 每赋一个值,指针挪一个位置指向下一个。 } } while(1); //同实验一,程序不能停。 }

程序流程控制语句

程序流程控制语句:选择语句 https://www.wendangku.net/doc/2b10718470.html,网站制作 2011年9月1日 Java语言中的程序流程控制语句有三种:顺序结构、选择结构和循环结构。其中顺序结构最简单,程序依次执行各条语句。Java的每条语句一般以分号(“;”)作为结束标志。所以本章重点讲解选择结构和循环结构。 1、选择语句 在程序设计时,经常需要使用选择结构在程序中完成逻辑判断和选择功能,这就需要使用到选择语句。Java中的选择语句包括if语句、if-else语句和switch语句。选择语句用来控制选择结构,对选择条件进行判断,并根据判断结果选择要执行的程序语句,改变程序执行流程。 2、if选择语句 在实际生活中,经常会需要做一些逻辑判断,并根据逻辑判断结果做出选择。例如,当一个男孩子向一个非常理智的女孩子求婚时,这个女孩子思考的逻辑可能是这样的: 如果你有100万 那么,我就嫁给你!

在这里,女孩子嫁给男孩子这个过程的实施,必须以“你有一百万”为前提。只有逻辑判断“你有一百万”这一前提条件为真时,“那么,我就嫁给你!”这个行为才能得到执行。在生活当中,类似这样的情形是很常见的。 相应地,在Java程序设计语言中,也有相应的条件语句来完成类似的逻辑判断和有选择地执行这样的功能,这就是if语句。if语句的语法格式如下: if(条件表达式) 语句 或者 if(条件表达式){ 一条或多条语句 } if语句执行的过程如下: 1.对if后面括号里的条件表达式进行判断。 2.如果条件表达式的值为true,就执行表达式后面的语 句或后面大括号里的多条语句。 3.如果条件表达式的值为false,则跳过if语句,执行 下一条语句。

51单片机考试常见试题简答 题

简答题部分 1、什么叫堆栈? 答:堆栈是在片内RAM中专门开辟出来的一个区域,数据的存取是以"后进先出"的结构方式处理的。实质上,堆栈就是一个按照"后进先出"原则组织的一段内存区域。 2、进位和溢出? 答:两数运算的结果若没有超出字长的表示范围,则由此产生的进位是自然进位;若两数的运算结果超出了字长的表示范围(即结果不合理),则称为溢出。 3、在单片机中,片内ROM的配置有几种形式?各有什么特点? 答:单片机片内程序存储器的配置形式主要有以下几种形式:(1)掩膜(Msak)ROM型单片机:内部具有工厂掩膜编程的ROM,ROM中的程序只能由单片机制造厂家用掩膜工艺固 化,用户不能修改ROM中的程序。掩膜ROM单片机适合于 大批量生产的产品。用户可委托芯片生产厂家采用掩膜方法 将程序制作在芯片的ROM。 (2)EPROM型单片机:内部具有紫外线可擦除电可编程的只读存储器,用户可以自行将程序写入到芯片内部的EPROM 中,也可以将EPROM中的信息全部擦除。擦去信息的芯片 还可以再次写入新的程序,允许反复改写。 (3)无ROM型单片机:内部没有程序存储器,它必须连接程序存储器才能组成完整的应用系统。 无ROM型单片机价格低廉,用户可根据程序的大小来选择外接 程序存储器的容量。这种单片机扩展灵活,但系统结构较复 杂。 (4)E2ROM型单片机:内部具有电可擦除叫可编程的程序存储器,使用更为方便。该类型目前比较常用 (5) OTP(One Time Programmable)ROM单片机:内部具有一次可编程的程序存储器,用户可以在编程器上将程序写入片 内程序存储器中,程序写入后不能再改写。这种芯片的价 格也较低。 4、什么是单片机的机器周期、状态周期、振荡周期和指令周期?它们之间是什么关系? 答:某条指令的执行周期由若干个机器周期(简称M周期)构成,一个机器周期包含6个状态周期(又称时钟周期,简称S周期),而一个状态周期又包含两个振荡周期(P1和P2,简称P周期)。也就是说,指令执行周期有长有短,但一个机器周期恒等于6个状态周期或12个振荡周

办公室绿植养殖方法及注意事项

办公室绿植养殖方法及注意事项

办公室绿植养殖方法及注意事项 目录 目录1 (一)发财树2 (二)绿萝4 (三)金钱树7 (四)万年青9 (五)榕树10 (六)兰花12 (七)罗汉松14 (八)君子兰16

(一)发财树 发财树,常绿乔木,喜高温高湿气候,耐寒力差,幼苗忌霜冻,成年树可耐轻霜及长期5-6℃低温,中国华南地区可露地越冬,以北地区冬季须移入温室内防寒,喜肥沃疏松、透气保水的沙壤土,喜酸性土,忌碱性土或粘重土壤,较耐水湿,也稍耐旱。

△栽培要点 1、温度。冬季最低温度16-18℃,低于这一温度叶片变黄脱落;10℃以下容易死亡。 2、光线。发财树为强阳性植物,在海南岛等地均露地种植。但该植物耐阴能力地较强,能够在室内光线较弱的地方连续欣赏2-4周。而后放在光线强的地方。 3、水份。在高温生长期要有充分的水分;但耐旱力较强,数日不浇水不受害。但忌盆内积水。冬季减少浇水。 4、空气温度。生长时期喜较高的空气温度;能够时常向叶面少量喷水。 5、换盆。根据需要可于春季换盆。 手树俗称发财树,为五加科假概木属的常绿灌木或小乔木,

茎直立,叶大互生,有长柄,掌状复叶,有小叶9-12枚,小叶长12-15厘米,宽约6厘米。因其树形叶形奇特,俗名吉利,因取其吉利佳兆,故近来引种栽培者渐多。 盆栽的发财树1-2年就应换一次盆,于春季出房时进行,并对黄叶及细弱枝等作必要修剪,促其萌发新梢。浇水要遵循间干间湿的原则,春秋天按天气晴雨、干湿等情况掌握浇水疏密,一般一天浇1次,气温超过35℃时,一天至少浇2次,生长季每月施2次肥,对新长出的新叶,还要注意喷水,以保持较高的环境湿度;6-9月要进行遮荫,保持60%一70%的透光率或放置在有明亮散射光处。冬季入室后,气温不要低于5℃,保持在10℃左右较好,浇水5-7天1次,并要保证给予较充分的光照。另外,在生长季,如通风不良,容易发生红蜘蛛和介壳虫危害,应注意观察。发现虫害要及时捉除或喷药。 △栽培技巧 1.新引进的植株,当年不用换盆,不要施氮肥,控制幼枝徒长,防树型偏冠。 2.发财树对水分适应性较强,在室外大水浇灌或在室内十多天不浇水,也不会发生水涝和旱象致使叶片发黄。 3.夏季室内3~5天浇一次水,春秋季节5~10天浇一次。冬

流程控制结构

流程控制结构 Document serial number【NL89WT-NY98YT-NC8CB-NNUUT-NUT108】

(单元教案首页) 单元标题第3章流程控制结构 教学时数:()学时,其中理论()学时、实验()学时、上机()其它()学时,其它是指: 教学目的与要求: 1.理解程序的的三大控制结构。 2.掌握选择结构实现语句的用法编程应用 3.掌握循环结构实现语句的用法及其编程应用。 4.理解并掌握各种跳转语句的使用方法。 主要教学内容: 1.程序的控制结构:顺序、选择、循环。 2.选择结构语句:if语句(两种格式)和switch语句、程序举例。 3.循环结构语句:for语句、while、语句、do-while语句、三种循环语句的互相转化、程序举例。 4.控制结构跳转语句:break语句、continue语句、return语句 教学重点与难点: 重点:if语句、switch语句、for语句、while语句、do-while语句 难点: switch语句、选择结构编程应用、循环结构编程应用、跳转语句的编程应用课后作业: 1.课本P66 综合练习三:第一题~第四题 2.上机实习:实习3:Java流程控制 课后体会:

兰州资源环境职业技术学院教师授课教案

—————————————————————— 第3章流程控制结构 一、本章主要内容: 本章主要讲述Java程序的基本控制结构和控制语句,使得学生能利用这三种结构来解决一些比较复杂的问题。 Java程序的基本控制结构有三种:顺序结构、选择结构、循环结构。 二、具体授课内容: 概述 选择结构 循环结构 跳转语句 三、本章授课思路: 1. 回顾C语言中结构化程序设计方法所所用的程序三大控制结构(顺序结构、选择结构、循环结构)语法知识,以复习回顾的方式引入讲解Java语言的程序控制结构知识(和 C语言用法一致),学生易于理解记忆。 2.具体讲解选择结构(if、switch)和循环结构语法(while、for、do-while)及其编程用法的典型程序编写举例,使学生理解掌握Java语言中控制结构的使用特点及编程技巧。 将两种输入数据的编程方法融入到控制结构用法的编程举例的程序中,使学生对输入数据方法的能够有一定的理解掌握和编程使用,结合在后续第4章面向对象的程序设计的方法的具体学习中再加强理解和掌握。 4.课堂上通过练习和讲解第3章课后习题,加强和巩固学生对所学知识的理解和掌握使用。

单片机如何运行程序

单片机如何运行程序 知道了单片机通过I/O口与外设打交道,也知道了单片机的程序与数据如何保存,到底单片机是如何运行程序的?原来单片机和其他微机一样,也拥有一个中央处理器(CPU),它是整个单片机的核心部件,是8位数据宽度的处理器,能处理8位二进制数据或代码,CPU 负责控制、指挥和调度整个单元系统协调的工作,完成运算和控制输入输出功能等操作。它在单片机中的核心地位见图2.10所示。它通过单片机的内部总线,将单片机内部的各个部分:程序存储器(ROM)、数据存储器(RAM)、定时/计数器、并行接口、串行接口和中断系统等联系在一起,内部总线有三种:数据总线,专门用来传送数据信息,地址总线专门用来传送地址信息,选中各操作单元,控制总线专门用来传送CPU各种控制命令,以便CPU统一指挥协调工作。完成程序所要执行的各种功能。CPU执行程序一般包括两个主要过程:第一,就是从程序存储器中取出指令,指令的地址由PC指针提供,在前面我们已经知道,PC指针在CPU取指后会自动加一,所以PC指针总是指向下一个将要取出的指令代码或操作数。这样,就能保证程序源源不断往下执行。第二,就是执指过程,取出的指令代码首先被送到CPU中控制器中的指令寄存器,再通过指令译码器译码变成各种电信号,从而实现指令的各种功能。 4.怎样保证CPU工作? 现在我们知道了单片机怎样取指、执指,即怎样运行程序了。那么怎样才能保证CPU有序的工作?这就必须提到单片机的两个非常重要的外围电路:单片机的时钟电路和复位电路。在单片机上面有两个引脚,分别是它的第18、19脚,其功能如下。

Pin19:时钟XTAL1脚,片内振荡电路的输入端。 Pin18:时钟XTAL2脚,片内振荡电路的输出端。 89S51的时钟有两种方式,一种是片内时钟振荡方式,但需在18和19脚外接石英晶体和振荡电容,振荡电容的值一般取10p~30p。另外一种是外部时钟方式,即将XTAL1接地,外部时钟信号从XTAL2脚输入。如图2.11 当时钟电路起振后,产生一定频率的时钟信号,单片机的CPU在时钟信号的控制下,就能一步一步完成自己的工作。通常我们必须了解以下几种周期。 【振荡周期】:单片机外接石英晶体振荡器的周期。如外接石英晶体的频率若为12MHz,这其振荡周期就是1/12微秒。 【状态周期】:单片机完成一个最基本的动作所需的时间周期。如扫描一次定时器T0引脚状态所需要的时间。一个状态周期=2个振荡周期。 【机器周期】:单片机完成一次完整的具有一定功能的动作所需的时间周期。如一次完整的读操作或写操作对应的时间。一个机器周期=6个状态周期。 【指令周期】:执行完某条指令所需要的时间周期,一般需要1~4个机器周期,如MUL AB指令是四机器周期指令。一个指令周期=1~4个机器周期。 单片机工作时,除了需要时钟支持外,还必须有一个初始状态,即单片机的复位状态。在单片机外部引脚第9脚,就是专门给单片机提供复位脉冲的。 Pin9:RESET/Vpd复位信号复用脚,当89S51通电,时钟电路开始工作,在RESET 引脚上出现24个时钟周期以上的高电平,系统即初始复位。

办公室绿植养护管理手册

办公室绿植养护手册编制人事行政中心日期________________ 审核________________ 日期________________ 批准日期________________ 制度建立部门人事行政中心发布日期年月日生效日期年月日目录一、绿萝1 二、万年青4 三、发财树5 四、金钱树7 五、幸福树10 六、虎皮兰12 七、非洲茉莉14 八、常春藤15 九、龙血树17 十、鹅掌柴18 十一、观音竹20 十二、文竹22 1、绿萝 1、关于绿萝绿萝属阴性植物,喜湿热的环境,忌阳光直射,喜阴。喜富含腐殖质、疏松肥沃、微酸性的土壤。越冬温度不应低于15℃。它遇水即活,因顽强的生命力,被称为“生命之花”。蔓延下来的绿色枝叶,非常容易满足。室内养植时,不管是盆栽或是折几枝茎秆水培,都可以良好的生长。既可让其攀附于用棕扎成的圆柱上,也可培养成悬垂状置于书房、窗台,抑或直接盆栽摆放,是一种非常适合室内种植的优美花卉。 2、养护方法(1)光照绿萝的原始生长条件是参天大树遮蔽的树林中,向阳性并不强。但在秋冬季的北方,为补充温度及光合作用的不足,却应增大它的光照度。方法是把绿萝摆放到室内光照最好的地方,或在正午时搬到密封的阳台上晒太阳。同时,温度低的时候要尽量少开窗,因为极短的时间内,叶片就可能被冻伤。 (2)温度在北方,室温10℃以上,绿萝可以安全过冬,室温在20℃以上,绿萝可以正常生长。一般家庭达到这个温度问题不大,需要注意的是要避免温差过大,同时也要注意叶子不要靠近供暖设备。 (3)湿度指的是植物生长环境中空气的含水量。在保证正常温度的条件下,加大湿度对植物的生长极为有利。 增大湿度可以采用以下几种办法①使植物靠近加湿器,加湿器每天的开放时间在5个小时以上,植物能够享受到加湿器喷出的水雾; ②用调到雾状刻度的喷雾器向植物的叶片、茎部和气根处喷水,每天若干次; ③在花盆托盘内保持适量水分,通过它的蒸发增加植物局部温度; 用冷的湿毛巾或卫生纸轻擦叶面或短时间内(每日1-2小时)轻敷叶面; ④把透明的塑料薄膜罩在植株上,制造小温室的效果,通过蒸发土壤中的水气补充植物的水分,每天不多2小时,时间太长会影响植物的通气和光合作用。 (4)浇水秋冬季的浇水量应根据室温严格控制。温度较低时,植株的土壤蒸发较慢,要减少浇水,水量应控制在原来的1/4-1/2之间,浇水要少向盆中浇,应由棕丝渗水。另外,还应向棕柱的气生根生长处喷水,以减少因蒸发过快引起根部吸水不足。冬季浇的水以晾晒过一天后的水比较好,水过凉容易损伤根部。水培的绿萝要经常

办公室绿植养护标准及工作流程

办公室绿植养护标准及工作流程 办公室绿植养护标准及工作流程 1养护要求, 1.1、叶面整洁光亮,植株生长健壮。 1.2、植株间、花盆内无杂草、烟头等杂物。 1.3、严格控制病虫害,保证植物的正常生长和美观。 1.4、花盆、花托要不定期擦拭,任何时候都不得有污渍、杂物等。 1.5、浇水应做到干透浇足的原则,不能过于干旱或潮湿,以免植株脱水或烂根。 1.6、定期施肥,施肥时除叶面微肥外,任何粒状肥料不得粘在叶片上或植株地上部分的其他部位,不得裸露于土壤之外。 1.7、适度修剪,使室内绿植保持良好的视觉效果。 1.8、对失去观赏价值的绿植及时更换,使办公室内保持优雅的环境。 2.操作规程, 2.1、当值办公室员工要求每天上班后巡查一遍办公室内绿植,及时清除残花黄叶、断枝、杂物,有花盆的应调整好花盆,并检查和清理花盆内外卫生。 2.2、以“干透浇足”为原则逐一检查植株是否缺水,并按需浇水,严格禁止浇“拦腰水”或“半截水”,浇水时间以上午十点前或傍晚为宜,中午原则上不宜浇水。绿植浇水按照绿植日常维护表进行操作。 2.3、每周对绿植喷一次广谱杀虫杀菌混剂,一般在每周五或周六进行,时间以傍晚为宜,但必须与浇水时间错开。所用药剂应采用多种药剂轮流使用的原则,避免有害生物产生抗药性。 2.4、每周一用干净的抹布沾啤酒擦拭叶面一次,进行时间原则上在每周一上午进行。 2.5、每半个月对绿植追肥一次,施肥原则是“薄肥勤施”,在全元素有机肥或复合肥的基础上,生长季节增施氮肥,休眠前增施磷钾肥,休眠期暂停施肥。

2.6、每半个月对室内绿植松一次土,松土可结合施肥进行,同时除去根部周围 的苔藓和杂草。 2.7、根据植株大小和生长速度,每半年——两年对室内盆栽绿植换土换盆一次,换土换盆时间以春、秋两季为宜,换土时应尽量少伤根,并对地上部分进行适度修剪,减少缓苗时间。 2.8、对单轴向上生长的植物每月喷一次矮壮素,减少植物的向上生长量,延长 观赏时间。 2.9、对各类绿植进行不定期整形修剪,保持良好的观赏性。 2.10、每周要将 盆栽绿植旋转180度,以修正绿植的向阳性生长,保证阴阳两面生长量的均衡,但遇重大参观接待任务时应及时调整绿植的方向,保证最美观的一面向外。

单片机C语言程序设计师试题及答案

单片机C语言程序设计师试题 一、填空题 1、设X=5AH,Y=36H,则X与Y“或”运算为_________,X与Y的“异或”运算为________。 2、若机器的字长为8位,X=17,Y=35,则X+Y=_______,X-Y=_______(要求结果写出二进制形式)。 3、单片机的复位操作是__________(高电平/低电平),单片机复位后,堆栈指针SP的值是________。 4、单片机中,常用作地址锁存器的芯片是______________,常用作地址译码器芯片是_________________。 5、若选择内部程序存储器,应该设置为____________(高电平/低电平),那么,PSEN信号的处理方式为__________________。 6、单片机程序的入口地址是______________,外部中断1的入口地址是_______________。 7、若采用6MHz的晶体振荡器,则MCS-51单片机的振荡周期为_________,机器周期为_______________。 8、外围扩展芯片的选择方法有两种,它们分别是__________________和_______________。 9、单片机的内部RAM区中,可以位寻址的地址范围是__________________,特殊功能寄存器中,可位寻址的地址是____________________。 10、子程序返回指令是________,中断子程序返回指令是_______。 11、8051单片机的存储器的最大特点是____________________与____________________分开编址。 12、8051最多可以有_______个并行输入输出口,最少也可以有_______个并行口。 13、_______是C语言的基本单位。 14、串行口方式2接收到的第9位数据送_______寄存器的_______位中保存。 15、MCS-51内部提供_______个可编程的_______位定时/计数器,定时器有_______种工作方式。 16、一个函数由两部分组成,即______________和______________。 17、串行口方式3发送的第9位数据要事先写入___________寄存器的___________位。 18、利用8155H可以扩展___________个并行口,___________个RAM单元。 19、C语言中输入和输出操作是由库函数___________和___________等函数来完成。 二、选择题 1、C语言中最简单的数据类型包括(b )。 A、整型、实型、逻辑型 B、整型、实型、字符型 C、整型、字符型、逻辑型 D、整型、实型、逻辑型、字符型 2、当MCS-51单片机接有外部存储器,P2口可作为( c )。 A、数据输入口 B、数据的输出口 C、准双向输入/输出口 D、输出高8位地址 3、下列描述中正确的是( d )。 A、程序就是软件 B、软件开发不受计算机系统的限制 C、软件既是逻辑实体,又是物理实体 D、软件是程序、数据与相关文档的集合 4、下列计算机语言中,CPU能直接识别的是( d )。 A、自然语言 B、高级语言 C、汇编语言 D、机器语言 5、MCS-5l单片机的堆栈区是设置在( c )中。

办公室常见绿植养护要点

办公室常见绿植养护要点 绿萝养护:绿萝比较容易养活的,但夏天气温高的时候不能放在日光下直射,冬天时气温不应低于15℃。平时盆土要保持湿润,应经常向叶面喷水,提高空气湿度,有利于根的生长。 常春藤的养护:(吸收甲醛的冠军)只要干了浇点水就行,掌握不干不浇,浇则浇透的原则就能养好的,长春藤也可水养,你可放点营养水,养在花瓶中既卫生又美观。 吊兰养护:它细长、优美的枝叶可以有效地吸收周围等释放出的甲醛,并充分净化空气。是比较好养活的植物。虽然它们不选择土壤,但种的时候尽量用疏松肥沃的沙质土壤,如果水浇多了会引起烂根。 虎皮兰养护:喜温暖向阳环境,耐半阴,怕阳光暴晒;耐干旱,忌积水;对土质要求不严,平时放在通风良好的向阳处,浇水要见干见湿。 仙人掌的养护:很多上班族都会在电脑前放一盆,最大特点就是耐旱。仙人掌多数都是被水浇死的。一般养仙人掌是等土变灰白色了再浇透水。 万年青养护:在半阴、温暖湿润、通风好的环境下生长。这种植物也是忌讳阳光直射和土壤积水的。想要万年青生长的好,

叶绿,要及时清洗擦拭叶片上的灰尘。此外,若出现叶片黄化及枯焦时要及时修剪,避免无谓消耗过多的养分。 芦荟养护:芦荟是最好养的植物,干了浇点水,这是懒人种的植物。芦荟生命力十分旺盛,极其好养,其生长特性是喜阳光,但惧烈日;喜湿润,但忌积水;耐高温、怕严寒。 发财树养护:浇水要遵循间干间湿的原则,夏季室内3-5天浇一次水,春秋季节5-10天浇一次。冬季发财树怕冷,气温不要低于5℃,保持在10℃左右较好,浇水5-7天一次,忌盆内积水,可以时常向叶面少量喷水,发财树既耐阴又喜阳光,适应性强,性喜温暖的环境,不耐寒。

流程控制语句练习题

流程控制语句练习题 1、为某超市编写一个程序,完成顾客购物后根据优惠政策计算付款额的功能。某超市有如 下优惠政策: ?所有的本超市的会员购物享受9折优惠。 ?对于非会员的顾客购物满100元的也可以享受9折优惠。 ?本身是会员并购物满100元可以享受8折优惠。 假如某顾客从该超市购买了三件商品(价格自己输入),请计算该顾客可得到的折扣额(如果有),以及打折后需支付的金额。 2、银行提供了整存整取定期储蓄业务,其存期分为一年、两年、三年、五年,到期凭存单 编写一个程序,用于根据存期和存款额(本金)计算利息,以及到期取款时银行应支取的本息。提示: ?要求用户选择存期,并输入本金。声明两个变量分别存储存期和本金。 ?计算利息的公式: 利息=本金*年利率*存期 本息=本金+利息 3、编写一个程序,要求用户输入今天是星期几,根据用户的输入判断是工作日还周未,并 显示合适的问候语。 提示: ?如果输入的数字不在1~7之间,则显示“请输入位于1 ~ 7 之间的数” ?如果用户输入的数字为6或7,则显示“周未愉快!”。 ?对于1~5之间的数字,则显示“工作日愉快!”。 4、只要顾客购买的商品数量大于等于10件,并且购物总额大于等于10000元,商店就给 顾客10%的折扣。接收购物数量以及总金额,要求计算出折扣后的应付金额。 5、做一个简易计算器:(包含+、-、*、/、%) 接收一个字符,例如用“+”表示加法,用“-”表示减法。接收num1和num2两个数。如果输入的字符为“+”,则将这两个数相加并显示相应结果。如果输入的字符为“-”。则将这两个数相减并显示相应的值。 6、编写一个程序,用于计算长方形、圆形和三角形的面积。根据用户的选择要能计算相应 形状的面积。 7、企业年底发放的奖金根据当年的利润提成。利润低于或等于10万元时,奖金可提10%; 利润高于10万元,低于20万元时,低于10万元的部分按10%提成,高于10万元的部分,可提成7.5%;20万到40万之间时,高于20万元的部分,可提成5%;40万到60万之间时,高于40万元的部分,可提成3%;60万到100万之间时,高于60万元的部分,可提成1.5%,高于100万元时,超过100万元的部分按1%提成,输入当年的利润,求应发放奖金总数。 8、编写一个程序,用于创建包括下列选项的菜单: A、添加详细信息 B、修改详细信息

51单片机C语言程序设计复习资料

2013-2014学年上期51单片机C语言程序设计重修复习提纲考试方式:闭卷考试。 考试题型: 填空题(每空1分,共18分);单项选择题(每空2分,共18分);问答及计算题(每题4分,共16分);编程及程序阅读题(5小题,共48分)。 考试分数: 卷面成绩70%+平时成绩15%+实验成绩15%,未缺席、无课堂违纪、作业全交且认真完成的同学平时成绩可获得满分,缺席一次平时成绩扣30分,实验好评次数3次以上且实验报告全优的同学实验成绩可得满分,实验缺席一次扣30分。缺席实验和旷课共3次以上者,无考试资格。 考试时间: 18周周一(12月30日)下午14:00:16:00,考试地点:具体考室另行通知希望大家认真复习,认真听讲,不懂就问,考试成绩不及格允许查卷,如查卷卷面批阅无误成绩不做更改。 编程题为实验或实验类似的题目有3题,其余2题也取自课堂讲授例题,请务必认真复习。第一章单片机概述及单片机知识回顾 掌握什么是单片机、单片机的应用、常见单片机类型、十进制、十六进制、二进制数制转换知识。掌握单片机的硬件组成、CPU的结构、程序计数器PC的功能、存储器结构、机器周期的计算、会画出单片机的最小系统电路图及回答单片机最小系统的组成。 第二章C51语言程序设计基础(本章填空题和选择题比重较大请务必认真复习)掌握C51语言进行软件开发与汇编语言相比的优点、掌握C51的数据类型、特殊功能位的定义、C51的基本运算(位运算重点复习)、数组的定义、C51的结构及函数。 第三章AT89S51片内并行端口及编程(本章有编程题) 掌握P0-P3并行端口的特点,会开关量检测及流水灯程序的编程。 第四章AT89S51单片机的中断系统(本章有编程题) 掌握中断系统的结构、中断请求响应被满足的条件、外部中断的触发选择方式、外部中断的使用与编程。 第五章AT89S51单片机的定时器/计数器(本章有编程器) 掌握定时器的结构,TOMD及TCON的使用,定时器方式0和方式1的特点、会计算定时器初值,会用定时器中断产生PWM波形,会用定时器对外部事件进行计数。 第六章AT89S51单片机的串行口(本章有计算题) 掌握串行通信的基础知识(课本没有的内容请参照课堂讲授笔记或PPT)、串行口的四种工作方式的特点、会计算奇偶校验码、会根据波特率计算T1的初值。 第七章AT89S51单片机与输入/输出外设接口(本章有编程题) 掌握数码管动态显示的原理、掌握矩阵式键盘的原理与编程(矩阵键盘编程必考,但不会考4X4键盘)。 第八章AT89S51单片机与D/A与A/D转换器的接口(本章有编程题) 掌握AD与DA转换的接口、ADC和DAC的技术指标、常用AD和DA转换器。掌握ADC0809和TLC2543的使用与编程(2器件其中之一有编程题)。 第九章AT89S51单片机应用系统与调试(本章有编程题) 掌握单片机应用系统的软件抗干扰方法。

112月园林绿植养护管理重点

1---12月绿化养护管理方案 一年园林养护工作具体安排: 一月份:全年中气温最低的月份,露地树木处于休眠状态。 1、冬季修剪:全面展开对落叶树木的整形修剪作业;大小乔木上的枯枝、伤残枝、病虫枝及妨碍架空线和建筑物的枝杈进行修剪。 2、行道树检查:及时检查行道树绑扎、立桩情况,发现松绑、铅丝嵌皮、摇桩等情况时立即整改。 3、防治害虫:冬季是消灭园林害虫的有利季节。可在树下疏 松的土中挖集刺蛾的虫蛹、虫茧,集中烧死。1月中旬的时候,蚧壳虫类开始活动,但这时候行动迟缓,我们可以采取刮除树干上的幼虫的方法。在冬季防治害虫,往往有事半功倍的效果。 4、绿地养护:绿地、花坛等地要注意挑除大型野草;草坪要及时挑草、切边;绿地内要注意防冻浇水 二月份:气温较上月有所回升,树木仍处于休眠状态。

1、养护基本与1 月份相同。 2、修剪:继续对大小乔木的枯枝、病枝进行修剪。月底以前,把各种树木修剪完。 3、防治害虫:继续以防刺蛾和蚧壳虫为主。 三月份:气温继续上升,中旬以后,树木开始萌芽,下旬有些树木(如山茶)开花。 1、植树:春季是植树的有利时机。土壤解冻后,应立即抓紧时机植树。植大小乔木前作好规划设计,事先挖(刨)好树坑,要做到随挖、随运、随种、随浇水。种植灌木时也应做到随挖、随运、随种,并充分浇水,以提高苗木存活率。 2、春灌:因春季干旱多风,蒸发量大,为防止春旱,对绿地等应及时浇水。 3、施肥:土壤解冻后,对植物施用基肥并灌水。 4、防治病虫害:本月是防治病虫害的关键时刻。一些苗木出现了煤污病,瓜子黄杨卷叶螟也出现了(采用喷洒杀螟松等农药进行防

治)。防治刺蛾可以继续采用挖蛹方法。 四月份:气温继续上升,树木均萌芽开花或展叶开始进入生长旺盛期。 1、继续植树:四月上旬应抓紧时间种植萌芽晚的树木,对冬季死亡的灌木(杜鹃、红花继木等)应及时拔除补种,对新种树木要充分浇水。 2、灌水:继续对养护绿地进行及时的浇水。 3、施肥:对草坪、灌木结合灌水,追施速效氮肥,或者根据需要进行叶面喷施。 4、修剪:剪除冬、春季干枯的枝条,可以修剪常绿绿篱。 5、防治病虫害:(1)蚧壳虫在第二次蜕皮后陆续转移到树皮 裂缝内、树洞、树干基部、墙角等处分泌白色蜡质薄茧化蛹。可以用硬竹扫帚扫除,然后集中深埋或浸泡。或者采用喷洒杀螟松等农药的方法。(2)天牛开始活动了,可以采用嫁接刀或自制 钢丝挑除幼虫,但是伤口要做到越小越好。(3)其它病虫害的防治工

程序结构和流程控制语句

程序结构和流程控制语 句 集团标准化小组:[VVOPPT-JOPP28-JPPTL98-LOPPNN]

C ++的语句类型 C++程序的组成:一个C++程序可以由若干个源程序文件组成,一个源程序文件可以有若干个函数和编译预处理命令组成,一个函数由函数说明部分和函数执行部分组成,函数执行部分由数据定义和若干个执行语句组成。语句是组成程序的基本单元。C++语言的语句可以分成以下六大类: (1)说明语句:对变量、符号常量、数据类型的定义性说明 例如:int a,b,c; //定义整型变量a 、b 、c ① 仅向编译系统提供说明信息,在程序执行期间并不执行任何操作。 如,定义变量语句int a,b,c;是告诉编译系统为变量a 、b 、c 各分配4个字节的存储空间用于存放变量的值。程序执行时,该语句就不起任何作用了。 ② 说明语句可出现在函数内、外,允许出现语句的任何地方。 (2)控制语句:能改变程序执行顺序完成控制功能的语句。 C++中控制语句主要有: (3)函数和流对象调用语句:函数调用语句又一次函数调用加一个分号构成一个语句,如: 【例1】分析下面程序的功能: #include using namespace std; int max(int a,int b) //自定 义函数 { if(a>b) return a; else return b; } int main() { int a,b,m; cout<<"Input a,b:"; cin>>a>>b; m=max(a,b); //函数调用语 句 cout<<"max="<

51单片机多任务运行

51单片机多任务运行 最近发现有的幺弟在对系统的内核感兴趣,加上我也是部分内核的初学者,突然来兴,便用了两天写了一个简单的内核。这个内核简单得不能再简单了,加上空格行、大括号和详细的注解只有246行,还带了4个点亮LED的任务。至今为止我所见最简单的内核~~~ 就跟这个内核取个“多任务分时处理内核”吧!这个内核和ucos系统思想有很大的差异,但是能够帮助我们学习理解ucos系统,能够帮我们了解51的内部结构,以及大多数的单片机运行处理数据的原理~~~ 好废话就不说啦!希望我们能互相学习共同进步 1、先来讲讲原理: 首先,我们看书时会知道51单片机在执行中断的时候,会有以下几个步骤和几种情况。 根据KEIL的编译惯例(这个编译惯例你可以在编完程序后点仿真,里面有个后缀为.src 的文件,这个文件里面是一句C对应一句汇编,你就可以知道你编译的C代码它是怎么处理的,能帮助你学习汇编哦~~~),通常把进入中断后的所使用的通用寄存器组根据情况选择压栈。也就是说,中断前后使用的寄存器组可能不一样,中断前可能使用0,中断中可能使用1。如果使用的同一组寄存器,为了保存现场,KEIL就PUSH现场数据,然后POP 就行啦。但是keil很多时候不是你想象中那样,你叫它怎样他就怎样编译。所以在程序中嵌入了少量的汇编。 其实,嵌入汇编是很简单的事情。 只要在C代码中加入#pragma asm 和#pragma endasm并在他俩的中间加入汇编就行。别忘了还要在工程文件中添加C51S.LIB,这个文件在KEIL/C51/LIB中,这个文件也很重要,不然编译会出现警告,记得把文件类型选择为全部文件,不然看不见它。 接下来说说KEIL的中断汇编。在C51中,中断到来时,CPU响应中断保存当前PC 指针地址压栈SP所指地址。然后将PC指针指向中断向量地址,在中断向量地址中只有一句汇编程序:LJMP XX 意思是跳转到某地址。因为中断后只有8个寄存器,但是你的代码量远远不只有8个寄存器能装下的。这也就是说,响应中断后,先跳转到硬件规定的地址,再由那个地址跳转到中断程序入口。 然后,PC指针跳转到中断程序地址,开始从SP所指地址压栈ACC,B,DPH,DPL,PSW,按理说还需要压栈R0~R7,但KEIL一般是通过换通用寄存器来实现的(也就是改变RS1和RS0来实现的)。也就说KEIL根本不压栈R0~R7。 这个怎么能行,当然不行!不保存我们就不能完全的返回先前压栈的任务啦!好吧,那我们就只有手动保存压栈,这样不就行了,简单吧! 所以我们来帮它。已经通过前面知道它在进入中断的时候已经把中断前的PC指针压栈到中断前SP所指的地址了,所以进入中断后,实际在SP中断前所指地址中已经按顺序压栈了PC低8位,PC高8位,ACC,B,DPH,DPL,PSW总共7个数据,SP是向上增长的,也就是说每压一次堆栈SP+1。然后再把我们的R0~R7寄存器压入堆栈,这不就行啦,就保护现场所需的全部数据,就算有时R0~R7寄存器用不上我们也得加进去,为了为了保证正确的返回现场。 因此我们保存一次数据就需要7+8=15字节的堆栈,每个任务的起始地址保存一次,中间临时要保存一次,共需要15+15=30字节的堆栈。所以定义程序空间为现场保存空间为 0~29。名字叫:unsigned char TASK_STACK[TASK_MAX][30];//程序现场保存数组。TASK_MAX是程序个数,因为每一个程序都需要保存两次,每次15个变量来保存现场,并且51是8位的单片机所以用unsigned char。 然后就是程序现场保存数组的初始化使每个数据都是0。 首先,根据响应中断后的压栈顺序,知道了数组0位和1位保存的是中断前程序的地

相关文档
相关文档 最新文档