用PROTEUS对单片机进行仿真的方法与实例
在proteus中仿真MSP430单片机的设置方法
要使用PROTEUS仿真MSP430单片机,首先要用IAR生成hex文件
在有些场合需要生成.hex文件,因此,这单介绍在IAR中如何生成.hex文件。
生成方法:
在Options窗口的日录Category中选择第六项Linker。
在Output选项中,选中Format复选框的Other,然后在Output下拉菜单中选择msd-i,如图5.1所示。
注意:在选择了Format复选框的Other后,在C-SPY调试器下的。
Debug information for C-SPY的调试信息不可用,在这里只生成了.hex的输出文件。
在Output下选择msd-i还会生成第二输出文件.sym文件,如果需要生成其它输出文件,则可以选择Output下的其它选项。
其选项内容的解释可以参见“C:\ Program Files\IAR Systems\Embedded Workbench 4.0Kickstart\common\doc”下的xlink.ENU.pdf文档。
生成结果
生成的.hex文件在工程的Debug\Exe下,如图5.2所示
这样加载到PROTEUS里就可以了。
基于Protues软件的单片机软硬件仿真实验
・
9 ・ 6
最后 单击 仿 真 工具 栏 中全 速运 行 按 钮便 可 进 行 虚拟 仿 真 ( 图 1 ) 见 0 。可 以看 到 L D灯 按 程序 的 E 要 求循 环 闪亮 ,可 以随时 修改 程序 观察 L D灯显 示 的变化 。 E
图 1 全 速仿 真 0
3 结 束 语
T ANG Xi o h i a - u ,W E i g p n IP n — i g
( co l f te t sa dC mp tr ce c , uzo om l o ee G iag G i o 5 0 1 , hn ) S h o o h ma c n o ue in e G i uN r a l g , uyn , uz u 5 0 8 C ia Ma i S h C l h
21 0 2年 第 8期 第 3 O卷 ( 第 15期 ) 总 4
毕 节 学 院 学
报
J OURN lE UNI AL OFBi VER I l STY
NO. 2 1 8, 0 2 Vo . 0 1 3 Ge e a .4 n r lNo 1 5
基于 P oue r t s软件 的单片机软硬件仿真 实验
基于proteus的51单片机仿真实例六十
基于proteus的51单片机仿真实例六十基于proteus的51单片机仿真实例五十九、1位数码管显示实例1、数码管实际上是由7个发光二极管组成一个8字形,另外一个发光二极管做成圆点型,这样就构成了一个数码管。
所有的8个二级管的负极或者负极都插进一个公共端点上,对于公共端的连在负极的数码管,称作共阳极数码管,反之称作共阴极数码管。
根据数码管的内部结构原理,可以很清楚的知道数码管显示数字的原理。
2、由于单片机的io口的驱动能力非常有限,而数码管照亮时须要很大的电流,所以在用单片机形成数码管表明系统时,须要减少驱动电路,最简单的驱动电路就是利用三极管的电流放大能力来输出较大的电流,3、使数码管表明数字的步骤为:1)使数码管的公共端连到电源(共阳极)或者地(共阴极)上。
2)向数码管的各个段输入相同的电平。
本例使用单个数码管循环显示0-9这10个数字。
4、在keilc51中新建工程ex47,撰写如下程序代码,编程并分解成ex47.hex文件#include//包含头文件//延时函数,延时约200msvoiddelay(void){unsignedchari,j;for(i=0;i<255;i++){for(j=0;j<255;j++);}}//主函数voidmain(void){unsignedchari;unsignedcharcodetab[10]={0xc0,0xf9,0xa4,0xb0,0x99,0x82,0xf8,0x80,0x90};//定义数字0-9的段码表p2=0xfe;//p2.0输出低电平,数码管电源导通while(1){for(i=0;i<10;i++)//循环10次。
数码管循环表明数字0-9{p0=tab[i];//p0口输入数字0-9对应的段码delay();//延时}}}5、在proteus中新建仿真文件ex47.dsn,电路原理图如下所示:须要表明的就是在proteus中,搜寻排阻(不拎公共端的)和数码管的方法。
基于proteus的51单片机仿真实例九、51单片机的最小工作系统
基于proteus的51单片机仿真实例九、51单片机的最小工作系统1、前面我们已经利用proteus和keil c51建立了第一个仿真实例,并通过仿真运行验证了我们的实例的正确性。
现在我们已经了解了proteus和keil c51的基本操作。
2、但是毕竟是初学单片机,对于我们前面编写的程序所实现的功能可就是一头雾水,不知所云了。
那么接下来我们就了解一下51单片机的知识吧3、先来简单说说怎么学习单片机。
前面已经说过,单片机是一种软件和硬件紧密结合的技术,对于一个单片机应用系统来说,硬件电路是单片机系统运行的基础和保障,软件程序是单片机系统的灵魂。
相对于人来说,人的身体、四肢是一个硬件系统,大脑就是软件系统,只有通过大脑发出指令,身体的各个部分才会做出相应的动作,但是如果手被绑住了,大脑即使发出让手去拿一个杯子的指令,手也无法完成这个指令。
所以软件和硬件需要相互结合才能够去完成一项任务。
1)就像我们新买了一台电视机一样,买回来后我们会首先了解一下这个电视机的功能特点,看一下遥控器的说明书,给电视机加上电源和天线(或有线电视信号线),然后按照说明书的使用方法来一步一步熟悉和操作电视机。
单片机的学习也一样,我们接触到一种单片机后,首先要了解这种单片机的功能和性能特点,然后才能进行相应的开发设计。
怎么来了解一种单片机呢?单片机厂家提供的数据手册是第一手也是最准确的资料。
但是很多数据手册是英文的,对于我们很多人来说,看起来会比较吃力。
不过幸运的是,现在很多资料都已经被翻译过来了。
我们到网上搜索一下,会搜索到很多的中文数据手册和应用实例,所以网络现在已经成为我们学习的一个非常重要的工具和平台了。
2)单片机的结构是十分复杂的,我们打开一个单片机的数据手册,会发现前面里面到处充斥着结构图和理论知识的介绍,相信对于一个新手来说,看数据手册不到10分钟就想放弃。
但是很多人说,这些是最基础的,必须要理解和掌握。
确实,这些东西我们必须精通,但是是不是一开始就要完全精通这些呢?大可不必。
实验一:单片机仿真初步(二)-Proteus的使用
实验一:单片机仿真初步(二)-Proteus的使用用来仿真的单片机电路,如下图所示:电路的核心是单片机A T89C52,晶振X1和电容C1、C2构成单片机时钟电路,单片机的P1口接8个发光二极管,二极管的阳极通过限流电阻接到电源的正极。
特别注意:下面文中所有值为1K的电阻都修正成100 可以考虑把红色发光二极管换成黄色发光二极管一、新建一个设计。
单击“File”中“New Design……”,在Proteus中打开了一个空白的新电路图纸。
二、将需要用到的元器件加载到对象选择器窗口。
单击对象选择器按钮如图所示:弹出“Pick Devices”对话框,在“Category”下面找到“Mircoprocessor ICs”选项,鼠标左键点击一下,在对话框的右侧,我们会发现这里有大量常见的各种型号的单片机。
找到AT89C52,双击“AT89C52”。
这样在左侧的对象选择器就有了A T89C52这个元件了。
如果知道元件的名称或者型号我们可以在“Keywords”输入AT89C52,系统在对象库中进行搜索查找,并将搜索结果显示在“Results”中,如下图所示:在“Results”的列表中,双击“A T89C52”即可将AT89C52加载到对象选择器窗口内。
晶振CRY:无极性电容CAP:有极性电容CAP POL:红色发光二极管LED-RED:电阻RES经过前面的操作我们已经将A T98C52、晶振等元件加载到了对象选择器窗口内。
在对象选择器窗口内鼠标左键点击“AT89C52”会发现在预览窗口看到AT89C52的实物图,且绘图工具栏中的元器件按钮处于选中状态。
我们在点击“CRYSTAL”、“LED-RED”也能看到对应的实物图,按钮也处于选中状态,如图所示:三、将元器件放置到图形编辑窗口。
在对象选择器窗口内,选中A T89C52,如果元器件的方向不符合要求可使用预览对象方向控制按钮进行操作。
如用按钮对元器件进行顺时针旋转,用按钮对元器件进行逆时针旋转,用按钮对元器件进行左右反转,用按钮对元器件进行上下反转。
单片机c语言程序设计实例100例--基于805i+proteus仿真
以下是一个基于8051单片机和Proteus仿真环境的C语言程序设计实例:实例1:点亮LED灯
在这个例子中,我们将使用C语言编写一个简单的程序来控制8051单片机的一个I/O引脚,使其驱动一个LED灯。
c代码:
要使用Proteus进行仿真,你需要按照以下步骤操作:
1. 打开Proteus软件,创建一个新的设计工程。
2. 在元件库中搜索并添加相应的8051单片机型号(如AT89C51)和LED 元件到工作区。
3. 根据实际硬件连接,正确配置单片机的引脚和LED的连接。
4. 右键单击单片机元件,选择“Edit Component”打开编辑窗口。
5. 在“Program File(s)”区域,点击右侧的浏览按钮,选择你的C语言源文件(如上述的main.c)。
6. 点击“OK”关闭编辑窗口,然后点击工具栏上的“Play”按钮开始仿真。
在仿真过程中,你应该能看到LED灯被点亮,这表明你的C语言程序已经在Proteus环境中成功运行。
以上只是一个基础的例子,实际的"单片机C语言程序设计实例100例--基于8051+Proteus仿真"会包含更复杂和多样化的应用场景,包括定时器/计数器
应用、中断处理、串口通信、ADC/DAC转换、液晶显示等等。
每个实例都会详细介绍程序设计思路、代码实现以及如何在Proteus中进行仿真调试。
通过这些实例的学习和实践,你可以逐步掌握8051单片机的C语言编程技巧和Proteus仿真环境的使用方法。
基于Proteus的Arduino单片机仿真设计实践
• 19•研究了在Proteus 8.5电路仿真平台上进行Arduino单片机仿真设计的四种方法,并通过具体实例介绍了仿真中需要注意的问题。
其中两种方法是在Proteus中设计好仿真电路后,加载运行已有的HEX程序文件。
另外两种方法是在Proteus的同一个工程中实现电路的仿真设计和控制程序编写。
仿真电路中采用的Arduino单片机模型分原理图模块和仿真元件两种。
控制程序编写有C语言和可视化两种方式。
Proteus8.5具有仿真多款Arduino 单片机的功能,其中包括了Arduino Nano 3.x 、Arduino Nano 2.x 、Arduino Mega 2560、Arduino 328、Arduino 168以及Arduino UNO 等。
如果我们手头有一款Arduino UNO R3开发板用于学习单片机控制系统开发,那么结合Proteus 的Arduino 单片机仿真技术,可以帮助我们更快、更好地掌握Arduino 单片机开发技术。
下面以Arduino 328或Arduino UNO 为例介绍在Proteus 8.5中进行Arduino 单片机仿真设计的方法,并结合具体仿真实例介绍仿真中需要注意的问题(伍冯洁,Proteus 与Arduino 的整合在单片机系统开发中的应用:电子世界,2013)。
1 在Proteus8.5中进行Arduino单片机仿真设计的方法1.1 基于开发板或者固件创建项目如果想要直接在Proteus8.5中采用C 语言编写控制程序,并进行程序的编译和仿真运行,可以基于开发板或者固件创建仿真设计项目。
基于开发板创建仿真项目的方法是:选择File 菜单或者快捷工具栏中的New Project 命令,在New Project Wizard 窗口中选择From Development Board 选项,然后在出现的Development Board 列表中选择Arduino 328,设置好项目文件名称和保存路径后点击Finish 按钮,就创建了一个基于Arduino 328开发板的仿真设计项目。
Proteus单片机仿真实验内容
实验1 PROTUES环境及LED闪烁实验1.实验任务做一个闪烁灯:在P1.0端口上接一个发光二极管D1,使D1在不停地一亮一灭,一亮一灭的时间间隔为0.2秒,重复循环。
2.电路原理图3.程序设计内容(1)延时程序的设计方法作为单片机的指令的执行的时间是很短,数量大多是微秒级。
实验要求的闪烁时间间隔为0.2秒,所以在执行某一指令时,需要插入延时程序,来达到实验的要求。
延时子程序如下:DELAY: MOV R5, #20D1: MOV R6, #20D2: MOV R7, #248DJNZ R7, $DJNZ R6, D2DJNZ R5, D1RET(2)输出控制如上图所示,当P1.0端口输出高电平,即P1.0=1时,根据发光二极管的单向导电性可知,这时发光二极管L1熄灭;当P1.0端口输出低电平,即P1.0=0时,发光二极管L1亮;我们可以使用SETB P1.0指令使P1.0端口输出高电平,使用CLR P1.0指令使P1.0端口输出低电平。
实验2 外部中断实验1.实验任务设计一个交通灯正常工作程序,并在有意外情况发生的情况下,能自动中断进入到中断服务程序运行,进行紧急事故处理,处理完成后能回到正常工作程序继续运行。
如原理图所示,P1接一位数码管用于显示时间,P2端口接东西方向和南北方向红绿灯,P3.2接一个按钮用于模拟一个外部中断源,当正常工作时,东西方向绿灯亮8秒,然后南北方向绿灯亮9秒;当模拟中断源发出中断信号时,东西和南北红灯亮5秒后返回正常工作程序。
(注:这里数码管选用了共阳极的数码管)数码管的段选码如下表所示:2.电路原理图3.程序设计内容(1)从proteus库中选取元器件:单片机AT89C51、磁片电容CAP、电解电容CAP-ELEC,晶振CRYSTAL、电阻RES、数码管7SEG-COM-CAT-GRN,按钮BUTTON,发光二极管等。
(2)设计延时程序。
实验3 T0波形发生器实验1.实验任务(1)首先用AT89C51单片机定时器/计数器0的定时功能构成一方波发生器,实现周期为400us的方波输出,如图所示,P3.5,p3.7是两个波形输出端,分别输出反相波形,两路波形输入虚拟示波器的A通道和B通道,用示波器观察方波的周期是否是400us。
用Proteus软件进行51系列单片机仿真的制作和演示教程
用Proteus软件进行51系列单片机仿真的制作和演示过程教程一、ISIS界面简介假如读者的电脑上已成功安装了Proteus,则可以从电脑桌面的“开始”-“程序”-Proteus 6 Professional-ISIS 6 Professional,启动ISIS。
ISIS是仿真模拟设计SCH设计程序。
ISIS成功启动后的界面如图1所示,分为菜单栏、工具栏,工具箱、编辑窗口(显示正在编辑的电路原理图)、预览窗口(显示整个电路图的缩略图)、对象选择器,对象旋转工具和模拟调试时用的快捷调试按钮。
二、绘制仿真电路的原理图笔者以图2所示的电路为例,介绍电路原理图的绘制过程。
操作过程为,用鼠标左键点击工具箱的元器件“”按钮,使其选中,再选中ISIS对象选择器左边中间的“”按钮,出现“Pick Devices”对话框,如图3所示,在这个对话框里读者可以选择元器件和一些虚拟仪器。
在“Libraries”下面找到“MICRO”选项,找到单片机A T89C51,双击“A T89C51”,这样在左边的对象选择器就有了A T89C51这个元件了,点击一下这个元件,然后把鼠标指针移到右边的原理图编辑区的适当位置,点击鼠标的左键,就把A T89C51放到原理图区。
按照同样方法把所需的其它元器件都放到原理图编辑区。
元器件放置完后,若位置不合适,需要调整元器件的位置,可先通过鼠标右键选中对象,此时被选中的对象变成红色显示,再用鼠标左键点击被选中的对象不放并拖到合适的位置后再释放鼠标左键。
若要旋转对象,可在选中对象时按旋转按钮进行旋转。
若要编辑对象的属性,在对象被选中时,用鼠标左键点击对象,此时出现属性对话框,比如要改变电阻的属性,可右键选中电阻,再用左键点击被选中的电阻,出现如图4所示的对话框。
在这里我们可以改变电阻的标号,电阻值,PCB封装以及是否把这些东西隐藏等,修改后,点击“OK“按钮即可。
在Proteus,许多器件没有Vcc和GND引脚,其实它们被隐藏了,在使用时可以不加电源。
PROTEUS的单片机教学与应用仿真
结论
它可以帮助学生们更好地理解单片机的工作原理和编程方法,同时也可以帮 助他们提高解决实际问题的能力。因此,PROTEUS单片机教学与应用仿真的实用 性和推广价值不容忽视。
结论
展望未来,随着科技的不断发展和PROTEUS软件的进一步升级和完善,相信 PROTEUS单片机教学与应用仿真将在更多的领域得到应用,同时也会为单片机人 才的培养和发展带来更多的机遇和挑战。
五、实验结果分析
实验过程: 1、在PROTEUS中搭建电路:选用AT89C51单片机芯片,连接8个LED灯和一个 按键开关,并设置相应的输入输出端口。
五、实验结果分析
2、编写程序:使用C语言编写程序,通过循环控制P1口输出高低电平,实现 LED灯的依次点亮和熄灭。同时,程序中加入按键开关的输入判断,以便手动控 制LED灯的显示状态。
四、应用场景
2、硬件开发:在单片机应用项目开发过程中,使用PROTEUS可以进行电路设 计和仿真,减少硬件调试的难度,提高开发效率。
四、应用场景
3、软件测试:通过在PROTEUS中搭建单片机外围电路,可以测试和验证单片 机的程序功能是否正确实现。
四、应用场景
4、产品设计:在产品研发阶段,使用PROTEUS进行单片机电路设计与仿真, 可以缩短产品开发周期,提高产品的可靠性和稳定性。
教学案例
教学案例
下面以一个简单的LED闪烁实验为例,介绍PROTEUS单片机教学案例的具体实 施过程:
1、实验题目:LED闪烁实验
1、实验题目:LED闪烁实验
2、实验目的:通过单片机控制LED的亮灭,实现LED的闪烁效果 3、实验原理:利用单片机的IO口控制LED的亮灭状态,通过循环实现LED的 闪烁效果
参考内容
1基于proteus的51单片机仿真实例一、说明
基于proteus的51单片机仿真实例一、说明一、单片机系统的开发流程1、搭建硬件电路;2、编写控制程序;3、将程序“装”到单片机里面;4、运行单片机系统,并检查、调试运行结果。
二、学习单片机的基本条件以一个计算机系统为例,我们想要使用计算机,首先必须配置计算机的各种组件(CPU、主板、内存、硬盘、声卡、显卡、显示器等);各种必需的组件齐套后,要将各组件进行正确的组装(这就相当于单片机硬件电路的搭建)。
计算机组装完成后,需要安装操作系统和相关工作软件(相当于把各种程序装入到单片机中)。
这样我们才能够利用计算机来完成各种工作(相当于组成了一个完整的单片机系统)。
单片机是一门实践性很强的技术,它牵涉到软件和硬件的学习。
软件指的是单片机控制程序;硬件则是保证单片机运行的基本电路。
无论是程序设计还是电路设计,都需要经过大量的实践练习才能够准确理解和熟练掌握。
1、软件条件:单片机软件的开发流程是:1)编写控制程序;2)对程序进行编译、排错、仿真、调试;3)生成可以“装”到单片机里面的程序文件(一般是二进制或十六进制文件)。
单片机的软件开发用到以下软件:程序编写、编译软件:用来编写、编译单片机的控制程序;仿真软件:用来调试单片机程序是否完成了既定功能;程序烧录软件:将程序烧录到单片机中。
2、硬件条件:程序编写调试完成后,需要在硬件系统中运行,才能够组成一个完整的单片机系统。
一般的必备硬件有:编程器:用来将程序烧录到单片机中的工具;单片机学习板:用来演示和检验单片机系统是否实现了既定功能。
三、单片机的编程语言和软件的选择单片机的编程语言有多种,从最早的机器语言、汇编语言,到现在广被采纳的C语言,还有一些高级语言,例如C++,BASIC等也可以用来开发单片机程序。
但是目前最流行的是C 语言。
目前用得最多的51单片机开发软件是keil c51;后面的学习中,将以c语言来编写相关单片机程序,采用的开发软件是keil c51 uv3.0。
用Proteus仿真单片机的方法
用PROTEUS对单片机进行仿真的方法与实例吴汉清Proteus软件是英国Labcenter Electronics公司的一款电路设计与仿真软件,它包括ISIS、ARES等软件模块,ARES模块主要用来完成PCB 的设计; ISIS模块用来完成电路原理图的布图和仿真。
它可以进行模拟电路仿真、数字电路仿真,也可以进行单片机及其外围电路组成的系统的仿真;软件提供了各种虚拟仪器,如示波器、逻辑分析仪、信号发生器、电压表、电流表等。
和其它仿真软件相比,Proteus ISIS最大特色是对单片机系统的仿真,目前支持的单片机类型有: 68000系列、8051系列、ARM系列、AVR系列、PIC系列、Z80系列、HC11系列等。
本文主要介绍Proteus软件在单片机方面的仿真功能,即ISIS模块的用法。
在单片机学习开发的过程中,程序的调试是一个很重要的环节,要安装电路进行实验,而且电路在调试过程中往往要进行调整和改变,这不紧增加了费用和难度,而且也影响了学习和开发的进度,这也成了一些初学者学习的障碍。
如果使用Proteus 软件就可以大大节省时间和开发费用,可以在软件仿真通过后再制作印刷电路板进行电路实验。
一、Proteus ISIS软件的工作环境和一些基本使用方法下面通过一个流水灯的实例来说明Proteus的基本使用方法,使用的软件版本是Proteus.Professional 7.1 SP2。
流水灯使用AT89C51单片机,用P2口作输出口。
先在Keil uVision编译器中输入下列程序:#include <reg51.h>void Delay1ms(unsigned int count)//延时子程序{unsigned int i,j;for(i=0;i<count;i++)for(j=0;j<120;j++);}main() //主程序{unsigned char LEDIndex = 0;bit LEDDirection = 1;while(1){if(LEDDirection)P2 = ~(0x01<<LEDIndex);elseP2 = ~(0x80>>LEDIndex);if(LEDIndex==7)LEDDirection = !LEDDirection;LEDIndex = (LEDIndex+1)%8;Delay1ms(200);}}将上述程序编译生成目标文件LED.hex。
基于proteus的51单片机仿真实例八十三-PROTEUS技术交流区-PROTE...
基于proteus的51单片机仿真实例八十三-PROTEUS技术交流区-PROTE...proteus, 单片机, 实例, 仿真1、SPI总线器件与单片机的连接需要3跟线:时钟线SCK,数据线MOSI(主机发送,从机接收)和MISO(主机接收,从机发送)。
X5045是一种集合了看门狗、电压监控和串行EEPROM三种功能于一身的器件。
上电复位功能:在系统上电时产生一个足够长时间的复位信号,以确保单片机正常工作前,系统电路已处于稳定状态。
看门狗功能:如果在规定的时间内单片机没有在CS引脚产生规定的电平变化(喂狗信号),芯片内的看门狗电路将产生复位信号。
利用该功能,可让单片机死机后自动复位并开始工作。
电压检测:当电源电压下降到一定的值后,虽然单片机仍能工作,但可能已经不能稳定工作了,此时X5045将产生复位信号,直到电压恢复正常后,才能正常工作。
串行EEPROM:X5045自带512字节的数据存储空间,数据可掉电保存。
2、x5045的引脚及功能CS/WDI:片选输入端。
低电平时选中该芯片SO:串行数据输出端,数据在sck的下降沿输出WP:写保护端,该脚接地,写操作被禁止,接高电平,所有功能正常VSS:电源地SI:串行数据输入端,数据在sck的上升沿写入(高位在前)SCK:串行时钟端,RESET:复位输出端,用于电源监测和看门狗超时输出VCC:电源3、使用方法1)上电复位:当器件通电并超过规定值时,X5045内部的复位电路将会产生一个约200ms的复位脉冲,使单片机正常复位。
2)电压检测:工作过程中,X5045能不断检测VCC端的电压,在电压下降到一定值后,将产生一个复位脉冲,使单片机停止工作,这个复位脉冲一直有效,直到VCC下降到1V以下,整个系统停止工作。
如果VCC在下降后又升高,则当超过规定值后200ms,复位信号消失,单片机可以继续工作。
3)看门狗定时器:看门狗定时器电路通过检测WDI端的输入来判断单片机工作是否正常,在规定的时间内,单片机必须在WDI端口产生一个由高到低的电平变化。
在proteus中仿真MSP430单片机的设置方法
在proteus中仿真MSP430单片机的设置方法
将MSP430单片机仿真库文件分别复制到proteus7.1安装目录相应地方,即可仿真MSP430单片机了。
1、选择芯片型号
如图1所示选择MSP430F2274,。
图1选择芯片型号
2、改变Linker设置
单击Linker/Output,选中Override default,更改t1.d43为t1.hex,即更改文件后缀为可执行文件hex。
选中Format中的Other,更改Output为intel-extended。
其它不变,如图2所示。
设置完成后,重新编译make生成t1.hex文件,路径为d:\mywork430\t1\debug\exe\t1.hex。
图2 Linker设置
3、打开proteus选择msp430芯片
图3 选择MSP430F2272芯片
4、装载可执行文件t1.hex
双击msp430f2272芯片图标,在edit compnent/program file装载可执行文件
d:\mywork430\t1\debug\exe\t1.hex
图4装载可执行文件t1.hex
5、仿真运行
在proteus中点击仿真运行,可观察到P1.0引脚电位变化,红色为高电位,蓝色为低电位。
接上发光二极管,可看见发光二极管的闪烁,如图5所示。
图5 仿真运行。
单片机Proteus仿真
(3) 单击工具箱中 元件终端 图标,将元件终端放置在合 适位置,然后布线。
(4) 单击对象选择器中的 POWER 和GROUND,将元件 电源和地放置在合适位置,然后布线。
(5)左键双击各元件,设置相应元件的参数,完成电路 图的设计。
第二部分 Keil软件编程
操作步骤:1、双击桌面上的UV2快捷图 件。
单片机: AT89C51 电容: CAP 30µF 晶振: CRYSTAL 12MHZ 按钮: Button 发光二极管: LED-BIBY/BIGY 电阻: RES 排阻:Respack-8 电解电容: CAP-ELEC
例如:输入RES,点Resistors,挑选适合的电阻,将元件 放置到原理图编辑窗口的合适位置。
3、对于软件仿真,在目标’ 目标1’属性 页面 下点“Debug”(调试),再选“S 使用软件仿真 器”,同时选中“加载代码到仿真器”和“运行到 main0”,然后点击“确定”。
6、程序的编译和链接
依次点击屏幕上方左下角的编译和建造目标图标 对文件进行编译和链接,观察左下角的调试
程序信息显示,如有错可根据该栏提示的信息进行修 改,修改后要重新保存和编译,直到无错误提示。
(二)主工具栏
(三)预览窗口 1、在对象选择器单击某个元件或在工具箱中单击元件按钮、 终端按钮、子电路按钮、虚拟仪器按钮时,预览窗口会出现 对象的图形。 2、将鼠标落在此窗口内,可以改变原理图的可视范围。 (四)器件选择按钮
P: 对象选择 按钮,单击P按钮,会弹出器件选择窗口,在 Kerywords 栏中输入器件名,可在器件库中选择元件。
L:库管理 按键。
(五)工具箱 ISIS中提供了许多图标工具按钮,如图:
元件按钮
电压探针
Proteus仿真单片机实验
目录引言 (2)实验1 PROTUES环境及LED闪烁综合实验 (7)实验2 多路开关状态指示 (10)实验3 报警产生器 (13)实验4 I/O并行口直接驱动LED显示 (16)实验5 按键识别方法之一 (19)实验6 一键多功能按键识别技术 (22)实验7 定时计数器T0作定时应用技术 (25)实验8定时计数器T0作定时应用技术 (28)实验9 “嘀、嘀、......”报警声 (32)实验10 8X8 LED点阵显示技术 (36)实验11电子琴 (40)引言单片机体积小,重量轻,具有很强的灵活性而且价格便宜,具有逻辑判断,定时计数等多种功能,广泛应用于仪器仪表,家用电器,医用设备的智能化管理和过程控制等领域。
以单片机为核心的嵌入式系统已经成为目前电子设计最活跃的领域之一。
在嵌入式系统的中,开发板成本高,特别是对于大量的初学者而言,还可能由于设计的错误导致开发板损坏。
利用Proteus我们可以很好地解决这个问题,由此我们可以快速地建立一个单片机仿真系统。
1. Proteus介绍Proteus是英国Labcenter Electronics公司开发的一款电路仿真软件,软件由两部分组成:一部分是智能原理图输入系统ISIS(Intelligent Schematic Input System)和虚拟系统模型VSM(Virtual Model System);另一部分是高级布线及编辑软件ARES (Advanced Routing and Editing Software)也就是PCB。
1.1 Proteus VSM的仿真Proteus可以仿真模拟电路及数字电路,也可以仿真模拟数字混合电路。
Proteus可提供30多种元件库,超过8000种模拟、数字元器件。
可以按照设计的要求选择不同生产厂家的元器件。
此外,对于元器件库中没有的元件,设计者也可以通过软件自己创建。
除拥有丰富的元器件外,Proteus还提供了各种虚拟仪器,如常用的电流表,电压表,示波器,计数/定时/频率计,SPI调试器等虚拟终端。
使用软件Proteus仿真51单片机的基本方法
使用软件Proteus仿真51单片机的基本方法初学者学习单片机的一个比较好的方法是进行实践。
可以采用单片机芯片,也可以采用软件仿真。
Proteus是比较常用的仿真软件,下面介绍如何使用Proteus 软件仿真51系列单片机。
添加最主要的仿真元件——单片机。
点击左侧工具栏中的Component Mode(元件模式)按钮,再单击Pick form Libraries(从库中选择)按钮,如下图红框所示位置。
该按钮仅显示一个字母“P”。
会弹出如下图所示对话框,在Keywords文本框(下图红框区域)输入“89C”,就可以在右侧看见大量的单片机型号。
Proteus7.8中可以仿真89C51/89C52以及89C55等多种型号的单片机。
可以根据自己仿真的单片机型号进行选择。
对于初学者,选择89C51就可以。
点击89C51后,点击上图中的OK按钮。
此时鼠标会变成一支笔的形状,在绘图区域的蓝色框内直接点击鼠标左键,鼠标会变为一个单片机的预览,此时将鼠标移动到合适的位置点击鼠标左键,就可以将单片机放置在该位置。
至此我们就已经将AT89C51单片机放置到仿真软件中了。
搭建单片机最小系统读者注意,单片机最小系统可以说是单片机可以正常运行所需要最少的元件组成的系统。
在仿真软件Proteus中,即使没有搭建单片机最小系统,单片机也可以正常仿真运行。
为了让仿真图更加规范合理,建议大家把单片机最小系统搭建出来。
添加电容、电阻以及晶振等电子元件方法类似于单片机,这里不再赘述。
绘制电路图如下图所示。
其中X1为晶振,关键词为“crystal”;C1和C2为瓷片电容,关键词为“cap”,C3为有极性电容,一般为电解质电容,关键词为“cap-elec”;R1为电阻,关键词为“res”。
在上图所示的单片机最小系统中,搭建的自动复位电路需要连接VCC以及GND。
点击左侧工具栏中Terminal Mode按钮,选择按钮右侧的POWER或GND就可以添加了,如下图所示,添加方法与添加元件方法类似。
基于proteus的51单片机仿真实例四、第一个proteus仿真实例
基于proteus的51单片机仿真实例四、第一个proteus仿真实例现在来做第一个基于proteus的仿真实例,同时也了解、熟练一下proteus的使用方法1、打开proteus的智能原理图输入系统ISIS,进入工作环境,2、这个实例中,我们建立如下的电路图。
下面就开始一步一步的实现这个目标吧。
3、单击菜单栏“文件”--“新建设计”选项,弹出模板选择窗口,如下图所示,选择默认模板“DEFAULT”,选择“OK”按钮,即可创建一个新的设计文件。
4、文件创建成功后,要养成立即保存的习惯。
点击“保存”选项,选择保存的路径和文件名。
5、元件的选取。
操作步骤如下图6、点击“P”按钮后,弹出元器件选择对话框。
元器件的选取有两种方法:输入关键字查找、在分类元件中查找。
如下图所示7、添加单片机,在关键字文本框中输入“at89c51”,然后从搜索结果中选择所需要的型号,如下图所示。
选中元件后双击该元件名,该元件就被自动添加到对象选择器。
8、添加电阻。
输入关键字“resistors 470r”,搜索结果栏中将显示所有的匹配元件。
在这里我们选择参数为470R,0.6W的电阻,双击元件名将其添加到对象选择器中。
用同样的方法添加10K电阻(0.6W)到对象选择器中。
9、添加发光二极管。
输入关键字“led-yellow”,在搜索结果栏中选择所需的发光二极管,双击将其放入对象选择器。
10、添加晶振。
输入关键字“cycrtal”,结果搜索栏内只有一种晶振类型,双击将其加入对象选择器。
11、添加电容。
添加33P电容:输入关键字“capacitors”,在搜索结果栏内列出了各种类型的电容,接着输入“33pF”。
则列出各种33pF的电容,选择耐压为50V的电容,双击将其加入对象选择器。
添加10U电容,输入关键字“capactions 10u”,选择“50V radial electrolytic”(圆柱形电解电容),双击将其添加到对象选择器。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
用PROTEUS对单片机进行仿真的方法与实例
Proteus软件是英国Labcenter Electronics公司的一款电路设计与仿真软件,它包括ISIS、ARES等软件模块,ARES模块主要用来完成PCB的设计;ISIS模块用来完成电路原理图的布图和仿真。
它可以进行模拟电路仿真、数字电路仿真,也可以进行单片机及其外围电路组成的系统的仿真;软件提供了各种虚拟仪器,如示波器、逻辑分析仪、信号发生器、电压表、电流表等。
和其它仿真软件相比,Proteus ISIS最大特色是对单片机系统的仿真,目前支持的单片机类型有:68000系列、8051系列、ARM系列、AVR系列、PIC系列、Z80系列、HC11系列等。
本文主要介绍Proteus 软件在单片机方面的仿真功能,即ISIS模块的用法。
在单片机学习开发的过程中,程序的调试是一个很重要的环节,要安装电路进行实验,而且电路在调试过程中往往要进行调整和改变,这不紧增加了费用和难度,而且也影响了学习和开发的进度,这也成了一些初学者学习的障碍。
如果使用Proteus 软件就可以大大节省时间和开发费用,可以在软件仿真通过后再制作印刷电路板进行电路实验。
一、Proteus ISIS软件的工作环境和一些基本使用方法
下面通过一个流水灯的实例来说明Proteus的基本使用方法,使用的软件版本是Proteus.Professional 7.1 SP2。
流水灯使用AT89C51单片机,用P2口作输出口。
先在Keil uVision编译器中输入下列程序:
#include <reg51.h>
void Delay1ms(unsigned int count)//延时子程序
{
unsigned int i,j;
for(i=0;i<count;i++)
for(j=0;j<120;j++);
}
main() //主程序
{
unsigned char LEDIndex = 0;
bit LEDDirection = 1;
while(1)
{
if(LEDDirection)
P2 = ~(0x01<<LEDIndex);
else
P2 = ~(0x80>>LEDIndex);
if(LEDIndex==7)
LEDDirection = !LEDDirection;
LEDIndex = (LEDIndex+1)%8;
Delay1ms(200);
}
}
将上述程序编译生成目标文件LED.hex。
然后按下列步骤进行:
1. 运行Proteus 7 Professional(ISIS 7 Professional)
出现如图1所示的界面:
这是一种标准的Windows界面,包括标题栏、主菜单、标准工具栏、绘图工具栏、状态栏、对象选择按钮、预览对象方位控制按钮、仿真进程控制按钮、预览窗口、对象选择器窗口、图形编辑窗口。
2.添加元件到对象选择器元件列表中
单击绘图工具栏中的按钮,再单击对象选择按钮P,出现挑选元件对话框,见图2。
按表1添加本例所用的元件。
表1
名称
元件
种类(Category)
子种类(Sub-category)单片机
AT89C51 Microprocessor ICs 8051 Family
按钮开关
BUTTON
Switches & Relays Switches
电容器CAP Capacitors Generic
电解电容器CAP-ELEC Capacitors Generic
电阻器RES
Resistors Generic
发光二极管LED-RED Optoelectronics LEDs
晶振CRYSTAL Miscellaneous。