单片机应用系统的设计与开发

Post on 01-Jan-2016

50 views 12 download

description

单片机应用系统的设计与开发. 掌握 : 1 、单片机系统开发的一般方法 2 、 ISP 在线编程中使用的单片机管脚 3 、利用 Proteus 进行 51 单片机仿真的流程 4 、熟练掌握 Wave 、 Proteus 软件的使用. 单片机应用系统的设计与开发. 一、 单片机系统开发的一般方法 二、 单片机 硬件系统的基本组成 三、 单片机开发系统概述 四、 ISP 在线编程 五、 WAVE6000 集成开发环境 六、 Proteus 入门教程. 一、单片机系统开发的一般方法. 1 、 确定任务,可行性分析 2 、 总体设计 3 、 硬件设计 - PowerPoint PPT Presentation

Transcript of 单片机应用系统的设计与开发

单片机应用系统的设计与开发

掌握: 1 、单片机系统开发的一般方法 2 、 ISP 在线编程中使用的单片机管脚 3 、利用 Proteus 进行 51 单片机仿真的流程

4 、熟练掌握 Wave 、 Proteus 软件的使用

单片机应用系统的设计与开发 一、一、单片机系统开发的一般方法 二、二、单片机硬件系统的基本组成 三、三、单片机开发系统概述 四、四、 ISP 在线编程 五、五、 WAVE6000集成开发环境 六、六、 Proteus 入门教程

一、单片机系统开发的一般方法一、单片机系统开发的一般方法 1 、确定任务,可行性分析 2 、总体设计 3 、硬件设计

程序存储器、数据存储器和 I/O 接口 地址译码电路、总线驱动能力、抗干扰措施

4 、软件设计 5 、系统调试

二、单片机二、单片机硬件系统的基本组成硬件系统的基本组成 电源电源 单片机芯片单片机芯片 时钟时钟 复位电路复位电路

三、单片机开发系统概述三、单片机开发系统概述 用单片机组成应用系统时,其应用用单片机组成应用系统时,其应用

程序的程序的编程、修改、调试编程、修改、调试,运行结,运行结果是否符合设计要求,软件、硬件果是否符合设计要求,软件、硬件故障的判断以及程序固化等等问题,故障的判断以及程序固化等等问题,靠系统自身根本无法解决,靠系统自身根本无法解决,必须借必须借助外界的帮助。助外界的帮助。

帮助单片机应用系统进行研制的工帮助单片机应用系统进行研制的工具称为具称为单片机开发工具单片机开发工具或叫或叫单片机单片机开发系统开发系统。它和微机开发系统一样,。它和微机开发系统一样,是用来帮助研制单片机应用系统的是用来帮助研制单片机应用系统的软件和硬件的一种专用装置。软件和硬件的一种专用装置。

串口 / 并口

仿真器

实验箱 ( 目标板 )

仿真软件( 集成开发环境 )

34 芯 电缆

仿真头1 40

2120

EPROM 写入器(或下载线)

硬件:硬件: EEPROM 写入器(或下载线)、仿真器、 PC

机 软件:软件:

集成开发环境(编译、汇编、仿真程序),如 :WAVE6000 、 Keil uV2/uV3

EPROM 写入程序 程序下载软件( S51 系列单片机)

四、 ISP 在线编程 AVR 和 ATMEL 的 AT89S 系列单片机可以使用 ISP 下载线在线编程擦写,即不必将 IC芯片拆下 ,直接在电路板上进行程序修改、下载等操作。这样对程序的调试和升级都很方便。ISP 下载线的线路很简单,适合自己动手制作。

注意: 下载软件和下载工具都是配套的 硬件不一样不可能通用

MOSI :数据串行输入 MISO :串行数据输出 SCK :同步控制时钟 REST :复位

Pin CABLE AT89S

Signal name PIN OUT

1 MOSI P1.5

2 VCC

3

4

5 RST RESET

6

7 SCK P1.7

8

9 MISO P1.6

