单片机开发系统讲义

上传人:今*** 文档编号:106930688 上传时间:2019-10-17 格式:PPT 页数:63 大小:2.95MB
返回 下载 相关 举报
单片机开发系统讲义_第1页
第1页 / 共63页
单片机开发系统讲义_第2页
第2页 / 共63页
单片机开发系统讲义_第3页
第3页 / 共63页
单片机开发系统讲义_第4页
第4页 / 共63页
单片机开发系统讲义_第5页
第5页 / 共63页
点击查看更多>>
资源描述

《单片机开发系统讲义》由会员分享,可在线阅读,更多相关《单片机开发系统讲义(63页珍藏版)》请在金锄头文库上搜索。

1、主要内容 例程_C语言有关内容复习 Keil C51软件的使用 Proteus软件的使用,单片机开发系统,例程,#include #define uchar unsigned char sbit P1_0=P10; void delay(uchar i); void main() while(1) P1_0=P1_0; delay(100); void delay(uchar i) uchar j; while(i-) for(j=0;j150;j+); ,头文件,宏定义,变量声明,被调函数声明,定义主函数,函数调用,被调函数定义,C语言的结构,C语言的结构就是函数结构。C语言就是函数定义和调

2、用的语言。 程序中只一个主函数即main( ),在主函数中调用其它函数。 一般来说主函数不断地循环执行。,函数的定义,函数类型说明 函数名(形式参数表) 局部变量说明; 函数体语句; return(返回参数值) ,void delay(uchar i) uchar j; while(i-) for(j=0;j150;j+); ,没有返回值,函数名,形式参数表,形式参数在函数调用前,系统没给它分配内存。主程序调用delay(100)时;100叫实际参数,将100赋给形参i,并给i分配内存。这叫实参向形参的单向传递。,局部变量,没有返回值,所以不写return,局部变量只在局部范围内有效,即在de

3、lay函数调用时,系统才给它分配内存。返回主程序后,系统释放内存。,C语言程序结构,顺序结构 循环结构 while do-while for,循环程序一般包括如下四个部分: 1)初始化:置循环初值,即设置循环开始的状态,比如设置地址指针,设定工作寄存器,设定循环次数等。 2)循环体:这是要重复执行的程序段,是循环结构的基本部分。 3)循环控制:循环控制包括修改指针、修改控制变量和判断循环是否结束还是继续,修改指针和变量是为下一次循环判断作准备,当符合结束条件时,结束循环;否则,继续循环。 4)结束:存放结果或作其他处理。,while语句,while语句的一般形式为: while(表达式) 语句

4、; 其中表达式是循环条件,语句为循环体。 while语句的语义是:计算表达式的值,当值为真(非0)时, 执行循环体语句。其执行过程如右图所示。,while(1) P1_0=P1_0; delay(10); ,显然,这是一个死循环!,unsigned char i=0; while(i5) P1_0=P1_0; delay(10); i+; ,循环变量赋初值,循环终止条件,修改循环变量,循环体,i256时循环多少次,i=5时循环多少次,i=5时循环多少次,while(i) k+; i+; ,若uchar i=3,k=0; 运行程序后 循环多少次?,i加到255后,再加1则为0, 循环253次,w

5、hile(i=0) k+; i+; ,循环0次,while(i=1) k+; i+; ,死循环,uchar i=3,k=0; while(i257) k+; i- -; ,i永远小于256. 死循环 因此,一定要注意变量的取值范围,while(i=1) k+; i+; ,循环0次,使用while语句应注意以下几点,1)while语句中的表达式一般是关系表达或逻辑表达式,只要表达式的值为真(非0)即可继续循环。 2)循环体如包括有一个以上的语句,则必须用括起来, 组成复合语句。 3)应注意循环条件的选择以避免死循环。,do-while语句,do-while语句的一般形式为: do 语句; whi

6、le(表达式); 其中语句是循环体,表达式是循环条件。 do-while语句的语义是:先执行循环体语句一次, 再判别表达式的值,若为真(非0)则继续循环,否则终止循环。,do-while语句和while语句的区别,do-while语句和while语句的区别在于do-while是先执行后判断,因此do-while至少要执行一次循环体。而while是先判断后执行,如果条件不满足,则循环体语句一次也不执行。 while语句和do-while语句一般都可以相互改写。,unsigned char i=0; do P1_0=P1_0; delay(10); i+; while(i5);,unsigned

7、char i=0; while(i5) P1_0=P1_0; delay(10); i+; ,while(1) P1_0=P1_0; delay(10); ,do P1_0=P1_0; delay(10); while(1);,有分号!,for语句,for语句的一般格式 for(变量赋初值;循环继续条件;循环变量增值) 循环体语句组; 执行过程如图所示。,图2-3-2 for语句执行流程图,for语句的执行过程,1)求解“变量赋初值”表达式1。 2)求解“循环继续条件”表达式2。如果其值非0,执行3);否则,转至4)。 3)执行循环体语句组,并求解“循环变量增值”表达式3,然后转向2)。 4)

8、执行for语句的下一条语句。,循环语句,while( ) do_while do while( ); for(i=0;i10;i+) ,不能有分号!,必须有分号!,不能有分号!,while(x=30 );,表示没有循环内容,通常表示等待,循环嵌套,(1)循环语句的循环体内,又包含另一个完整的循环结构,称为循环的嵌套。循环嵌套的概念,对所有高级语言都是一样的。 (2)for语句和while语句允许嵌套,do-while语句也不例外。,单片机开发系统及功能,单片机开发系统是单片机应用系统设计的必需工具,包括计算机、单片机在线仿真器、工具软件、编程器等。 在线仿真功能 调试功能 1) 运行控制功能

