cpubbs论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

LabVIEW+单片机学习套件全套教程资料下载[免费]LabVIEW论坛精华列表贴USB0816数据采集卡《LabVIEW宝典》
LabWindows/CVI论坛精华贴NET0816以太网数据采集卡RC0210远程设备授权系统 关闭关停锁定打开设备 户外分布式数据采集
NET1624低速高精度以太网数据采集卡WIFI0824SD无线WIFI网络数据采集卡脱机运行 SD存储 小尺寸微型 串口采集远程采集 安卓 手持移动采集 纪录仪
查看: 4176|回复: 1

基于Proteus的ARM虚拟开发技术

[复制链接]
发表于 2010-5-17 15:28:52 | 显示全部楼层 |阅读模式
现在,人们生活中的每个角落都有嵌入式设备的存在,比如数**相机、移动电话、TV机顶盒及掌上电脑等等。这些嵌入式设备多采用32位RISC嵌入式处理器作为核心部件。其中基于ARM核的嵌入式处理器独占鳌头,在32位RISC处理器中占据超过75%的市场份额。ARM核嵌入式处理器通常采用C语言编程,目前ARM公司的开发工具ADS、RealView以及Keil与ARM核处理器结合较好,得到了广大嵌入式学习者的一致认可。
  在传统的嵌入式系统学习中,嵌入式开发平台是必不可少的。其中资源少的开发平台便宜但功能较少,资源多的开发平台又价格不菲,这对广大的嵌入式爱好者无疑是个障碍。然而,有没有在不增加甚至降低开发成本的同时还能进行同样或更好的开发呢?本文介绍的Proteus软件就是一个可以完全脱离硬件平台来学习嵌入式系统进行虚拟开发的利器,可以说是嵌入式系统学习的一次**。
  1
Proteus简介
  Proteus软件是英国Labcenter electronics公司的EDA工具软件,是一个电子设计的教学平台、实验平台和创新平台,涵盖了电工电子实验室、电子技术实验室、单片机应用实验室等的全部功能。其****的功能是将电路仿真和微处理器仿真进行协调,直接在基于原理图的虚拟原型上进行处理器编程调试,并进行功能验证,通过动态器件(如电机、LED、LCD、开关等),配合系统配置的虚拟仪器(如示波器、逻辑分析仪等),可实时看到运行后的输入输出的效果,其主要特点如下:
  (1)可以仿真、分析各种模拟器件和集成电路,其支持Pillips公司系列的ARM(LPC系列),Proteus的仿真是基于SPICE3F5的,因此它也能像其它的EDA软件那样进行电路分析,如模拟分析、数字分析、混合信号分析、频率分析等等;
  (2)提供了虚拟示波器、逻辑分析仪、信号发生器、计数器、电表、Virtual Terminal等虚拟仪器仪表供选择;
  (3)能够进行SCH(原理图)和PCB(印刷板)电路的设计;
  (4)其自身只带汇编编译器,不支持C语言。但可以将它与Keil、ADS集成开发环境连接,将用汇编和C语言编写的程序编译好之后,可以立即进行软、硬件结合的系统仿真,达到很好的仿真效果。
  2 Proteus环境下的系统设计与仿真
  Proteus和PROTEL、EWB等软件相似,绘制原理图都要先从器件库里取出所需的元器件符号并在绘图区布局好,同时编辑好元件的参数,接着进行连线,添加必要的网络标号等步骤。下面通过一个简单的实例说明如何使用Proteus软件实现ARM(以
LPC2124为例)系统设计与仿真。实例以 LPC2124控制器为核心,与L297、L298组成步进电机控制器,添加必要的外围电路,实现对步进电机的正、反转控制。



  2.1 电路原理图的设计
  运行Proteus VSM的ISIS后出现如图1所示的主窗口界面,点击“File”—“New Design”新建一个设计项目。接下来就是在其中所需的添加元器件了,点击元器件添加按钮会弹出“Pick Devices”对话框,在其中选择需要添加的元器件,添加到器件列表区中。然后再依次点击列表区里的元器件,把它们放到绘图区并编辑其属**,接着进行合理的布局之后,就可以进行连线了。与PROTEL类似,Proteus也具有自动捕捉节点和自动布线功能,连线时当鼠标的指针靠近一个对象的引脚时,跟着鼠标的指针就会出现一个“×”提示符号,点击鼠标左键即可画线,在终点再点击确认一下就完成一段导线,所有导线画完后,点击电源按钮,添加必要的电源和接地符号,并编辑其属**后,原理图的绘制就完成了,如图2所示。





      图2 电路原理图
  2.2 程序代**的编写
  程序代**的编写主要分四个部分进行:
  (1)
LPC2124的初始化代**;
  (2)
LPC2124异常向量入口及异常向量与C语言代**的接口,包括初始化堆栈的代**;
  (3)
