基于Proteus软件的4*4矩阵键盘设计与仿真
P3.1 TXD(串行输出口) P3.2 /INT0(外部中断0) P3.3 /INT1(外部中断1) P3.4 T0(记时器0外部输入) P3.5 T1(记时器1外部输入) P3.6 /WR(外部数据存储器写选通) P3.7 /RD(外部数据存储器读选通)
P3口同时为闪烁编程和编程校验接收一些控制信号。
RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。
ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。此时, ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ALE禁止,置位无效。
/PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。 /EA/VPP:当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。 XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。 XTAL2:来自反向振荡器的输出。
6
基于Proteus软件的4*4矩阵键盘设计与仿真
第二章 软件的介绍及使用
4*4矩阵键盘的仿真采用了两个软件: Keil uVision2和Proteus,现就这两个软件作进一步的介绍。
2.1 Proteus软件的介绍和使用
它运行于Windows操作系统上,可以仿真、分析(SPICE)各种模拟器件和集成电路,该软件的特点是:
①实现了单片机仿真和SPICE电路仿真相结合。具有模拟电路仿真、数字电路仿真、单片机及其外围电路组成的系统的仿真、RS232动态仿真、I2C调试器、SPI调试器、键盘和LCD系统仿真的功能;有各种虚拟仪器,如示波器、逻辑分析仪、信号发生器等。
②支持主流单片机系统的仿真。目前支持的单片机类型有:68000系列、8051系列、AVR系列、PIC12系列、PIC16系列、PIC18系列、Z80系列、HC11系列以及各种外围芯片。
③提供软件调试功能。在硬件仿真系统中具有全速、单步、设置断点等调试功能,同时可以观察各个变量、寄存器等的当前状态,因此在该软件仿真系统中,也必须具有这些功能;同时支持第三方的软件编译和调试环境,如Keil C51 uVision2等软件。
④具有强大的原理图绘制功能。总之,该软件是一款集单片机和SPICE分析于一身的仿真软件,功能极其强大。 (1)进入Proteus ISIS
双击桌面上的ISIS 6 Professional图标或者单击屏幕左下方的“开始”→“程序”→“Proteus 6 Professional” →“ISIS 6 Professional”,进入Proteus ISIS集成环境。
图2-1 Proteus启动时的屏幕
7
基于Proteus软件的4*4矩阵键盘设计与仿真
(2)工作界面
Proteus ISIS的工作界面是一种标准的Windows界面。包括:标题栏、主菜单、标准工具栏、绘图工具栏、状态栏、对象选择按钮、预览对象方位控制按钮、仿真进程控制按钮、预览窗口、对象选择器窗口、图形编辑窗口。
图2-2 Proteus ISIS的工作界面
(3)原理图仿真调试 原理图的绘制
Proteus的智能化可以在你想要画线的时候进行自动检测。当鼠标的指针靠近一个对象的连接点时,跟着鼠标的指针就会出现一个“×”号,鼠标左键点击元器件的连接点,移动鼠标就出现了粉红色的连接线变成了深绿色。如果你想让软件自动定出线路径,只需左击另一个连接点即可。这就是Proteus的线路自动路径功能(简称WAR),如果你只是在两个连接点用鼠标左击,WAR将选择一个合适的线径。WAR可通过使用工具栏里的“WAR”命令按钮来关闭或打开,也可以在菜单栏的“Tools”下找到这个图标。如果你想自己决定走线路径,只需在想要拐点处点击鼠标左键即可。 单片机电路的模拟 程序的编译
该软件有自带编译器,在ISIS添加上编写好的程序,方法如下:
? 点击菜单栏“Source”,在下拉菜单点击“Add/Remove Source Files(添加或删除
源程序)”出现一个对话框。
8
基于Proteus软件的4*4矩阵键盘设计与仿真
? 点击对话框的“NEW”按钮,在出现的对话框找到文件设计好的huayang.asm,
点击打开;在“Code Generation Tool”的下面找到“ASEM51”,然后点击“OK” 按钮,设置完毕我们就可以编译了。
? 点击菜单栏的“Source”,在下拉菜单点击“Build All”,过一会,编译结果的对话
框就会出现在我们面前。如果有错误,对话框会告诉我们是哪一行出现了问题,点击出错的提示,光标不能跳到出错地方,但是能告诉出错的行号。
模拟调试
选中单片机AT899C51,左键点击AT89C51,在出现的对话框里点击Program File按钮,找到刚才编译得到的HEX文件,然后点击“OK”按钮就可以模拟了。点击模拟调试按钮的运行按钮[] ,进人调试状态。点击按键键盘,看到发光二极管,显示相应0~f的字符
2.2 Keil uVision2软件的介绍
Keil单片机集成开发软件是目前最流行的MCS-51单片机开发软件,Keil提供了包括C编译器、宏汇编、连接器、库管理及一个功能强大的仿真调试器在内的完整开发方案,通过一个集成开发环境(uVisoin2)将这些部分组合在一起。掌握这一软件的使用对于使用51系列单片机的爱好者来说是十分必要的,使用汇编语言编程,其方便易用的集成环境、强大的软件仿真调试工具也会令你事半功倍。 Keil软件使用的基本步骤
输入源程序 → 新建工程 → 工程详细设置 → 源程序编译得到目标代码文件。 第一步: 双击Keil uVision2的桌面快捷方式,启动Keil集成开发开发软件。 第二步: 新建文本编辑窗。点击工具栏上的新建文件快捷按键,即可在项目窗口的右侧打开一个新的文本编辑窗。
第三步:输入源程序。在新的文本编辑窗中输入汇编语言程序,
9
基于Proteus软件的4*4矩阵键盘设计与仿真
图2-3: 输入源程序
第四步:保存源程序。保存文件时必须加上文件的扩展名,如果你使用汇编语言编程,那么保存时文件的扩展名为“.asm”,如果是C语言程序,文件的扩展名使用“*.C ”。注:第3步和第4步之间的顺序可以互换,即可以先输入源程序后保存,也可以先保存后输入源程序第五步:新建立Keil工程。,点击 \工程\\命令,将出现保存对话
在保存工程对话框中输入你的工程的文件名,Keil工程默认扩展名为\,输入名称后保存,将出现\选择设备\对话框,在对话框中选择CPU的型号。
第六步:选择CPU型号。为工程选择CPU型号,本新建工程选择了ATMEL公司的AT89C51单片机。
图2-4: 选择CPU型号对话框
第七步:加入源程序到工程中。在选择好CPU型号后,点击\确定\按钮返回主界面,此时可见到工程管理窗中出现“Target 1”,点击“Target 1”前面的“+”号展开下一层的“Source Group 1”文件夹,此时的新工程是空的,“Source Group 1”文件夹中什么文件都没有,必须把刚才输入的源程序加入到工程当中。右击工程管理窗中的“Source Group 1”,出现下拉菜单,点击“增加文件到组'Source Group 1'”命令,将出现添加文件对话框
10