10 GND

1 、硬件安装

把 ISP 下载线的一端接计算机的 USB ,另一端接CPU 板的 10 芯插座。

2 、软件安装

安装下载 AVR_fighter.exe 软件。

3 、使用方法

软件安装后,双击图标 运行下载软件。

装入程序

选择单片机型号

五、五、 WAVE6000WAVE6000 集成开发环境集成开发环境 WAVE6000 软件集成了强大的文件编辑处理、编译连接、项目管理、排列窗口工具、书签窗口、观察窗口、反汇编等多种功能,提供单步、跟踪、自动单步 /跟踪、断点、执行到光标处、全速执行、复位、暂停等多种调试手段。

支持 ASM 、 C 语言及多模块混合源程序调试。同时可无缝支持 Keil Uv2/Uv3 C51 的仿真调试。

项目窗口

信息窗口

编辑窗口CPU 窗口

1 )打开 WAVE6000 调试环境

2 )建立新程序 选择菜单 [文件 | 新建文件 ]功能 出现一个文件名为 NONAME1 的源程序窗口,在此窗口中输入程序。

3 )保存程序 选择菜单 [文件 | 保存文件 ]或 [文件 | 另存为 ] 功能

选择文件所要保存的位置,文件名扩展名 *.ASM 。

保 存 文 件 所在路径

文件名,后缀为 ASM

4 )建立新的项目 选择菜单 [文件 | 新建项目 ]功能 ( 1)加入模块文件。 ( 2)加入包含文件。 ( 3)保存项目

自动将后缀设成“ .PRJ”。将项目存在与源程序相同的文件夹下。

项目保存好后,如果项目是打开的,可以看到项目中的“模块文件”已有一个模块“ MY1.ASM”。

如果项目窗口没有打开,可以选择菜单[窗口 | 项目窗口 ]功能来打开。

可通过仿真器设置快捷键或双击项目窗口第一行选择仿真器和要仿真的单片机

可以通过仿真器设置快捷键或双击项目窗口第一行选择仿真器和要仿真的单片机

5 )设置项目 “仿真器”栏选择仿真器类型和仿真头及单片机。“语言”栏中选择编译器类型,“通信设置”中选择端口及波特率,保存项目。

加上前面的“勾”即为软件仿真方式

6)编译程序 选择菜单 [项目 | 编译 ]功能或按编译快捷图标或 F9键,编译你的项目

项目窗口

编译快捷键

信息窗口

7)程序调试 [ 执行 | 全速执行 ],或 CTRL+ F9 [ 执行 | 跟踪 ],或 F7 键

一条指令一条指令地执行程序,若有子程序调用,也会跟踪到子程序中去。

[ 执行 | 单步 ],或 F 8键 单步执行,但不会跟踪到子程序中

[ 执行 | 执行到光标处 ],或 F 4键

由于条件编译或高级语言优化的原因,不是所有的源程序都能产生机器指令。源程序窗口最左边的“ o”代表此行为有效程序,此行产生了可以指行的机器指令。

跟踪快捷键当前程序指针

有效程序行

六、六、 Proteus Proteus 入门教程入门教程 ProteusProteus 是来自英国 Labcenter 公

司的嵌入式系统仿真开发软件,它包括原理图布图、混合模式仿真、 VSM 嵌入式仿真以及 PCB 制板功能。

(一) Proteus 概览 (二) 原理图设计 (三) PROTEUS微处理器仿真 (四) Proteus和Keil联合调试

在传统的 CAD功能中添加了嵌入式系统的仿真

可以完整地仿真微控制器以及相连的模拟和数字电路

(一) Proteus 概览ProSPICE

混合模式仿真器

ISIS

设计仿真平台

VSM

嵌入式仿真

ARES

PCB 制版Proteus

Design Suite

Proteus 概览

在 Proteus 中 , 从原理图设

计、单片机编程、系统仿真到

PCB 布线一气呵成。完成了从

概念到产品的整个过程。

