proteus如何添加键盘及数码管显示单元

proteus如何添加键盘及数码管显示单元,第1张

首先,在元器件库里边查找到数码管,在元器件查找浏览器(点击P即可打开)中输入*7seg*,其中‘*’为通配符,代表任何字符或者字符串;7seg为数码管在proteus中的名字的一部分,点击Enter确认即可找到如附件所示的数码管列表。

其次,要选择袭击需要的数码管双击即可添加到元件库了。

说明:名字后缀中的“CC”为共阴极,“CA”为共阳极。共阴极与共阳极的驱动方式不一样,恰巧相反!

Proteus在p0口加一个3*3矩阵键盘,首先P0口每一个引脚加一个上拉电阻,再用P0.0~P0.5这6个引脚接到3×3矩阵键盘上,见下图,横线和竖线交叉处(画红圈位置)画一个按键。

转化成自身模型,需要做的工作是要使用proteus制作好相应的图形和功能,像这种键盘不需要显示可以只使用功能类的模型进行继承,同时还要编写相应功能的dll动态库来对输入输出进行动作反应。具体可以参见以下

创建基于DLL的ProteusVSM仿真模型

作者:silingsong

一、Proteus VSM仿真模型简介

在使用Proteus仿真单片机系统的过程中,经常找不到所需的元件,这就需要自己编写。Proteus VSM的一个主要特色是使用基于DLL组件模型的可扩展性。这些模型分为两类:电气模型(Electrical Model)和绘图模型(Graphical Model)。电气模型实现元件的电气特性,按规定的时序接收数据和输出数据;绘图模型实现仿真时与用户的交互,例如LCD的显示。一个元件可以只实现电气模型,也可以都实现电气和绘图模型。

Proteus为VSM模型提供了一些C++抽象类接口,用户创建元件时需要在DLL中实现相应的抽象类。VSM模型和Proteus系统通信的原理如下图:

绘图模型接口抽象类:

ICOMPONENT――ISIS内部一个活动组件对象,为VSM模型提供在原理图上绘图和用户交互的服务。

IACTIVEMODEL――用户实现的VSM绘图模型要继承此类,并实现相应的绘图和键盘鼠标事件处理。

电气模型接口抽象类:

IINSTANCE――一个PROSPICE仿真原始模型,为VSM模型提供访问属性、模拟节点和数据引脚的服务,还允许模型通过仿真日志发出警告和错误信息。

ISPICECKT(模拟)――SPICE拥有的模拟元件,提供的服务:访问、创建和删除节点,在稀疏矩阵上分配空间,同时还允许模型在给定时刻强制仿真时刻点的发生和挂起仿真。

ISPICEMODEL(模拟)――用户实现的VSM模拟元件要继承此类,并实现相应的载入数据,在完成的时间点处理数据等。

IDSIMCKT(数字)――DSIM拥有的数字元件,提供的服务:访问数字系统的变量,创建回调函数和挂起仿真。

IDSIMMODEL(数字)――用户实现的VSM数字元件要继承此类,并实现相应的引脚状态变化的判断和回调事件的处理。

IDSIMPIN(数字)――数字组件的引脚,提供检测引脚状态和创建输出事务事件的服务。

IDBUSPIN(数字)――数字组件的数据或地址总线,提供检测总线状态和创建总线输出事务事件的服务。

IMIXEDMODEL(混合)――同时继承了ISPICEMODEL 和 IDSIMMODEL,元件既有模拟特性,又有数字特性。

为了让Proteus访问用户模型中的成员函数,必须创建用户模型的一个实例。这不能通过类的接口来实现,只能通过从DLL中导出几个C函数来实现,在用户模型中必须实现这些C函数,达到构造和析构用户模型实例的效果。

(1)构造和析构绘图模型实例:

IACTIVEMODEL*createactivemodel (CHAR *device, ILICENCESERVER *ils)

VOIDdeleteactivemodel (IACTIVEMODEL *model)

(2)构造和析构模拟电气模型实例:

ISPICEMODEL*createspicemodel (CHAR *device, ILICENCESERVER *ils)

VOIDdeletespicemodel (ISPICEMODEL *model)

(3)构造和析构数字电气模型实例:

IDSIMMODEL*createdsimmodel (CHAR *device, ILICENCESERVER *ils)

VOIDdeletedsimmodel (IDSIMMODEL *model)

(4)构造和析构混合电气模型实例:

IMIXEDMODEL*createmixedmodel (CHAR *device, ILICENCESERVER *ils)

VOID deletemixedmodel(IDSIMMODEL *model)

此片文档可以百度搜一下,如果以上看不懂就先补充一下C++的知识再 *** 作。想玩好proteus还需要了解的东西太多了。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/bake/11445658.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-16
下一篇2023-05-16

发表评论

登录后才能评论

评论列表(0条)

    保存