9、2) 目标系统状态的读出修改功能 辅助设计功能 1) 程序设计语言 2) 程序编译 程序固化功能,一、单片机集成开发环境,所有的计算机只能识别和执行二进制代码,而不能识别我们熟知的语言,因此,对于已写好的单片机源程序汇编语言(或C语言),必须翻译成单片机可识别的目标代码,然后转载到单片机的程序存储器中进行调试,这种翻译工具称为编译器。,KeilC51是美国Keil Software公司出品的51系列兼容单片机C语言软件开发系统。Keil C51软件提供丰富的库函数和功能强大的集成开发调试工具,全Windows界面。另外重要的一点,编译后生成的汇编代码,到Keil C51生成的目标代码效率非常高

10、,多数语句生成的汇编代码很紧凑,容易理解。,(一)keil 51 windows集成开发平台的使用 1keil 51 windows集成开发平台介绍,2导入需要仿真的程序,建立一个工程项目 芯片选择 属性设置 建立源程序文件 添加文件到当前项目组中 编译文件,建立新project,创建新文件夹,打开文件夹,取project文件名my,保存之,选CPU,添加启动文件STARTUP.A51,打开编辑界面,编辑源程序,保存源程序,将源程序加入到项目中,源文件选择界面,设置项目配置选项(击右键),全用默认值,编译文件,生成可执行文件,单击Build图标,输出窗口 Output Window,进入仿真运

11、行状态,单击图标 仿真运行,进入仿真运行状态,寄存器窗口,调试观察窗口,观察P0P1输出,启动单步运行,单击图标 单步运行,不进入函数内部,观察P口输出,复位,复位 RST,存储器窗口,字母C:代码存储空间 D:直接寻址的片内存储空间 I:间接寻址的片内存储空间 X:扩展的外部RAM空间 “数字”:想要查看的地址。,工程窗口寄存器页,常用的调试按钮,复位按钮,按下后,所有的系统状态将变成初始状态。,全速运行,进入循环并单步执行,停止全速运行,跳过循环并单步执行,跳出单步执行过程,执行到断点处,PROTEUS简介,Proteus 是一个完整的嵌入式系统软、硬件设计仿真平台。 ISIS为功能强大的

12、原理布线工具。 ARES PCB设计为一PCB设计系统。,PROTEUS微处理器系统仿真,在基于微处理器系统的设计中,即使没有物理原型,Proteus VSM也能够进行软件开发。 模型库中包含LCD显示、键盘、按钮、开关等通用外围设备。同时,提供的CPU模型有ARM7、PIC、Atmel AVR、Motorola HCXX以及8051/8052系列。 单片机系统的仿真是PROTEUS VSM的一大特色。同时,本仿真系统将源代码的编辑和编译整合到同一设计环境中,这样使得用户可以在设计中直接编辑代码,并可容易的查看到用户对源程序修改后对仿真结果的影响。 VSM甚至能仿真多个CPU,它能便利处理两个

13、或以上微控制器的联结与设计。,一 Proteus 7 Professional界面介绍,运行ISIS 7 Professional,会出现如图的窗口界面。,编辑窗口,预览窗口,已选元器件列表,选择元器件,元器件管理,工具栏,标题栏,工具箱,对象方位控制,仿真进程控制,状态栏,ISIS大部分操作与windows的操作类似。,1. 原理图编辑窗口(The Editing Window) 顾名思义,它是用来绘制原理图的。蓝色方框内为可编辑区,元件要放到它里面。与其它Windows应用软件不同,这个窗口是没有滚动条的,可以用左上角的预览窗口来改变原理图的可视范围,用鼠标滚轮缩放视图。,2. 预览窗口(

14、The Overview Window) 它可以显示两个内容。一个是:在元件列表中选择一个元件时,它会显示该元件的预览图;另一个是:当鼠标焦点落在原理图编辑窗口时(即放置元件到原理图编辑窗口后或在原理图编辑窗口中点击鼠标后),它会显示整张原理图的缩略图,并会显示一个绿色的方框,绿色方框里面的内容就是当前原理图窗口中显示的内容,因此你可用鼠标在它上面点击来改变绿色方框的位置,从而改变原理图的可视范围。,选择File/New Design,选择DEFAULT模板,并取名mydesign,扩展名为”.dsn”,二 绘制电路原理图,1. 创建新的设计文件,选择System/Set Sheet Size

15、s菜单项,选择A4类型图纸。,2. 设置图纸类型,3. 将所需元器件加入到对象选择器窗口,单击对象选择器 ,弹出元器件选择页面。,对象选择器按钮,关键字,元器件列表,元器件子类列表,元器件制造商列表,元器件PCB封装选择,元器件列表区域,元器件预览,元器件PCB封装预览,4. 放置元器件至图形编辑窗口,5. 添加电源和接地引脚,单击选择终端按钮,电源,地,6. 元器件之间的连线Wiring Up Components on the Schematic,7. 给导线或总线加标签,鼠标指向导线按右键,选择Place Wire Label,输入导线标签。相同标签的导线表示相互连接,8. 添加文字标注,鼠标指向元件按右键,选择Eidt Properties,输入元件名称,9. 选择AT89C52属性 鼠标指向CPU,按右键,选 Edit Properties,10.加载程序文件,单击此处,选择led,hex文件,三.单击仿真运行开始按钮,进入仿真,单击此处,本次课要求,复习C语言的基本知识 初步掌握Keil C的使用方法 初步掌握proteus软件的使用方法 将例程在两个软件中练习一下。,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号