




已阅读5页,还剩82页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
2010/5/18,单片机原理与接口技术,第四章MCS-51系列单片机程序设计,4.1汇编语言程序设计概述,计算机是仿照人的思维方式顺序执行一条条指令来完成特定任务的机器,计算机程序因此被定义为指令或语句的“有序集合”,程序设计是指编写计算机程序的过程。汇编语言是用指令助记符等表示的计算机指令,采用汇编语言编写的程序被称为汇编语言程序。汇编语言程序具有代码效率高(编译后的指令代码占用存储空间小)和执行时间短等优势和特点。由于单片机的存储器等资源有限,单片机应用程序中经常需要面对硬件操作,且对程序执行的时间有较为严格的要求或限制。因此,汇编语言程序设计是单片机应用系统设计的重要基础之一。,4.1汇编语言程序设计概述,1、汇编语言的特点:汇编语言的特点归纳如下:助记符指令与机器指令一一对应;程序代码效率高,占用存储空间小,运行速度快,汇编语言程序往往是最优化的程序;助记符指令(汇编指令)与计算机硬件联系紧密,要求编程人员对计算机硬件较为熟悉;汇编语言程序缺乏通用性,移植性较差。,4.1.1汇编语言的特点及语句格式,4.1汇编语言程序设计概述,2、汇编语言的语句格式MCS-51系列单片机汇编语言的语句格式如下:;标号是汇编语句地址的符号表示。用于规定该语句所执行的操作。操作数为汇编指令的操作提供数据或地址注释是指对一条汇编语句或一段汇编语言程序的说明,以增加汇编语言程序的可读性。,4.1.1汇编语言的特点及语句格式,4.1汇编语言程序设计概述,1、起始地址定位伪指令ORG格式:标号:ORG操作数说明:其功能是指出紧接其后的指令的目标代码的第一个字节在程序存储器中的绝对地址。例如:ORG0030HSTART:MOVA,#33H.即定义标号START表示的起始地址值为0030H,该段程序的指令代码从该地址开始顺序存放。,4.1.2汇编语言伪指令,4.1汇编语言程序设计概述,2、赋值伪指令EQU格式:字符名称EQU操作数说明:该指令用于字符名称赋值。在同一个源程序中,任何一个字符名称只能赋值一次。且一旦赋值之后,整个源程序中该字符的值就固定不变了。例如:ADPORTEQU1001H即给字符名称ADPORT赋值16进制数1001H。,4.1.2汇编语言伪指令,4.1汇编语言程序设计概述,3、数据地址赋值伪指令DATA格式:字符名称DATA操作数说明:DATA伪指令的功能与EQU伪指令相似,不同之处在于DATA伪指令所定义的字符名称可先使用后定义(赋值),也可先定义(赋值)后使用。在程序中它常用来定义(赋值)数据地址。,4.1.2汇编语言伪指令,4.1汇编语言程序设计概述,4、字节数据赋值伪指令DB格式:标号:DB数据表(字节)说明:该伪指令用于定义(赋值)若干字节数据表(固定常数),并存放在指定地址单元开始的程序存储器中。例如:ORG0050HTABLE:DB99H,88H即表示在地址0050H(标号TABLE)开始定义(赋值)两个字节数据(99H,88H)。,4.1.2汇编语言伪指令,4.1汇编语言程序设计概述,5、双字节数据赋值伪指令DW格式:标号:DW数据表(双字节)说明:该伪指令与DB伪指令的不同之处在于DW定义(赋值)的是双字节数据,而DB定义(赋值)的是单字节数据。高8位数据安排在低地址单元,低8位数据安排在高地址单元。6、预留空间定义伪指令DS格式:标号:DS操作数说明:该伪指令的作用是通知汇编程序,从指定的地址单元开始(通常由标号指定首地址),保留由操作数(常数或表达式)规定的字节空间。,4.1.2汇编语言伪指令,4.1汇编语言程序设计概述,7、位地址赋值伪指令BIT格式:字符名称BIT位地址说明:该伪指令给字符名称赋予位地址(片内RAM和SFR中的位地址),常用于位操作程序中。例如:FLAGBIT20H即将位地址20H赋予字符名称FLAG。8、定义汇编结束伪指令END格式:标号:END说明:汇编结束伪指令END的作用是通知汇编程序,汇编源程序到此结束。在一个汇编程序中,只允许出现一条END伪指令,且必须安排在整个源程序的末尾处。,4.1.2汇编语言伪指令,4.1汇编语言程序设计概述,4.2基本程序结构,1、顺序结构程序2、分支结构程序3、循环结构程序4、子程序5、中断程序,基本程序结构,4.2基本程序结构,顺序结构是各类程序中最简单的,也是最基本的程序结构。顺序结构程序的特征是整个程序段没有任何转移指令。主要由数据传递类指令和数据运算类指令组成,通常用于执行数据传送和较为简单的算术或逻辑运算任务。,4.2.1顺序结构,4.2基本程序结构,例4-1,将内部RAM中20H单元和30H单元的无符号数相加,存入R0(高位)和R1(低位)中。源程序如下:MOVA,20H;取出被加数ADDA,30H;两数相加MOVR1,A;低位存入R1CLRA;ADDCA,#00H;取进位标志MOVR0,A;高位存入R0RET,4.2.1顺序结构,4.2基本程序结构,分支结构程序利用条件转移指令,使程序在执行某一指令后(产生测试条件),根据所规定的条件满足与否改变其后程序执行的顺序(产生分叉),即根据判断条件的成立与否来确定程序的走向。分支结构程序的特征是程序段中有控制转移类指令(条件转移指令)。依据程序分叉的数目,可将分支结构程序细分为单分支选择结构和多分支选择结构两类。,4.2.2分支结构,4.2基本程序结构,1、单分支选择结构当程序的判断仅有两个出口(分叉),即两者选一时,称为单分支结构。通常用条件判断指令来选择并确定程序的出口。例4-3.设内部RAM40H和41H单元中存放2个8位无符号二进制数,试编程找出其中的大数存人30H单元中。源程序如下:MOVA,40HCJNEA,41H,LOOP;取2个数进行比较LOOP:JNCLOOP1;根据CY值,判断单分支出MOVA,41H;41H单元中是大数LOOP1:MOV30H,A;40H单元中是大数RET,4.2.2分支结构,4.2基本程序结构,2、多分支选择结构当程序的判别部分有两个以上的出口(分叉)时,称为多分支选择结构。例4-4,设变量X的值存放在内部RAM的30H单元中,编程求解下列函数式,将求得的函数值Y存人40H单元。X1(X100)Y0(10X100)X一1(X10),4.2.2分支结构,4.2基本程序结构,MOVA,30H;取自变量X值CJNEA,#10,LOOP;与10比较,A中值不改变LOOP:JCLOOP2;若X100,转LOOP3MOV40H,00H;因10X100,故Y=X1MOV40H,AEXIT:RET,4.2基本程序结构,在程序设计中,遇到一段程序需要多次重复执行的情况,通常应该采用循环结构程序。1、循环结构程序组成循环结构程序由初始化、循环处理、循环控制和循环结束4部分组成。(1)初始化部分初始化部分设置循环处理之前的初始状态,如循环次数、变量初值、地址指针初值等。(2)循环处理部分循环处理部分又称循环体,是重复执行的数据处理程序段,它是循环程序的核心部分(功能主体)。,4.2.3循环结构,4.2基本程序结构,(3)循环控制部分控制部分控制循环继续与否。(4)结束部分结束部分对循环程序全部执行结束后的结果进行分析、处理和保存。循环结构程序一般分为“单重循环”和“多重循环”两类,循环次数的控制有多种方式,当循环次数已知时,可采用循环次数计数器控制循环;若循环次数未知时,可按条件满足与否控制循环。,4.2.3循环结构,4.2基本程序结构,2循环程序设计在一个循环程序的循环体中不包含另外的循环结构称为单重循环。例4-5,设某字符串以回车符(0DH)为结束标志,并存放在内部RAM40H单元开始的连续存储单元之中,编写测试字符串长度的汇编语言程序。编程思路为测试字符串(0DH)的长度,应使用逐个字符依次与回车符(ODH)比较的方法。为此需要设一个字符串指针和一个长度计数器,字符串指针用于指定字符,长度计数器用于累加字符串的长度。如比较不相等,则长度计数器和字符串指针都加1,以继续往下比较;如果比较相等,则表示该字符为回车符,字符串结束,长度计数器的值就是字符串的长度。,4.2.3循环结构,4.2基本程序结构,2循环程序设计程序如下:MOVR7,0FFH;设长度计数器初值MOVR0,3FH;字符串指针初值LOOP:INCR7INCR0CJNER0,ODH,LOOPRET,4.2.3循环结构,4.2基本程序结构,4.2.4子程序结构,在编写程序过程中,如果遇到在几个程序段中都需要执行某段相同程序的情况(功能独立),为减少编程工作量和节省程序存储空间,就应该采用子程序结构,将重复执行的相同程序段编写成为一个子程序(功能子程序)。,4.2基本程序结构,MAIN:;进入主程序MOVR0,#03H;设置入口参数(延时1)ACALLSUBPRO;调用子程序;子程序返回,继续执行主程序;#;子程序入口地址(子程序名称):SUBPRO;功能:延时子程序(延时时间由R0初值设置);入口参数:R0内存放延时计数初值;出口参数:无;使用寄存器:R0、R1;#SUBPRO:MOVR1,#03HDJNZR1,$DJNZR0,SUBPRORET;子程序返回END,4.2.3子程序结构,4.2基本程序结构,单片机中断程序设计主要有以下三个方面:1、中断向量设置2、中断初始化3、中断服务程序,4.2.5中断程序结构,4.2基本程序结构,例4-7,设89C51单片机外中断0(EX0)下降沿有效,每次进入中断服务程序,要求将89C51单片机的P1.7P1.0取反。主程序如下:ORG0000HSTAR:AJMPMAIN;主程序原始入口ORG0003H;外部中断0中断向量AJMPEXTR;跳转到EX0中断服务子程序实际入口地址ORG0030HMAIN:SETBIT0;主程序实际入口,边沿触发设置SETBEX0;外部中断0允许SETBEA;总中断允许HERE:AJMPHERE;等待再次进入中断服务程序,4.2.5中断程序结构,4.2基本程序结构,中断服务子程序:ORG1200HEXTR:PUSHPSW;保护现场CPLA;累加器A数据取反MOVP1,A;数据输出至P1端口POPPSW;恢复现场RETI;中断返回,4.2.5中断程序结构,4.3汇编语言程序设计实践,汇编语言程序设计的一般步骤如下:建立数学模型用适用的数学方法描述所需要解决的问题;确定算法将数学模型转化为适合单片机处理(顺序执行)的形式,采用绘制程序流程图等方法表示程序设计的思路和依据。编写源程序采用模块化设计方法,合理划分功能模块,分配存储器和I/O端口(依据硬件电路)等资源,确定各模块内各程序段的结构,编写源程序文件。汇编及调试在集成开发环境的支持下,汇编语言源程序经汇编生成目标程序文件,并通过调试以及对运行结果的分析,修正源程序中的错误,达到预期的设计目标。,所谓查表,就是根据变量x在表格中查找y,使yf(x)。函数值y事先根据变量x的取值范围计算出,并按一定规律编成表格存放在计算机的程序存储器中。当用户程序中需要用这些数据时,直接按编排的索引值(或程序号)寻找答案。这样编写的程序称为查表程序。查表程序是一种常用程序,广泛应用于LED显示器控制、智能化仪表控制、打印机打印以及数据转换等功能程序中,具有程序简单、执行速度快等优点。查表程序有多种结构形式,下面举例介绍一种常用的查表程序。,4.3.1查表程序,4.3汇编语言程序设计实践,4.3.1查表程序,例4-8,将16进制数转换成ASCII码的子程序。假设16进制数存放在R0中低4位,要求将转换后的ASCII码送回到R0中。设计思路:己知0-9的ASCII码为30H一39H,AF的ASCII码为41H一46H。对十六进制数而言,0-F是连续的,而对应的ASCII码不连续,查表方法对解决此类问题十分有效。根据题意,子程序的入口参数和出口参数均通过R0传递,表中所有的值都是单字节,表格长度为16字节。,4.3汇编语言程序设计实践,查表子程序:MOVA,R0;读取主程序通过R0传送的十六进制数ANLA,0FH;屏蔽高4位,取出低4位ADDA,#02H;设置变址值(依据表首地址与查表指令所处位置)MOVCA,A+PC;查表指令(获得对应的ASCII码)MOVR0,A:通过R0将查表结果传递给主程序RETTAB:DB30H,31H,32H,33H,34H,35H,36H,37HDB38H,39H,41H,42H,43H,44H,45H,46H程序中因为“MOVCA,A+PC”指令与表格首址相隔两个字节,故变址调整值为2,程序中对应变量x的函数值y为单字节。,4.3.1查表程序,4.3汇编语言程序设计实践,在51系列单片机指令集中有单字节的算术运算(加、减、乘、除)指令,但在实际程序设计中经常会遇到多字节算术运算问题,需要通过编制专门的功能子程序解决此类问题。例4-9,多字节无符号数加法运算。假设R0中存放被加数低位字节地址指针,R1中存放加数低位字节地址指针,R2中存放字节数,多字节算术运算一般从低字节(低位)到高字节(高位)的顺序依次进行。,4.3.2算术运算程序,4.3汇编语言程序设计实践,汇编源程序如下:ADDBIN:CLRCLOOP1:MOVA,R0;取被加数ADDCA,R1;两数相加,带进位MOVR0,AINCR0INCR1DJNZR2,LOOP1;未加完转LOOP1JNCLOOP2;无进位转LOOP2MOVR0,#0lHRETLOOP2:DECR0RET,4.3.2算术运算程序,4.3汇编语言程序设计实践,例4-10,BCD码多字节加法运算。假设R0中存放被加数低位字节地址指针,R1中存放加数低位字节地址指针,R2中存放字节数。,BCDADD:MOV20H,R0MOV23H,R2CLRCLP0:MOVA,R0;取被加数ADDCA,R1;两数相加DAA;十进制调整MOVRO,AINCR0;指针加1DJN2R2,LP0;做完加法否,4.3.2算术运算程序,MOVR2,23HJNCRETURN;有无进位MOVR0,#01HINCR3RETURN:MOVR0,#20HRET,4.3汇编语言程序设计实践,例4-11,如图4-2所示,MCS-51单片机的P1作为输出端口,连接8只发光二极管。按该电路工作原理,P1口各位输出“0”时,将发光二极管点亮;P1口各位输出“1”使发光二极管灭。分析下述汇编程序运行后,8个发光二极管点亮的规律。,4.3.3I/O接口控制程序,图4-2P1口驱动LED示意图,4.3汇编语言程序设计实践,主程序:LP:MOVP1,7EHLCALLDELAYMOVP1,0BDHLCALLDELAYMOVP1,#0DBHLCALLDELAYMOVP1,0E7HLCALLDELAYMOVP1,0DBHLCALLDELAYMOVP1,0BDHLCALLDELAYSJMPLP子程序:DELAY:MOVR2,0FAHL1:MOVR3,#0FAHL2:DJNZR3,L2DJNZR2,L1RET,4.3.3I/O接口控制程序,例4-12:按照图4-2所示的电路,试编写控制发光二极管指示灯移位的程序,要求8个发光二极管依次亮一个,循环左移,一个一个地亮,直至循环。相关源程序如下:MOVA,7FHL1:MOVP1,ARLALCALLDELAY;与例4-11的延时程序相同SJMPLl,4.3.3I/O接口控制程序,4.3汇编语言程序设计实践,一个函数的定义由类型、函数名、参数表和函数体四部分组合而成。一个函数在程序中可以三种形态出现:函数定义、函数调用、函数说明。C51函数的一般格式为:类型函数名(参数表)参数说明;数据说明部分;/注释执行语句部分;,4.4.1C51程序结构,4.4面向51单片机的C语言程序,4.4.2C51数据类型,1.数据类型,KEILC51编译器支持的数据类型、长度和值域如表4-1所列。,表4-1KEILC51数据类型,4.4.2C51数据类型,1.数据类型,C语言的数据有常量、变量之分。常量是在程序运行的过程中,其值不能改变的量;变量是在程序运行中,其值可以改变的量。一个变量由两部分构成:变量名和变量值,每一个变量都有一个变量名,在内存中占据一定的存储单元(地址),并在该内存单元中存放该变量的值。常量定义:#defineCONST44/定义常量符号CONST,值为44变量定义:chart;/定义字符型变量,变量名为tC语言中习惯上以小写字母定义变量,以大写字母定义常量。另外由于51单片机的寄存器及数据总线为8位所以在定义变量时,应尽可能使用无符号字符型。,4.4.2C51数据类型,1.数据类型-常量和变量,2C51数据存储类型51系列单片机的程序存储器与数据存储器是分开的,并独立寻址。51系列单片机共有如下四个存储空间:片内程序存储空间;片外程序存储空间;片内数据存储空间;片外数据存储空间。C语言编程时在对常量、变量的定义时,要注意不同功能的常量、变量应存储在不同的存储区,在定义变量或常量时要定义成不同的存储类型(data,bdata,idata,pdata,xdata,code)。,4.4.2C51数据类型,表4-2C51存储类型与单片机存储空间对应关系,4.4.2C51数据类型,2C51数据存储类型,3特殊功能寄存器的定义在51单片机内部RAM的高128字节,分散着21个特殊功能寄存器(SFR),为了能直接访问这些特殊功能寄存器,KEILC51提供一种自主形式的定义方法,此种方法与标准C语言不兼容,只适用于对8051系列单片机进行定义。这种定义的方法引入关键字“sfr”,如:sfrTMOD=0 x89;/*定时/计数器方式控制寄存器地址为89H*/。sbit:特殊功能位声明,sbitled1=P10;,4.4.2C51数据类型,将其视为片外数据存储器的一个单元,利用#define语句进行定义:#definePORTAXBYTE0 x0020/*将PORTA定义为外部I/O口,地址为0 x0020*/例:要通过地址0 x0020向外部写数据0 x01,下面分别用汇编语言和C语言编程实现:汇编语言实现:MOVDPTR,#0020HMOVA,#01HMOVXDPTR,AC语言实现:#definePORTAXBYTE0 x0020PORTA=0 x01;,4.4.2C51数据类型,4片外扩展I/O口,C51的运算符主要包括算术运算、关系运算、逻辑运算、位操作运算、自增减运算及复合运算等。其运算符与表达式与C语言要求基本一致。,4.4.3C51运算符和表达式,4.4.2C51数据类型,4.4.3C51运算符和表达式,C语言程序主要有顺序、选择和循环三种结构。顺序结构即语句逐条执行,是最基本、最简单的程序结构。选择结构和循环结构的相关控制语句分别介绍如下:1选择结构语句及流程图在选择结构中常见的控制语句有:if,elseif,switch-case。其中if、elseif主要应用在串行多分支结构程序控制中,而switch-case主要用于并行从分去结构程序的控制中。图4-3所示为串行多分支结构流程图。,4.4.4C51流程控制语句,4.4面向51单片机的C语言程序,图4-3串行多分支结构流程图,串行多分支结构,语句的基本形式:1)if(表达式)语句;/当括号内的表达式为真,则执行内的语句;2)if(表达式)语句1;else语句2;/当括号内的表达式为真,则执行内的语句,否则执行语句2;3)if(表达式1)语句1;elseif(表达式2)语句2;else语句n;/哪一个表达式条件为真,则执行对应中的语句,但判断时表达式1的优先级最高,只有条件不满足时,才继续向下判断。4)if(表达式1)if(表达式2)语句1;else语句2;/if的嵌套使用,只有当表达式1为真时,才进行下一级判断。,1选择结构语句及流程图,并行多分支结构,图4-4并行多分支结构流程图,switch-case语句表达形式:switch(表达式1)case值1:语句1;break;case值2:语句2;break;case值N:语句N;break;default:语句N+1;,1选择结构语句及流程图,4.4.4C51流程控制语句,2循环结构语句及流程图循环结构中常见的控制语句主要有while,dowhile,for等。While语句的一般形式为:while(条件)语句;,,图4-5while结构流程图,4.4.4C51流程控制语句,与while相比,dowhile的区别就是行执行循环语句后判断循环条件。语句的形式为:do语句;while(条件)。流程图如图4-6所示。,图4-6dowhile结构流程图,4.4.4C51流程控制语句,2循环结构语句及流程图,for(表达式1;表达式2;表达式3)语句;,for语句在执行时共有5个过程,具体执行过程如下:对表达式进行赋值初始化判断表达式2是否为真,若为真则进行循环,若为假则退出循环若表达式2为真,则执行循环体内的语句,并求解表达式3回到第二步,再判断表达式2退出for循环,4.4.4C51流程控制语句,2循环结构语句及流程图,51单片机内部资源主要是特殊功能寄存器或SFR寻址,在KEILC51中提供了定义这些寄存器的头文件,在进行C语言编程,应在源程序的开始处包含头文件,#include。内部资源的C语言编程主要介绍外中断、定时器和串行口编程。C51编译器支持在C源程序中直接开发中断程序,采用特殊语法定义中断函数,定义方法如下:返回值函数名interruptnusingmn代表单片机的中断编号,n的范围(04)依次为外部中断0、定时/计数器0、外部中断1、定时/计数器1、串行口中断。m表示通用寄存器组的的选择,范围(0-3)。,4.4.5单片机资源与C语言编程,4.4.6C语言程序实例,在进行单片机的C语言编程时,其步骤与汇编语言编程没有区别,首先要了解单片机系统硬件电路的设计,尤其单片机的外部资源的地址编码,当了解了单片机系统的硬件电路后,就可以根据要求画出流程图,合理分配内部资源进行编程,下面以一个数据采集的实例进行说明。,图4-7为ADC0809与51系列单片机(89S51)的接口电路原理图,要求顺序采集ADC0809的8个通道的模拟量,并存放在数组ADCON中,图4-7单片机数据采集原理图,由电路原理图可以看到,ADC0809的启动信号START由译码器Y1与单片机RD信号经或非门产生,输出使能信号OE由Y1与单片机WR信号经或非门产生,3/8译码器的输入接到P2.5至P2.7,ADC0809的通道选择信号接到单片机的地址线A0至A2,因此得到ADC0809的8个输入通道的地址为2000H2007H,ADC0809转换结束标志EOC经非门后接到单片机的P3.2口。,C51源程序如下:#include/包含头文件#include#defineucharunsignedchar#defineIN0XBYTE0 x2000/设置ADC0809通道0的地址sbitad_over=P32;/转换结束标志定义voidad0809(ucharidata*x)/采集函数uchari;ucharxdata*ad_adr;ad_adr=,#include#defineucharunsignedchar#defineuintunsignedintsbitD0=P10;uinta;,voidmain()D0=0;a=59000;while(a-);D0=1;a=50000;while(a-);,#includedelay_10ms(unsignedt)unsignedinti,j;for(i=0;iYes-选择安装目录-Next-”输入序列号、姓名、公司”等。安装完成后在Windows桌面上会出现一个KeilVision2的图标。,4.5.1KeiluVsion2安装,在KeiluVsion2支持下开发单片机应用系统软件,一般需要经过以下的几个过程:创建工程工程选项卡设置新建源文件添加源文件到工程编译仿真调试下载。,4.5.2KeilVsion2的使用,(1)KeilC51Vision2界面与工程创建(如图4-8),图4-8KeilC51Vision2的工作界面,创建一个新工程,首先须在菜单栏“Project”菜单中选择“NewProject”选项(补充图1),此时会弹出“创建新工程”对话框(补充图2),可填入工程名,随后单击保存。,创建新工程补充图1,保存工程项目(Test)补充图2,接着出现选择单片机芯片型号对话框(补充图3)。本例选择单片机,随后点击“确定”,新工程创建即告完成。,选择芯片型号补充图3,建立源程序文档补充图4,点击保存按钮补充图5,图4-9源程序文档加入所建工程项目中,图4-10工程文件设置,Target选项卡设置补充图6,Output选项卡的设置补充图7,保存文件格式补充图8(练习.A),添加源程序补充图9,设定完成后单击“确定”返回主界面,工程文件设置完毕。当工程建立并设置完成之后,接下来就可以对工程进行编辑(源程序文本)。以下面简单的汇编源程序为例:ORG0000H;P1口输出实验LJMPSTARTORG0100HSTART:MOVA,#0FEHLOOP:RLAMOVP1,ALCALLDELAY;延时0.1秒JMPLOOPDELAY:MOVR1,#127;延时0.1秒DEL1:MOVR2,#200DEL2:DJNZR2,DEL2DJNZR1,DEL1RETEND,当源程序文件编辑输入完成之后,单击工具栏保存文件,随后单击工具栏的编译按钮“”对文件进行编译。如果源程序没有语言错误,将会在文件存储目录生成,OBJ文件,同时如果设置正确,会生成.HEX文件,并且在工程主界面下方会出现无语法错误的提示,如图4-19
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 八中自主招生考试题及答案
- 解析卷公务员考试《常识》同步练习试题(含答案及解析)
- 护理查对制度试题(含答案)
- 贵州企业招聘:2025贵州黔晨综合发展有限公司招聘15人考前自测高频考点模拟试题及完整答案详解1套
- 2025年在线职业技能认证平台投资风险评估分析报告
- 2025年文化娱乐产业产业链重构与协同发展报告
- 2025年婴幼儿配方食品营养配方研究进展与挑战分析报告
- 2025年城市慢行系统建设与城市交通拥堵治理创新策略可行性研究报告
- 2025年教育行业质量评估与认证体系在学校特色教育中的应用报告
- 2025年海洋生态修复政策与海洋生物保护研究报告
- 4.《花之歌》教学设计-2024-2025学年统编版语文六年级上册
- 2025国投生物制造创新研究院有限公司招聘(31人)考试备考试题及答案解析
- 新学期,新征程+课件-2025-2026学年高二上学期开学第一课主题班会
- 2025新版企业员工劳动合同范本
- 医院信息化建设中长期规划(十五五规划2025年)
- 国家中医药管理局《中医药事业发展“十五五”规划》全文
- 阿尔茨海默病及其他类型痴呆临床路径表单
- 公开课第一课素描基础入门课件
- 数据结构ppt课件完整版
- GB∕T 36527-2018 洁净室及相关受控环境 节能指南
- 应用语言学(全套课件197P)
评论
0/150
提交评论