PROTEUS仿真注意事项

合集下载

Proteus仿真使用说明

Proteus仿真使用说明

本教程的目的是向您展示如何使用Proteus VSM和VSM Studio IDE对微控制器进行交互式仿真。

重点将放在模拟器和IDE的实际使用上,参考手册中对每个主题都有更详细的介绍。

本教程不涉及原理图;如果您不熟悉ISIS中的绘图,那么您应该花时间阅读ISIS参考手册中的教程内容。

我们将使用预先绘制的Microchip F1评估板原理图,如下所示。

从驱动VSM Studio IDE模拟的基本知识开始,我们将研究Proteus VSM软件中可用的一些调试和测量工具。

要求要完成本教程,您需要:Proteus软件8.0或更高版本的已安装副本。

如果您没有专业的软件副本,可以从Labcenter 网站免费下载该软件的演示副本。

高科技PIC16编译器9.8或更高版本的已安装副本。

可以从Proteus软件(VSM Studio IDE)中管理此编译器的下载和安装;我们将在下面教程的项目设置部分介绍这方面的过程。

我们仍然建议您通读教程,即使您没有安装工具。

大多数材料--以及所有调试技术--都是通用的,将在您自己的设计中被证明是有用的。

项目设置我们需要做的第一件事是设置我们的Proteus8项目。

由于我们使用的是虚拟开发板形式的预先绘制的原理图,这个过程被大大简化了:在Proteus的主页中,启动new project向导并选择development board选项。

接下来,从底部的列表框中将微控制器系列更改为PIC16,最后是F1评估板(F1发行版)。

单击finish导入项目。

在项目导入之后,您应该在应用程序中看到两个选项卡,一个是带有F1发行版设计的原理图捕获模块,另一个是包含用于驱动硬件的标准微芯片源代码的VSM Studio IDE我们需要做的第一件事是编译源代码并生成一些我们可以在模拟中测试的固件。

编译器配置微芯片的源代码是用高科技的PIC16编译器编写的,所以我们需要安装这个工具来编译固件。

切换到VSM Studio选项卡,并从Config菜单启动编译器配置对话表单。

proteus的使用方法

proteus的使用方法

Proteus软件使用方法Proteus软件使用方法一2008-11-18 20:47Proteus软件是Labcenter Electronics公司的一款电路设计与仿真软件,它包括ISIS、ARES等软件模块,ARES模块主要用来完成PCB的设计,而ISIS模块用来完成电路原理图的布图与仿真。

Proteus的软件仿真基于VSM技术,它与其他软件最大的不同也是最大的优势就在于它能仿真大量的单片机芯片,比如MCS-51系列、PIC系列等等,以及单片机外围电路,比如键盘、LED、LCD等等。

通过Proteus软件的使用我们能够轻易地获得一个功能齐全、实用方便的单片机实验室。

本文中由于我们主要使用Proteus软件在单片机方面的仿真功能,所以我们重点研究ISIS模块的用法,在下面的内容中,如不特别说明,我们所说的Proteus软件特指其ISIS模块。

在进行下面的操作前,我先说明一点:我的Proteus版本是7.1,如果你使用的是6.9以前的版本,可能你发现在鼠标操作上会略有不同。

这主要表现在6.9以前的版本鼠标左右键的作用与一般软件刚好相反,而7.0以后已经完全改过。

下面我们首先来熟悉一下Proteus的界面。

Proteus是一个标准的Windows窗口程序,和大多数程序一样,没有太大区别,其启动界面如下图所示:如图中所示,区域①为菜单及工具栏,区域②为预览区,区域③为元器件浏览区,区域④为编辑窗口,区域⑤为对象拾取区,区域⑥为元器件调整工具栏,区域⑦为运行工具条。

下面我们就以建立一个和我们在Keil简介中所讲的工程项目相配套的Proteus工程为例来详细讲述Proteus的操作方法以及注意事项。

首先点击启动界面区域③中的“P”按钮(Pick Devices,拾取元器件)来打开“Pick Devices”(拾取元器件)对话框从元件库中拾取所需的元器件。