Proteus 是一个虚拟实验室,提供了大量的虚拟仪器、仪表、激励源和分析工具: 13类激励源

直流、正弦、脉冲…… 13类曲线图表

模拟、数字、频率…… 12类虚拟仪器

示波器、逻辑分析仪、SPI/I2C 调试器……

电压 / 电流探针

PROTEUS虚拟实验室-探针 (Probe)

电压探针( Voltage probes )-既可在模拟仿真中使用,也可在数字仿真中使用。在模拟电路中记录真实的电压值,而在数字电路中,记录逻辑电平及其强度。

   探针即可用于基于图表的

仿真,也可用于交互式仿真中 。

预览窗口预览窗口挑选元件按钮

库管理按钮

模型选择工具栏

元件列表元件列表 仿真按钮

原理图编辑窗口

方位控制按钮

(二)原理图设计

11 、原理图编辑窗口、原理图编辑窗口(( TThe Editing Window )

用来绘制原理图,蓝色方框内为可用来绘制原理图,蓝色方框内为可编辑区,元件要放到它里面。编辑区,元件要放到它里面。

注意:注意:这个窗口是没有滚动条的,这个窗口是没有滚动条的,你可用预览窗口来改变原理图的可你可用预览窗口来改变原理图的可视范围。视范围。

22 、预览窗口、预览窗口(( The Overview WindowThe Overview Window ))

可显示两个内容可显示两个内容 .. (1)(1) 当你在元件列表中选择一个元件时,当你在元件列表中选择一个元件时,

它会显示该元件的预览图;它会显示该元件的预览图; (2)(2) 当你的鼠标焦点落在原理图编辑窗口当你的鼠标焦点落在原理图编辑窗口

时,会显示整张原理图的缩略图,可用时,会显示整张原理图的缩略图,可用鼠标在它上面点击来改变绿色的方框的鼠标在它上面点击来改变绿色的方框的位置,从而改变原理图的可视范围。 位置,从而改变原理图的可视范围。

33 、模型选择工具栏、模型选择工具栏(( Mode Selector ToolbarMode Selector Toolbar ))

主要模型(主要模型( Main ModesMain Modes )) 1 )选择元件( components )(默认选择

的) 2)放置连接点 3 )放置标签(用总线时会用到) 4 )放置文本 5 )用于绘制总线 6 )用于放置子电路 7)用于即时编辑元件参数 (先单击该图标再

单击要修改的元件)

方便快捷的元件查找、放置功能:

模糊查找

分类查找

结果列表 元件预览

封装预览

配件(配件( GadgetsGadgets )) 1 )终端接口:有 VCC 、地、输出、输入等接口 2)器件引脚:用于绘制各种引脚 3 )仿真图表:用于各种分析,如 Noise Analysis 4 )录音机 5 )信号发生器( generators ) 6 )电压探针:使用仿真图表时要用到 7)电流探针:使用仿真图表时要用到 8)虚拟仪表:有示波器等

2D2D图形图形(( 2D Graphics2D Graphics )) 1* 画各种直线 2* 画各种方框 3* 画各种圆 4* 画各种圆弧 5* 画各种多边形 6* 画各种文本 7* 画符号 8* 画原点等

44 、元件列表、元件列表(( The Object SelectorThe Object Selector ))

用于挑选元件( components )、 终端接口( terminals )、仿真图表( graph )、信号发生器( generators )等。

举例:举例:当你选择“元件 ”,单击“ P” 按钮会打开挑选元件对话框,选择了一个元件后,单击“ OK” (或双击元件),该元件会在元件列表中显示,以后要用到该元件时,只需在元件列表中选择即可。

55 、方向工具栏、方向工具栏(( Orientation ToolbarOrientation Toolbar ) )

旋转 :旋转角度只能是 90 的整数倍。

翻转 :完成水平翻转和垂直翻转。 使用方法:先右键单击元件,再点击

(左击)相应的旋转图标。

