【2017年整理】protues自制元件

上传人:爱****1 文档编号:991770 上传时间:2017-05-24 格式:DOC 页数:23 大小:857KB
返回 下载 相关 举报
【2017年整理】protues自制元件_第1页
第1页 / 共23页
【2017年整理】protues自制元件_第2页
第2页 / 共23页
【2017年整理】protues自制元件_第3页
第3页 / 共23页
【2017年整理】protues自制元件_第4页
第4页 / 共23页
【2017年整理】protues自制元件_第5页
第5页 / 共23页
点击查看更多>>
资源描述

《【2017年整理】protues自制元件》由会员分享,可在线阅读,更多相关《【2017年整理】protues自制元件(23页珍藏版)》请在金锄头文库上搜索。

1、自制元件例一 - CSI24WC02CSI24WC02 是串行 E2PROM,兼容 400 kHz I2C 总线控制。一个元件可以只实现绘图模型或电气模型,也可以电气和绘图模型都实现。该例子我们只实现绘图模型。详细信息见帮助的 Styles :Component creation 或 Styes: Component creation 部分。管脚描述 CSI24WCXX 系列 E2PROM 提供标准的 8 脚 DIP 封装和 8 脚表面安装的 SOIC 封装。 其管脚功能描述如下: SCL 串行时钟这是一个输入管脚用于产生器件所有数据发送或接收的时钟 SDA 串行数据 /地址 这是一个双向传输

2、端用于传送地址和所有数据的发送或接收它是一个漏极开路端因此要求接一个上拉电到 Vcc 端典型值为 100KHz 是为 10K 400KHz 时为 1K 对于一般的数据传输仅在 SCL 为低期间 SDA 才允许变化在 SCL 为高期间变化留给指示 START 开始和 STOP 停止条件 A0 A1 A2 器件地址输入端 这些输入端用于多个器件级联时设置器件地址当这些脚悬空时默认值为 0 CSI24WC01 除外 WP 写保护 如果 WP 管脚连接到 Vcc 所有的内容都被写保护只能读当 WP 管脚连接到 Vss 或悬空允许器件进行正常的读/写操作绘制元件 单击 2D Graphics Box M

3、ode COMPONENT,画一个框。 单击 Device Pins Mode DEFAULT,画管脚。 右击引脚 Edit Properties,输入管脚名称,例如 A0;输入默认管脚号,例如 1,确定。 选择所设计的图形(翻红) Library Make Device,在 Device Name 中输入器件名,例如 CSI24WC02;在 Reference Prefix 中输入引用前缀(放置器件时的默认名称) ,例如 U ,其他保持不变, Next。 单击 ADD/Edit 添加封装 选择一个封装,例如 DIL08,单击 Assign Package(s),指派封装。 Next 组件属性

4、与定义,保持默认,Next。 器件数据手册和帮助文件定义,没有手册和帮助,略过,Next。 索引和库选择,单击 New,输入器件目录,例如 My Device,OK ,OK 。完成。现在就可以使用该元件了,从 Pick Devices 的目录 My Device 中也可以找到该元件。自制元件例二 7 段数码管我们也可以通过改造原有器件来创建新器件,这样我们就不必从头开始创建一个新器件。下面我们以 7 段共阳绿色数码管 7SER-COM-AN-GRN 为例创建一个新器件。这个数码管原来不带封装,我们通过改造给它加上封装,并重新命名为新器件。 在设计图纸上防置一个 7SER-COM-AN-GRN。

5、 右击该器件 Decompose,分解该器件。下面是分解后的器件。 选择所设计的图形(翻红) Library Make Device ,保持 Device Name 中的器件名;在 Reference Prefix 中输入引用前缀(放置器件时的默认名称) ,例如 D,其他保持不变,Next。 单击 ADD/Edit 添加封装1) 先在 Packabe Device 对话框中的 A 列中随意输入管脚编号,例如1、2、3(原来没有管脚编号) 。2) 单击 Add,选择一个封装,例如 7SEG.3+A。3) 依据封装重新输入管脚编号。4) 单击 Assign Package(s),指派封装。 组件属

6、性与定义,指定默认封装为 7SEG.3+A,Next。 器件数据手册和帮助文件定义,没有手册和帮助,略过,Next。 索引和库选择,单击 New,输入器件目录,例如 My Device,OK ,OK 。完成。现在就可以使用该元件了,从 Pick Devices 的目录 My Device 中也可以找到该元件。 如果以前图上有该器件,更新图中该器件的实例,OK 。 将以前器件的 PCB Package 属性改为 7SEG.3+A,并添加组件引用名,例如:D1。注意:器件必须有引用名才能在 ARES 中布局。一、Proteus VSM 仿真模型简介在使用 Proteus 仿真单片机系统的过程中,经

7、常找不到所需的元件,这就需要自己编写。Proteus VSM 的一个主要特色是使用基于 DLL 组件模型的可扩展性。这些模型分为两类:电气模型(Electrical Model)和绘图模型(Graphical Model) 。电气模型实现元件的电气特性,按规定的时序接收数据和输出数据;绘图模型实现仿真时与用户的交互,例如LCD 的显示。一个元件可以只实现电气模型,也可以都实现电气和绘图模型。Proteus 为 VSM 模型提供了一些 C+抽象类接口,用户创建元件时需要在 DLL 中实现相应的抽象类。VSM 模型和 Proteus 系统通信的原理如下图:绘图模型接口抽象类:ICOMPONENTI