对话框如下图所示:在对话框中的“Keywords”里面输入我们要检索的元器件的关键词,比如我们要选择项目中使用的AT89C51,就可以直接输入。

超详细的PROTEUS的使用

超详细的PROTEUS的使用

超详细的PROTEUS的使用PROTEUS是一个仿真软件,可以帮助工程师在计算机上设计和测试电路。

该软件有许多强大的工具和模块,用于模拟各种电路,包括数字电路、模拟电路和微处理器控制电路。

1. 安装PROTEUS软件首先,需要从PROTEUS官方网站下载该软件,并按照提示安装。

安装过程中需要选择安装目录和添加必要的组件,如MSP430和Arduino等。

2. 创建电路图创建电路图是制作电路模拟器的第一步。

运行PROTEUS后,可以在主界面上找到“新建电路图”的选项。

在这里,您可以选择所需的元器件,如电阻器、电容器、三极管等。

拖放所需的元器件,并用线连接它们以构建您的电路。

3. 添加元器件电路图中的简单元素可直接从PROTEUS元件库中拖放。

PROTEUS包括许多预定义元件和模型以完成您的电路图,如果您需要添加不同型号的元件,则可以从其他电子制造商的网站或特定的元件库中导入。

如果找不到所需的元件,则可以使用PROTEUS的“自定义模块编辑器”创建自己的模块并将其添加到元件库中。

4. 仿真电路在PROTEUS中设计完成电路图后,可以使用仿真工具来验证输入输出和各种条件下的数据。

通过仿真,可以了解电路的工作情况,温度变化对电路的影响等等。

在仿真时,可以定义输入电压和频率,然后运行仿真以查看输出值的变化。

5. 生成PCB布局图如果您希望将设计的电路制成实际的电路板,那么就需要将电路图转换为PCB布局图。

使用PROTEUS的布局工具可以将电路图转换为PCB布局图。

布局工具可以根据用户需求自动放置元件,自动布线,生成最佳的布局设计。

在显示布局后,可以对布局进行多种调整调整以最大化利用板空间,以便在印刷电路板上实现制造。

6. 导出电路图和布局图完成电路设计和布局后,可以将电路图和布局图导出为PDF、JPG、PNG等多种文件格式。

到了制造阶段,可以使用导出的文件格式生成实际电路板,同时可以使用它们作为文档备份文件。

proteus仿真常见问题

proteus仿真常见问题
19.标题:printing problem
问题:有没有办法把Proteus软件的帮助文件分章节地打印出来?好像我们只能浏览而不能对它进行任何处理哦。
答:如果你是被授权用户的话,你不仅可以获得我们免费赠与的PDF格式文件,而且还能得到使用指南的硬拷贝文件。
20.标题:Form net list
2.标题:Pin Wiring Problem
问题:有时候在自己创建的元器件的管脚上无法实现连线
答案:应该是管脚的间距太小了。因为在ISIS中,每个元器件的管脚都要占据一块区域(就像自己的保护区一样,不容别人随意侵犯),该区域会排斥外部的走线。解决问题的方法是在走线之前先使用“2D graphics line”工具延长管脚的引线,然后再走导线,也可以在走线的同时按住 “CTRL”键,直到走线绕过狭窄的保护区。当然最根本的办法是重新编辑元器件,把其管脚间距调大一些。
1.标题:Graphics Fills
问题:使用工具“BOX”和“ARC”设计好自己所创建元器件的图形之后,在电脑屏幕上看起来非常漂亮,但是在打印输出之后发现图片没有背景颜色(即图片是黑白的)
答案:在输出原理图的时候,选择BMP格式,且需要在颜色选项中选中“DISPLAY”;问题的实质是图片的背景颜色,即使图片是黑白颜色的,黑白颜色仍然被当作是一种背景颜色处理了。所以我们在输出图片的时候,必须检查一下“颜色设置”,否则,很可能得到的是黑白的图片。
解决方法:在创建你所说的文本文件时,在最后的“END”命令行之后一定要加上至少一个回车换行符号。
4.标题:Changing sort column in BOM scripts
问题:我想修改清单列表中元器件的排列顺序,例如把电阻和二极管按照其值的大小来排列,但是实际上元器件是按其名字标号来排列的。