LPC2124目标板特殊的代**,包括异常处理程序和目标板初始化程序;
  (4) 根据我们实例要求,结合原理图,编写实现预期功能的代**,即通常的执行代**,代**文件保存为“main.c”。
  通常,为了节省开发者的时间,通常把这些文件保存在一个文件夹里,暂且把文件夹命名为“
LPC2124模块”,这样在以后的程序代**编写时就可以直接调用这个模块,再根据不同的要求改写“main.c”就行了,而不必要又重新编写这些程序,节省了大量时间,大大提高了工作效率。
  这里主要说明“main.c”的编写,要实现的功能是用
LPC2124控制器、LP297、L298组成的步进电机控制 器,控制步进电机的运转,原理图中可以看到各元器件引脚的连接,图中还设置了七个电压探针,用数字图表显示各电压节点的电平随时间变化的曲线。KEY键控制电机的正反转(KEY键按下则电机反转)。程序流程图如图3所示。根据程序流程图编写好执行代**文件“main.c”。



  图3 程序流程图



  图4 ADS编译环境窗口
  2.3 仿真
  文中采用ADS集成开发环境进行程序的编译连接设置,ADS集成开发环境是ARM公司推出的ARM核微控制器集成开发工具,英文全称为ARM Developer Suite,成熟版本为ADS1.2。ADS1.2支持ARM10以前的所有ARM系列微控制器,支持软件调试,支持汇编、C和C++源程序,具有编译效率高、系统库功能强等特点。
  打开ADS1.2集成开发环境CodeWarrior IDE,点击Project→New Project建立一个新的工程lcd.mcp,把以上编好的代**文件全部添加进工程,如图4所示。进行相关设置后,选择Project→Make命令,编译并连接工程,生成stepper.hex文件。
  在原理图中右击微控制器
LPC2124,再单击,出现一属**设置窗口Edit Component,如图5。在其中的Program File中添加上面生成的stepper.hex文件的路径,单击OK完成设置。
  点击原理图左下角
  中的运行按钮
  ,即开始仿真运行。仿真结果如图6所示。数字图表显示各电压节点的电平值随时间变化的曲线,步进电机按要求运行,按下KEY键电机反转。仿真结果完全符合设计要求。



  图5 器件编辑窗口

发表于 2010-8-13 17:13:42 | 显示全部楼层
cheap authentic nfl jerseys
Colts jerseys
Saints jerseys
   Pittsburgh Steelers jerseys
   Minnesota Vikings jerseys
  
   http://julyalex5l.terapad.com/index.cfm?fa=contentNews.newsDetails&newsID=778266&from=list
  
   http://i.mtime.com/3616566/blog/4787310/
  
   http://www.howdystudio.com/bbs/viewthread.php?tid=591&pid=22743&page=2&extra=page%3D1#pid22743
  
   http://kkitty5kd9.terapad.com/index.cfm?fa=contentNews.newsDetails&newsID=778265&from=list
  
   http://aalexlx5f7.terapad.com/index.cfm?fa=contentNews.newsDetails&newsID=778263&from=list
  
When we were a little kid in school,San Francisco 49ers jersey, teachers taught us that each molecule of water is made up of two hydrogen atoms , one oxygen atom, We just heard it , memorize it,JASON WITTEN throwback jersey, We also knew that it is great fun to fill up our squirt guns with water,nfl throwback jerseys, at least until the principal caught us, Mom put few drops of water while we were not getting up , the school, What we really didn't learn,2010 super bowl jerseys, however,dwight freeney jersey, was how much water we needed in order to be healthy human beings,
Now we know the importance of water, when we see the people getting ill because of polluted water, we underst, the need of pure water, there is a need , a natural mineral water that can energize our body,retro nba jerseys, When we go outside we see so many br,s of mineral water bottle, but we always wonder that which is the best mineral water,Derrick Johnson jersey,
Lots of companies , there which claims that they provide clean ,GLENN DORSEY jersey, healthy mineral water bottles, but all seems to be fake, in such a scenario one company st,s apart which doesn’t claim anything but there quality speaks everything, if we t,authentic nfl jerseys,ke the feedback of users we come to a conclusion that Aqua Pacific Natural Mineral Water,Rick Owens jersey, which could quite possibly be the purest,Santonio Holmes jersey, , cleanest mineral water , will ever drink , we , proud to say that from when the water naturally leaves it’s source, until the first time , open the bottle,Sam Bradford jersey, it remains untouched  human h,s, with only nature having intervened,
Aqua Pacific Natural Mineral Water provides purest mineral water in all terms, The water has been collected from the Fiji isl,s a long way from any environmental pollution, For many centuries the tropical rain water has been filtered through layers of mineral rich volcanic rocks ,Mark Sanchez jersey, 6f17f086ae97a7ab559e83c33c31199s, through to a vast underground aquifer, During this process the water becomes enriched with health stabilizing mineral properties, which give it a very special smooth, soft , refreshing taste,
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|cpubbs论坛. ( 粤ICP备09171248号 )

GMT+8, 2025-4-2 04:30 , Processed in 0.415034 second(s), 8 queries , Gzip On, File On.

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表