8、SIS 内部一个活动组件对象,为 VSM 模型提供在原理图上绘图和用户交互的服务。IACTIVEMODEL用户实现的 VSM 绘图模型要继承此类,并实现相应的绘图和键盘鼠标事件处理。电气模型接口抽象类:IINSTANCE一个 PROSPICE 仿真原始模型,为 VSM 模型提供访问属性、模拟节点和数据引脚的服务,还允许模型通过仿真日志发出警告和错误信息。ISPICECKT(模拟)SPICE 拥有的模拟元件,提供的服务:访问、创建和删除节点,在稀疏矩阵上分配空间,同时还允许模型在给定时刻强制仿真时刻点的发生和挂起仿真。ISPICEMODEL(模拟)用户实现的 VSM 模拟元件要继承此类,并实现相

9、应的载入数据,在完成的时间点处理数据等。IDSIMCKT(数字)DSIM 拥有的数字元件,提供的服务:访问数字系统的变量,创建回调函数和挂起仿真。IDSIMMODEL(数字)用户实现的 VSM 数字元件要继承此类,并实现相应的引脚状态变化的判断和回调事件的处理。IDSIMPIN(数字) 数字组件的引脚,提供检测引脚状态和创建输出事务事件的服务。IDBUSPIN(数字)数字组件的数据或地址总线,提供检测总线状态和创建总线输出事务事件的服务。IMIXEDMODEL(混合) 同时继承了 ISPICEMODEL 和 IDSIMMODEL,元件既有模拟特性,又有数字特性。为了让 Proteus 访问用户

10、模型中的成员函数,必须创建用户模型的一个实例。这不能通过类的接口来实现,只能通过从 DLL 中导出几个 C 函数来实现,在用户模型中必须实现这些 C 函数,达到构造和析构用户模型实例的效果。(1)构造和析构绘图模型实例:IACTIVEMODEL *createactivemodel (CHAR *device, ILICENCESERVER *ils)VOID deleteactivemodel (IACTIVEMODEL *model)(2)构造和析构模拟电气模型实例:ISPICEMODEL *createspicemodel (CHAR *device, ILICENCESERVER *i

11、ls)VOID deletespicemodel (ISPICEMODEL *model)(3)构造和析构数字电气模型实例:IDSIMMODEL *createdsimmodel (CHAR *device, ILICENCESERVER *ils)VOID deletedsimmodel (IDSIMMODEL *model)(4)构造和析构混合电气模型实例:IMIXEDMODEL *createmixedmodel (CHAR *device, ILICENCESERVER *ils)VOID deletemixedmodel (IDSIMMODEL *model)二、Proteus VS

12、M 仿真模型开发流程1绘制元件图形、引脚和相关符号。2制作元件,设置元件属性。3用 C+编写元件,实现电气和绘图模型,编译生成 DLL。4搭建电路仿真测试。三、VSM 模型开发实例下面以 TG19264A 点阵式液晶显示元件的开发为实例详细讲解开发过程。1打开 Proteus,选择菜单 查看Snap 10 th,选择左边绘图工具栏的 2D graphics box,绘制如图所示的三个图形。 2选择 2D graphics line,给出两条直线,设置 width 为 36th,颜色为灰色。选择 2D graphics circle,给四个角绘制安装孔。选择 Markers for compon

13、ent origin,给三个图形分别绘图符号原点(图中红色部分) 。3选择 Device pin,顺时针旋转 90 度,放置 20 个引脚,如图所示。GND、VCC、V0、Vee、LED+的电气类型选择 PP-Power Pin, D/I、R/W、E、CS1、RET、CS2、CS3 的电气类型选择 IP-Input,D0D7 的电气类型选择 IO- Bidirectional。4右键拖出选择框选择第一个符号,选择菜单库制作符号,命名为 LCD19264A_C,确定。同理,第二和第三个分别命名为 LCD19264A_1 和 LCD19264A_0。当用户调用drawsymbol (-1),将绘制

14、 LCD19264A_C,调用 drawsymbol (1),将绘制LCD19264A_1,调用 drawsymbol (0),将绘制 LCD19264A_0。 5右键拖出选择框选择符号 LCD19264A_C,选择菜单库制作元件,Device Properties 设置如图,点击 Next。跳过封装设置,点击 Next。组件属性设置如图, 点击 Next。选择数据手册(可选) ,点击 Next。选择器件库,点击 OK。 6打开 VC,新建工程,选择 Win32 Dynamic-Link Library,给工程命名,建立空的 DLL工程。从 Proteus 安装目录的 INCLUDE 文件夹中

15、将 VSM.HPP 复制到当前工程目录,新建文件 LCD19264A.H 和 LCD19264A.CPP,编写如下代码。CODE:/* 文件:LCD19264A.H* 说明:不支持以下特性* (1) 不支持显示开关控制* (2) 不支持设置显示起始行*/i nclude vsm.hpp/LCD 常量#define LCD_BLK_NUM 3 /lcd block number#define LCD_BLK_LEN 64 /lcd block length#define LCD_LINE_NUM 8 /lcd line number#define LCD_LENGTH (LCD_BLK_LEN*LCD_BLK_NUM) /lcd length#define LCD_WIDTH 64 /lcd width#define BLANK_WIDTH 50 /the width of blank#define SYM_LINEWIDTH 28 /the width of symbol line/LCD 命令掩码#define CMD_MASK 0

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

当前位置:首页 > 行业资料 > 其它行业文档

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