单片机Proteus仿真实验指导书

单片机Proteus仿真实验指导书

单片机Proteus仿真实验指导书目录1、Proteus软件使用方法 (3)2、实验一LED闪烁电路实验 (8)3、实验二数码管静态显示实验 (11)4、实验三数码管动态显示实验 (13)5、实验四外部中断实验 (15)6、实验五T0波形发生器实验 (17)7、实验六计数器实验 (19)8、实验七串口通信实验 (22)9、实验八I2C读写实验 (25)10、实验九AD转换实验 (30)Proteus软件使用方法Proteus软件是Labcenter Electronics公司的一款电路设计与仿真软件,它包括ISIS、ARES等软件模块,ARES模块主要用来完成PCB的设计,而ISIS模块用来完成电路原理图的布图与仿真。

Proteus的软件仿真基于VSM技术,它与其他软件最大的不同也是最大的优势就在于它能仿真大量的单片机芯片,比如MCS-51系列、PIC系列等等,以及单片机外围电路,比如键盘、LED、LCD等等。

通过Proteus软件的使用我们能够轻易地获得一个功能齐全、实用方便的单片机实验室。

本文中由于我们主要使用Proteus软件在单片机方面的仿真功能,所以我们重点研究ISIS模块的用法,在下面的内容中,如不特别说明,我们所说的Proteus软件特指其ISIS 模块。

在进行下面的操作前,我先说明一点:我的Proteus版本是7.1,如果你使用的是6.9以前的版本,可能你发现在鼠标操作上会略有不同。

这主要表现在6.9以前的版本鼠标左右键的作用与一般软件刚好相反,而7.0以后已经完全改过。

下面我们首先来熟悉一下Proteus的界面。

Proteus是一个标准的Windows窗口程序,和大多数程序一样,没有太大区别,其启动界面如下图所示:如图中所示,区域①为菜单及工具栏,区域②为预览区,区域③为元器件浏览区,区域④为编辑窗口,区域⑤为对象拾取区,区域⑥为元器件调整工具栏,区域⑦为运行工具条。

下面我们就以建立一个和我们在Keil简介中所讲的工程项目相配套的Proteus工程为例来详细讲述Proteus的操作方法以及注意事项。

PROTEUS仿真教程

PROTEUS仿真教程

PROTEUS仿真教程本教程将介绍如何使用PROTEUS进行电子电路仿真。

2.打开PROTEUS并创建新项目运行PROTEUS软件后,单击“New Project”按钮创建一个新项目。

选择一个适当的文件夹路径,并为新项目命名。

3.添加电路原理图4.绘制电路原理图5.设置元件参数对于一些元件,您需要设置其参数,例如电源电压、电阻值等。

单击元件并在属性框中输入所需的参数。

6.添加信号发生器为了模拟电路中的信号输入,您可以添加信号发生器。

单击工具栏上的“Virtual Instrument”按钮,并选择“Signal Generator”。

将信号发生器拖放到原理图中,并通过连接线将其连至所需元件。

7.运行仿真绘制完电路原理图后,点击PROTEUS菜单中的“Run”选项卡,然后选择“Start Simulation”来运行仿真。

PROTEUS将模拟电路运行,并生成仿真结果。

8.查看仿真结果在仿真运行完成后,可以查看电路的性能参数和波形图。

单击工具栏上的“Digital Oscilloscope”按钮,并将其拖放到原理图中。

在仿真运行期间,您可以选择不同的信号波形进行查看。

9.保存和导出仿真结果在查看和分析仿真结果后,您可以将其保存到计算机中。

单击“File”菜单中的“Save As”选项,并选择所需的文件格式。

10.布局和打印电路原理图总结:PROTEUS是一款功能强大的电子电路仿真软件,可以帮助工程师快速设计和验证电路原理图。