66 、仿真工具栏 、仿真工具栏

仿真控制按钮 1* 运行 2* 单步运行 3* 暂停 4* 停止

操作简介 1 )绘制原理图:绘制原理图要在原理图编辑

窗口中的蓝色方框内完成。其操作不同于其操作不同于 WIWINDOWSNDOWS 应用程序。应用程序。

正确的操作是:用左键放置元件;右键选择元件;双击右键删除元件;右键拖选多个元件;先右键后左键编辑元件属性;先右键后左键拖动元件;连线用左键,删除用右键;改连接线:先右击连线,再左键拖动;中键放缩原理图。

2 )定制自己的元件: ( 1 )用 PROTEUS VSM SDK 开发仿真模型,并制作元件;

( 2)是在已有的元件基础上进行改造,比如把元件改为 bus 接口的;

( 3 )利用已制作好的元件,可以到网上下载一些新元件并把它们加到自己的元件库里

3 ) Sub-Circuits 应用: 用一个子电路可以把部分电路封装起来,这样可以节省原理图窗口的空间。

(三) PROTEUS微处理器仿真  Proteus VSM 是一个基于 ProSPICE 混合模型仿真器的,完整的嵌入式系统软、硬件设计仿真平台 。

单片机系统的仿真是 PROTEUS VSM 的主要特色。用户可在 Proteus 中直接编辑、编译、调试代码,并直观地看到仿真结果。

CPU模型有 ARM7( LPC21xx)、 PIC 、Atmel AVR 、 Motorola HCXX以及 8051/8052系列。

同时模型库中包含了 LED/LCD显示、键盘、按钮、开关、常用电机等通用外围设备。

PROTEUS VSM 仿真与分析示例 1 : PWM 电机控制——动态效果

动态器件使仿真直观生动

CPU 可加载程序运行

PROTEUS VSM 仿真与分析

示例2:单片机游戏——动态效果

游戏手柄可映射到 PC 键盘上

游戏显示屏( LCD )

引脚逻辑状态显示

CPU 运行游戏程序

PROTEUS VSM 仿真与分析示例3:温度测量电路——虚拟与现实的交互

PROTEUS 仿真电路

PC 串行口串行电缆

实际温度测量板

通过物理接口模型,可以实现虚拟仿真电路与外部实际电路的双向通信

51 单片机仿真过程

1.绘制原理图 2.选择软件设计语言(汇编、 C)编写源代码

3.编译代码,生成目标文件。 4.装载 HEX 或 OMF文件,仿真调试。

第三方工具的应用

直接使用第三方 IDE ( Integrated Development Environment ) 如: Keil’s uVision 2 、 WAVE6 )开发源代码,并进行编辑,生成 HEX 文件后 ,切换到 Proteus VSM ,再进行仿真。

1 、使用第三方 IDE 建立工程,编写 C程序 2 、编译生成 HEX 代码,加载到 CPU当中。(无源码调试信息)

3 、编译生成 OMF 格式代码,加载到 CPU当中。

装载 HEX或 OMF文件,仿真调试。

程序加载到 CPU

仿真调试

实时显示系统输出结果

实时显示元器件 引脚电平

说明:红色代表高电平,兰色代表低电平,灰色代表不确定电平( floating)。

(四) Proteus 和 Keil 联合调试联调过程: 1. 运行驱动程序 vdmagdi.exe 2. 在 Proteus 中设计电路原理图,并选中 Debug- use remote debug monitor

3. 在 Keil环境下创建项目,编辑源程序( C或 ASM )并编译为 hex文件;

(四) Proteus 和 Keil 联合调试 4. 在 Keil 中,设置 Target- target option-debug, 选用 Proteus VSM Simulator;

5. 在 Proteus 中将 Keil生成的 hex 文件加载给 CPU;

6. 在 Keil 中运行、调试程序,同时在 Proteus 中观察运行结果。

PROTEUS 与 Keil联调

Keil处于运行状态

PROTEUS 同时进入运行状态