您好,欢迎访问三七文档
第七章开发环境黄石市科威自控有限公司57第七章开发环境第一节开发工具§7.1.0集成开发环境uVision2IDE1.KEILC51编译器KEILC51是由德国KEIL软件公司开发的高效、灵活的51系列单片机的开发平台。uVision2是KEILC51forWindows的集成开发环境(IDE),可以完成编辑、编译、连接、调试、仿真等整个开发流程。开发人员可用IDE编辑C或汇编源文件。然后分别由C51及A51编译器编译生成目标文件(.OBJ)。目标文件可由LIB51创建生成库文件,也可以与库文件一起经L51连接定位生成绝对目标文件(.ABS)。ABS文件由OH51转换成标准的Hex文件,以供调试器dScope51使用,进行源代码级调试,也可由仿真器使用,直接对目标板进行调试,也可以直接写入程序存贮器如EPROM中。uVision2IDEuVision2集成开发环境集成了一个项目管理器,一个功能丰富、有错误提示的编辑器,以及设置选项、生成工具、在线帮助。C51编译器和A51汇编器源代码由uVision2创建,并被C51编译或A51汇编。编译器和汇编器从源代码生成可重定位的目标代码LIB51库管理器LIB51库管理器允许从编译器或汇编器生成的目标文件创建目标库。库是一种被特别组织并在以后可以被连接重用的对象模块。当连接器处理一个库时仅仅那些被使用的目标模块才被真正使用BL51连接器/定位器BL51连接器/定位器利用从库中提取的目标模块和由编译器或汇编器生成的目标模块创建一个绝对地址的目标模块。一个绝对地址目标模块或文件包含不可重定位的代码和数据。所有的代码和数据被安置在固定的存储器单元中。此绝对地址目标文件可以用来:a.写入EPROM或其他存储器件b.由uVision2调试器使用来模拟和调试c.由仿真器来测试程序uVision2调试器uVision2源代码级调试器是一个理想、快速、可靠的程序调试器。此调试器包含一个高速模拟器,能够让你模拟整个8051系统,包括片上外围器件和外部硬件。当从器件库中选择器件时,这个器件的特性将自动配置。Monitor-51uVision2调试器支持用Monitor-51进行目标板调试。此监控程序驻留在目标板的存储第七章开发环境黄石市科威自控有限公司58器里,它利用串口和uVision2调试器进行通信。利用Monitor-51,uVision2调试器可以对目标硬件实行源码级的调试RTX51实时操作系统RTX51实时操作系统时一个针对8051系列的多任务内核。RTX51实时内核从本质上简化了对实时事件反应速度要求高的复杂应用系统的设计、编程和调试。RTX51实时内核完全集成到C51编译器中的,从而方便使用。任务描述表和操作系统的连接由BL51连接器/定位器自动控制2.软件开发流程①创建一个项目,从器件库中选择目标器件,配置工具设置②用C语言或汇编语言编写源程序③用项目管理器生成应用④修改源程序中的错误⑤测试、连接、应用3.安装软件①KeiluVision2(可在网上下载)②cygnal_uv2_v133(可在下载)§7.1.1用户嵌入程序下载工具(Downhex.exe)1.Hex文件Hex文件是记录文本行的ASCII文本文件,它全部由可打印的ASCII字符组成(可以用记事本打开)。在Hex文件中,每一行是一条记录,由十六进制数组成的机器码或者静态数据组成。Hex文件常用来保存单片机或其他处理器的目标程序代码,它保存物理程序存储区中的目标代码映象。2.下载程序Downhex.exe此下载工具可以通过计算机的COM1口和嵌入板的UART0口,把用户嵌入程序通过uVision2编译器生成的Hex目标代码固化到用户Flash区中,实现用户嵌入程序的真正嵌入。§7.1.2串口下载程序使用说明1.下载程序简介此下载程序可以通过计算机的COM1口和单片机的UART1口,把由编译器生成的Hex文件固化到用户Flash中。2.生成HEX文件的过程KeiluVision2编译器的设置:a、见图1,点击optionsfortarget进入图2所示界面b、在图2界面中,修改BL51Locate选项卡中的coderange,修改为0XE000-0XF7FF(注意:不论用什么编译器,生成的代码段都要在这个范围内,否则程序无效)c、在图3界面中,选择生成HEX文件,在该项目文件夹下生成的*.hex文件就是要下载的文件第七章开发环境黄石市科威自控有限公司593.下载线连接下载线一边连接PC机的COM1口,一边连接嵌入板的UART0口4.操作说明a、双击Downhex.exe,开始运行程序b、出现“Enterthedownload_filename:”c、输入文件名后按ENTER键。例:d:\user\example.hex(注意:由于DOS系统中文件名的长度不能超过8个字符,不包括文件名后缀,所以生成的Hex文件名最多为8个字符。如D:\********\********.hex)d、出现“Pleaseenterthenumberofpieces:”,e、输入要固化的设备数,然后按ENTER键。例:20f、Nowyouareloadingd:\user\example.hexto20deviceg、Downloading,pleasewait……..//正在下载,请等待h、Comparing,pleasewait……….//正在比较,请等待i、Writingflash,pleasewait……//正在固化,请等待j、Downloadsuccess!//下载成功k、Whenyougetreadyforthenextdevice,pleaseenteranykeytogoon//当准备好下一台设备的下载准备工作后,就按任意键进行下载l、Nowyouareloading%sto%ddevice\n,download,pieces//正在下载HEX文件到第N台设备重复上面的f到j步,直到全部设备下载完毕,显示Complete!5.出错提示的说明Can’topendownload_file.Pleaseenterdownloadfilenameagain://出现在输入文件名(d:\user\example.hex:)后,表示要下载的Hex文件打不开,需要重新输入文件名Yourcodesareoutofrange!Pleaserelocatecode//编译器生成的代码不在0XE000-0XF7FF之间,需要重新生成Hex文件Downloaderror!Doyouwanttorestartprogram(Y)ortryagain(N)?//下载时(downloading,pleasewait……..)出现错误,需要选择是重新启动程序(Y)还是继续下载过程(N)Compareerror!Doyouwanttorestartprogram(Y)ortryagain(N)?//比较时(comparing,pleasewait……..)出现错误,需要选择是重新启动程序(Y)还是继续下载过程(N)PC机嵌入板COM1UART0RS-232第七章开发环境黄石市科威自控有限公司60Writeflasherror!Doyouwanttorestartprogram(Y)ortryagain(N)?//固化时(writingflash,pleasewait……..)出现错误,需要选择是重新启动程序(Y)还是继续下载过程(N)Sendovertime!Communicationerror!Doyouwanttorestartprogram(Y)ortryagain(N)?//通信线路故障,需要选择重新启动程序(Y)还是继续下载(N)Receiveovertime!Communicationerror!Doyouwanttorestartprogram(Y)ortryagain(N)?//通信线路故障,需要选择重新启动程序(Y)还是继续下载(N)第二节嵌入式PLC专用芯片组EASYCORE1.00是一个加载了EASYV1.00嵌入式PLC软件平台的核心芯片组,用于设计PLC,专用控制器(客制式PLC)及其它自动化装置的PLC功能嵌入。§7.2.0原理框图①、供电:+5V200mA,RAM掉电保护5年。②、CPU:C8051F040。③、嵌入扩展能力32I/O:可复用成SPI、I2C接口及外中断、外计数、AD等。4AD:12位精度,100KPS。2DA:12位精度,100KPS。④、通信接口CANBUS:软件内核管理,使用工具软件CANSet构建CANBUS总线网络。UART0:软件内核管理,用于梯形图编程、监控,支持人机界面及用户驱动程序下载。UART1:软件内核管理,用于下载CANBUS网络参数、构建RS485网络及支持第三方设备互连。第七章开发环境黄石市科威自控有限公司61§7.2.1外观尺寸及引脚分布1、外形尺寸②、引脚排布2、引脚分布引脚PA_1------PA_26定义表:序号12345678910名称+5V+5VGNDGNDPRORUN/SETP4.3P4.2P4.1P4.0序号11121314151617181920名称DAC0DAC1CANRXCANTXAD0AD1AD2AD3P1.7P1.6序号212223242526************名称P1.5P1.4P1.3P1.2P1.1P1.0************引脚PB_1------PB_26定义表:序号12345678910名称AGNDAGNDP0.0P0.1P0.2P0.3P0.4P0.5P0.6P0.7序号11121314151617181920名称P3.0P3.1P3.2P3.3P3.4P3.5P3.6P3.7P2.0P2.1序号212223242526************名称P2.2P2.3P2.4P2.5P2.6P2.7************注:P0.0,P0.1固定用作UART0;P0.2,P0.3固定用作UART1。第七章开发环境黄石市科威自控有限公司62第三节EASYCORE函数库EASYCORE函数库EASYCORE.LIB,函数库中包含128个系统函数,可供用户使用§7.3.0库文件源代码一.重定向系统函数1.定点数运算子程序W_BCDEQUUSER_FUN0;双字节HEX转换成BCD码DW_BCDEQUUSER_FUN1;双字HEX转换成BCD码W_BINEQUUSER_FUN2;双字节BCD转换成二进制数DW_BINEQUUSER_FUN3;双字BCD转换成二进制数D2ADDEQUUSER_FUN4;双字节加法D4ADDEQUUSER_FUN5;双字加法D2SUBEQUUSER_FUN6;双字节减法D4SUBEQUUSER_FUN7;双字减法法D2MULEQUUSER_FUN8;双字节乘法D4MULEQUUSER_FUN9;双字乘法D2DIVEQUUSER_FUN10;双字节除法D4DIVEQUUSER_FUN11;双字除法2.浮点数运算子程序FINT2_LEQUUSER_FUN12;浮点数转2字节整数FINT4_LEQUUSER_FUN13;浮点数转4字节整数FSDT2_LEQUUSER_FUN14;2字节整数转浮点数FSDT4_LEQUUSER_FUN15;4字节整数转浮点数FABP_LEQUUSER_FUN16;浮点数加/减法FMUL_LEQUUSER_FUN17;浮点数乘法FDIV_LEQUUSER_FUN18;浮点数除法3.转换子程序HEX_ASCEQUUSER_FUN19;二进制数转ASC码ASC_HEXEQUUSER_FUN20;ASC码转二进制数二.系统函数入口矢量表USER_FINEQU07E00H;系统函数入口矢量表的起始地址1.定点数运算子程序USER_FUN0EQUUSER_FIN+4*0;W_BCD;双字节HEX转换成BCD码USER_FUN1EQUUSE
本文标题:第七章开发环境
链接地址:https://www.777doc.com/doc-921623 .html