以上简要介绍了使用PROTEUS进行电子电路仿真的基本步骤,包括创建新项目、绘制电路原理图、设置元件参数、添加信号发生器、运行仿真、查看仿真结果、保存和导出仿真结果以及布局和打印电路原理图。

希望这个教程对您有所帮助。

Proteus仿真使用说明

Proteus仿真使用说明

本教程的目的是向您展示如何使用Proteus VSM和VSM Studio IDE对微控制器进行交互式仿真。

重点将放在模拟器和IDE的实际使用上,参考手册中对每个主题都有更详细的介绍。

本教程不涉及原理图;如果您不熟悉ISIS中的绘图,那么您应该花时间阅读ISIS参考手册中的教程内容。

我们将使用预先绘制的Microchip F1评估板原理图,如下所示。

从驱动VSM Studio IDE模拟的基本知识开始,我们将研究Proteus VSM软件中可用的一些调试和测量工具。

要求要完成本教程,您需要:Proteus软件8.0或更高版本的已安装副本。

如果您没有专业的软件副本,可以从Labcenter 网站免费下载该软件的演示副本。

高科技PIC16编译器9.8或更高版本的已安装副本。

可以从Proteus软件(VSM Studio IDE)中管理此编译器的下载和安装;我们将在下面教程的项目设置部分介绍这方面的过程。

我们仍然建议您通读教程,即使您没有安装工具。

大多数材料--以及所有调试技术--都是通用的,将在您自己的设计中被证明是有用的。

项目设置我们需要做的第一件事是设置我们的Proteus8项目。

由于我们使用的是虚拟开发板形式的预先绘制的原理图,这个过程被大大简化了:在Proteus的主页中,启动new project向导并选择development board选项。

接下来,从底部的列表框中将微控制器系列更改为PIC16,最后是F1评估板(F1发行版)。

单击finish导入项目。

在项目导入之后,您应该在应用程序中看到两个选项卡,一个是带有F1发行版设计的原理图捕获模块,另一个是包含用于驱动硬件的标准微芯片源代码的VSM Studio IDE我们需要做的第一件事是编译源代码并生成一些我们可以在模拟中测试的固件。

编译器配置微芯片的源代码是用高科技的PIC16编译器编写的,所以我们需要安装这个工具来编译固件。

切换到VSM Studio选项卡,并从Config菜单启动编译器配置对话表单。

Proteus仿真出错问题

Proteus仿真出错问题

Proteus仿真出错问题
随着win7系统的普及,有许多的电子发烧友们会遇到Proteus 仿真出错的问题,软件本身安装没什么问题,可就是在仿真的时候弹出错误,仿真不了,错误如图:
原来还以为是win7和Proteus的兼容性问题,到最后才知道是系统的用户名文件夹在作怪,只要是中文命名的用户名,在
Proteus仿真时就一定会出错,而英文命名的就不会出现这样的问题!请看下图:
所以解决的办法是把中文用户名改成英文,但是系统用户名文件时没办法重命名的,最好的方法就是新建一个英文命名的账户,在英文账户下运行Proteus,就不会出现上面的问题了,如果嫌来回切换账户麻烦的话,在建立账户时选择管理员用户,把原来的账户给删除就OK了!顺便提醒一下!删除账户时会把当前账户所有的资料给删除了,所以自己最好备份一下账户里面的资料!
其实无论是什么操作系统,用户名都不能是中文,仿真的时候都会出现出错的问题。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

}
if(TI==1)
{
TI=0;
TI_count++;
if(TI_count<TI_lenth)
SBUF=TI_Buf[TI_count];
else
{
TI_count=0;
RT_flag=0;
}
}
} 《main.c》
/**********************************/
/* 文件:《main.c》
/****************************/
/*
主函数
*/
/****************************/
void main()
{
uchar i=0;
UART_init(); //initial UART
EA=1;
for(i=0;i<20;i++) RI_Buf[i]=0; while (1) {
*/
/* 功能:
*/
/* 1.通过串口接收数据
*/
/* 4.通过串口显示采集数据
*/
/* 编译器:UV3
*/
/* 芯片:STC12LE5608AD、
*/
/**********************************/
#include "STC12C56.h"
#include "uart.h"
注意: 1. 虚拟串口【COMPIM】RXD 为外部的输入信号。仿真时:通过外部串口助手输入信号
时,可以看到对应的绿色圆圈变为红色。 2. 虚拟终端【virtual terminal】RXD 为输入信号,其接什么就显示什么。
源码如下: 《uart.c》 #include "uart.h" #include "STC12C56.h" #include "delay.h"
void UART_init( void )
{
SCON = 0x50; //串行控制寄存器:方式 1:8 位 UART,波特率可变
TMOD = TMOD|0x20;
//定时器工作模式寄存器:8 位自动重装载定时器,当溢出时
将 TH1 存放的值自动重装入 TL1.
TH1 = 0xFF;
//波特率 57600
RI_Buf[0] = SBUF; //P0 show UART data
UART_T(RI_Buf[0]);
}
}
正常变量
uchar ls_data;
uchar xdata RI_Buf[20];
void UART_Routine(void) interrupt 4
{
/////////////串口接收//////////////// if (RI)
TL1 = 0xFF;
PCON = 0x80;
TR1 = 1;
ES = 1;
RI_lenth=1;
RI_count=0;
TI_lenth=0;
TI_count=0;
}
void UART_T(uchar byte)
{ if(!RT_flag)
//为避免串口冲突
{
RT_flag=1;
SBUF=byte;
//初始化参数 //初始化参数
PROTEUS 仿真注意事项
先看两段代码 变量为数组
uchar ls_data;
uchar xdata RI_Buf[20];
void UART_Routine(void) interrupt 4
{
/////////////串口接收//////////////// if (RI)
//串口接收
{
RI = 0;
void UART_TM(uchar *byte,uchar lenth) {
uchar i; if(!RT_flag) {
for(i=0;i<lenth;i++) TI_Buf[i]=byte[i]; RT_flag=1; SBUF=TI_Buf[0];
TI_lenth=lenth; //添加代码
//串口接收
{
RI = 0;
ls_data= SBUF;
UART_T(ls_data);
}
}
第一段代码不能按期获得串口输入值。 第二段代码则能按期获得串口输入值。 其中就是变量不同,一个采用数组,一个是正常变量。 他们的差别就是数组数据存储类型为 xdata,更改之后 ok。 原因:程序是针对 STC12 系列单片机编写,仿真模型采用 AT89C51。前者内部存在 512Byte 外部存储器,后者没有。
}
}
void UART_Routine(void) interrupt 4
{
/////////////串口接收////////////////
if (RI)
//串口接收
{
RI = 0;
delay_ms(10);
//Clear receive ; //P0 show UART data
//串口发送接收数据统计 //串口接收发送数据长度变量 //串口缓存,用于串口接收发送数据
/************************************/
/*函数:void init_UART( void )
*/
/*功能:串口初始化
*/
/************************************/
if(RI_Buf[0]==0x01) {
RI_Buf[0]=0; LED=ON; UART_T(0x05); } if(RI_Buf[0]==0x02) { RI_Buf[0]=0; LED=OFF; UART_T(0x06); } if(!SW1) { if(!i) {
LED=ON; i=1; } } if(!SW2) { LED=OFF; i=0; } } }
bit RT_flag; uchar RI_count;// uchar RI_lenth; uchar RI_Buf[20]; uchar TI_count; uchar TI_lenth; uchar xdata TI_Buf[20]; uchar ls_data=0;
//串口忙标志。1:忙 //串口发送接收数据统计 //串口接收发送数据长度变量
TI_lenth=1; //添加代码
}
}
/************************************************/ /* 函数:UART_TM(uchar *byte,uchar lenth ) */ /* 功能:串口发送长度为 lenth 的数组数据 byte[] */
/************************************************/
相关文档
最新文档