欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > PPT文档下载  

    Proteus实例教程课件-第5章.ppt

    • 资源ID:1287534       资源大小:2.26MB        全文页数:112页
    • 资源格式: PPT        下载积分:20金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要20金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    Proteus实例教程课件-第5章.ppt

    Proteus实例教程,清华大学出版社,Proteus实例教程清华大学出版社,第5章 MCS-51单片机设计基础,5.1 Proteus单片机系统仿真基础 5.2 51单片机的串行接口通信5.3 51单片机的I2C通信5.4 单片机扩展多片并行RAM5.5 51单片机的脉宽编码通信5.6 串行A/D转换5.7 串行D/A转换5.8 万年历5.9 8位数四则运算计算器,第5章 MCS-51单片机设计基础5.1 Proteus,5.1 Proteus单片机系统仿真基础,Keil是德国Keil公司开发的单片机编译器,是目前最好的51单片机开发工具之一,可以用来编译C源代码和汇编源程序、连接和重定位目标文件和库文件、创建HEX文件、调试目标程序等,是一种集成化的文件管理编译环境。在Proteus中,可以直接与Keil编程软件进行联调,进而实现对所设计电路的验证。,5.1 Proteus单片机系统仿真基础Keil是德国,5.1.1 Proteus中的源程序设计与编译Proteus VSM提供了简单的文本编辑器,用它作为源程序的编辑环境。对于不同系列的单片机,VSM均提供了相应的编译器,使用时可根据单片机的型号和语言要求来选取。Proteus VSM编译器有以下几种:ASEM51(51系列单片机编译器);ASM11(Motorola单片机编译器);AVRASM(Atmel AVR系列单片机编译器);AVRASM32(Atmel AVR系列单片机编译器);MPASM(PIC单片机编译器);MPASMSWIN(PIC单片机编译器)。,5.1 Proteus单片机系统仿真基础,5.1.1 Proteus中的源程序设计与编译5.1,1. 建立源程序文件在Proteus ISIS界面中单击菜单Source(源程序),在弹出的下拉菜单中单击“Add/Remove Source Files”(添加/移除源程序)选项,弹出如图5-1所示的对话框。,5.1 Proteus单片机系统仿真基础,1. 建立源程序文件5.1 Proteus单片机系统仿真基,5.1 Proteus单片机系统仿真基础,图5-1 Add/Remove Source Code Files对话框,单击“Code Generation Tool” (目标代码生成工具)下方框中按钮 ,弹出下拉菜单,根据需要选择相应的编译器。,5.1 Proteus单片机系统仿真基础图5-1 Add,5.1 Proteus单片机系统仿真基础,图5-2 新建源程序文件对话框,在图5-1中单击“New”按钮,弹出图5-2所示的对话框,在“文件名”框中输入新建源程序文件名“mydesign”,单击“打开”按钮,弹出图5-2中所示的小对话框,,5.1 Proteus单片机系统仿真基础图5-2 新建源,5.1 Proteus单片机系统仿真基础,图5-4 菜单Source中加载的源程序文件,图5-3 源程序添加结果,5.1 Proteus单片机系统仿真基础图5-4 菜单S,2. 编写源程序代码单击菜单【Source】【mydesign.asm】,出现图5-5所示的源程序编辑窗口。编写源程序后存盘退出。,5.1 Proteus单片机系统仿真基础,图5-5 源程序编辑窗口,2. 编写源程序代码5.1 Proteus单片机系统仿真基,3. 源程序编译(1) 编译器设置。单击菜单【Source】【Define Code Generation Tools】,出现图5-6所示界面。(2) 编译源程序,生成目标代码文件。单击【Source】【Build All】。如果没有错误,便成功生成目标代码“.hex”文件。,5.1 Proteus单片机系统仿真基础,图5-6 编译器设置界面,3. 源程序编译5.1 Proteus单片机系统仿真基础图,5.1.2 Keil Vision中的源程序设计与编译在Keil集成开发环境下使用工程的方法来管理文件,而不是单一文件的模式,所有的文件包括源程序(如C程序、汇编程序)、头文件等都可以放在工程项目文件里统一管理。对于刚刚使用Keil的用户,一般可以按照下面的步骤来创建一个自己的应用程序。(1) 创建一个工程项目文件。(2) 选择目标器件(例如,选择Atmel公司的AT89C51)。(3) 为工程项目设置软硬件调试环境。(4) 创建源程序文件并输入程序代码。(5) 保存创建的源程序项目文件。(6) 把源程序文件添加到项目中。,5.1 Proteus单片机系统仿真基础,5.1.2 Keil Vision中的源程序设计与编译5,1. 建立一个项目进入集成开发环境,编辑操作界面如图5-7所示,主要包括三个窗口:工程项目窗口、编辑窗口和输出窗口。,5.1 Proteus单片机系统仿真基础,图5-7 Vision2编辑操作界面,1. 建立一个项目5.1 Proteus单片机系统仿真基础,5.1 Proteus单片机系统仿真基础,图5-8 Project界面,图5-9 Project保存设置界面,单击Project菜单,在弹出的下拉菜单中选择“New Project”选项,新建一个项目并保存,如图5-8、图5-9所示。,5.1 Proteus单片机系统仿真基础图5-8 Pro,这时会弹出一个对话框,要求选择单片机的型号。这里以Atmel的AT89C51来说明,首先选择Atmel公司,然后单击左边的“+”号选择AT89C51。,5.1 Proteus单片机系统仿真基础,图5-10 选择器件,这时会弹出一个对话框,要求选择单片机的型号。这里以Atm,完成以上步骤后,屏幕如图5-11所示。,5.1 Proteus单片机系统仿真基础,图5-11 初始化编辑界面,完成以上步骤后,屏幕如图5-11所示。5.1 Prot,5.1 Proteus单片机系统仿真基础,图5-12 选择“Options for Target”选项,首先进行选项设置,将鼠标指针指向“Target 1”并单击右键。从弹出的快捷菜单中单击“Options for Target 1”选项,如图5-12所示。,5.1 Proteus单片机系统仿真基础图5-12 选择,5.1 Proteus单片机系统仿真基础,图5-13 “Output”标签栏,弹出“Options”对话框,选择“Output”标签栏,并按图5-13所示设置其中各项。,5.1 Proteus单片机系统仿真基础图5-13 “O,2. 建立一个新的ASM汇编语言程序并编译(1)单击“File”菜单,在下拉菜单中单击“New”选项建立一个新的编辑窗口;单击“Save As”选项保存源文件。注意输入正确的扩展名。,5.1 Proteus单片机系统仿真基础,图5-14 保存源程序,2. 建立一个新的ASM汇编语言程序并编译5.1 Prot,(2)在编辑界面单击“Target 1”前面的“”号,然后在“Source Group 1”上单击右键,弹出图5-15所示的快捷菜单。,5.1 Proteus单片机系统仿真基础,图5-15 弹出右键菜单,(2)在编辑界面单击“Target 1”前面的“”号,,单击“Add Files to GroupSource Group 1”,打开如图5-16所示的对话框,双击将刚才保存的源文件添加至项目。,5.1 Proteus单片机系统仿真基础,图5-16 添加文件对话框,单击“Add Files to GroupSource,5.1 Proteus单片机系统仿真基础,图5-17 添加文件后工程栏的变化,在添加了汇编语言文件后,在“Source Group 1”文件夹前面出现了一个“+”号,单击“+”号展开,就看到刚才添加的“Text1.asm”文件了。,5.1 Proteus单片机系统仿真基础图5-17 添加,(3)在右侧的编辑区输入汇编源程序,如图5-18所示。将文件添加到项目,Keil会自动识别关键字,并以不同的颜色提示用户加以注意,这样会使用户少犯错误,提高编程效率。,5.1 Proteus单片机系统仿真基础,图5-18 程序输入状态,(3)在右侧的编辑区输入汇编源程序,如图5-,(4)单击“Project”菜单,选中“Build target”选项,或者单击工具栏的快捷图标来进行编译,如图5-19所示。,5.1 Proteus单片机系统仿真基础,图5-19 编译菜单,(4)单击“Project”菜单,选中“Build ta,5.1 Proteus单片机系统仿真基础,(5)编译如果有错误,则在最下面的输出窗口中会给出错误提示,双击错误提示,在编辑区错误指令处左面会出现蓝色箭头提示,根据提示信息对当前的错误指令进行修改,如图5-20所示 。,图5-20 错误提示,5.1 Proteus单片机系统仿真基础(5)编译如果,(6)将所有提示过的错误进行修改后,再次重复(4)的操作进行编译,直至出现“shiyan1 - 0 Error(s),0 Warning (s) ” ,说明编译完全通过,如图5-21所示。,5.1 Proteus单片机系统仿真基础,图5-21 编译通过提示,(6)将所有提示过的错误进行修改后,再次重复(4)的操作,3. 调试并仿真单击工具栏的快捷图标 进入调试界面,如图5-22所示。,5.1 Proteus单片机系统仿真基础,图5-22 调试界面,3. 调试并仿真5.1 Proteus单片机系统仿真基础图,左面的工程项目窗口给出了常用的寄存器r0r7以及a、b、sp、dptr、pc、psw等特殊功能寄存器的值。在执行程序的过程中可以看到,这些值会随着程序的执行发生相应的变化。,5.1 Proteus单片机系统仿真基础,图5-22 调试界面,左面的工程项目窗口给出了常用的寄存器r0r7以及a、b,存储器窗口的地址栏处输入c:0000h后回车,则可以观看所有单片机片内程序存储器的内容,如图5-23所示。下面用横线画出来的部分就是所编译的源程序转化成的十六进制数(即对应的机器码)。 如果在存储器窗口的地址栏处输入d:00h后回车,则可以观看所有单片机片内数据存储器的内容。,5.1 Proteus单片机系统仿真基础,图5-23 存储器窗口,存储器窗口的地址栏处输入c:0000h后回车,则可以观看,在联机调试状态下可以启动程序全速运行、单步运行、设置断点等。单击菜单“Debug /Go”选项,启动用户程序全速运行。下面介绍几种常用的调试命令及方法。(1) 复位CPU。用“Debug”菜单或工具栏的“Reset CPU”命令可以复位CPU。在不改变程序的情况下,若想使程序重新开始运行,执行此命令即可。执行此命令后程序指针返回到0000H地址单元。另外,一些内部特殊功能寄存器在复位期间也将重新赋值。例如,A将变为00H,DPTR变为0000H,SP变为07H,I/O口变为FFH。,5.1 Proteus单片机系统仿真基础,在联机调试状态下可以启动程序全速运行、单步运行、设置断点,(2) 全速运行(F5)。用“Debug”工具栏的“Go”或快捷命令“Run”按钮,即可实现全速运行程序。若程序中已设置断点,程序将执行到断点处停止,并等待调试指令。(3) 单步跟踪(F11)。用“Debug”工具栏的“Step”或快捷命令按钮“Step Into”,可以单步跟踪程序。每执行一次此命令,程序将运行一条指令(以指令为基本执行单元)。当前的指令用黄色箭头标出,每执行一步箭头都会移动,已执行过的语言呈绿色。在汇编语言调试下,可以跟踪到每一个汇编指令的执行。程序处于全速运行期间,Vision2不允许对任何资源进行查看,也不接受其它命令。,5.1 Proteus单片机系统仿真基础,(2) 全速运行(F5)。5.1 Proteus单片,(4) 单步运行(F10)。用“Debug”工具栏的“Step Over”或快捷命令按钮“Step Over”,即可实现单步运行程序,此时单步运行命令将把函数和函数调用当作一个实体来看待,因此单步运行是以语句(该语句不管是单一命令行还是函数调用)为基本执行单元。(5) 执行返回(Ctrl+F11)。在用单步跟踪命令跟踪到子函数或子程序内部时,使用“Debug”菜单栏中的“Step Out of Current Function”或快捷命令按钮“Step Out”,即可将程序的PC指针返回到调用此子程序或函数的下一条语句。,5.1 Proteus单片机系统仿真基础,(4) 单步运行(F10)。5.1 Proteus单,(6) 开始/停止调试(Ctrl+F5)。用“Debug”工具栏的“Start/Stop Debug session”或快捷命令按钮“Start/Stop Debug session”,可以开始/停止调试。如果程序使用了系统资源P1口,为了更好地观察这些资源的变化,用户可以打开它们的观察窗口,具体方法为:选择“Peripherals”“I/O-Ports”“Port1”命令。,5.1 Proteus单片机系统仿真基础,(6) 开始/停止调试(Ctrl+F5)。5.1 P,5.1.3 Proteus与单片机的交互仿真与调试,5.1 Proteus单片机系统仿真基础,1. 加载目标代码 在Proteus ISIS界面中编辑实例电路原理图,如图5-24所示。,图5-24 实例电路原理图,5.1.3 Proteus与单片机的交互仿真与调试 5.1,双击单片机AT89C51,打开其属性编辑框,在“Program File”栏中,单击打开按钮,选取目标代码文件,这里是“MYDESIGN.HEX”。在“Clock Frequency”栏中设置时钟频率为12MHz,如图5-25所示。因为仿真运行时的时钟频率以单片机属性中设置的频率值为准,所以在Proteus ISIS界面中设计电路原理图时,可以略去单片机的时钟电路和复位电路,,5.1 Proteus单片机系统仿真基础,图5-25 加载目标代码文件和时钟设置,双击单片机AT89C51,打开其属性编辑框,在“Prog,2. 单片机系统的Proteus交互仿真在Proteus仿真界面中单击 按钮,全速启动仿真。点击一次按键,LED灯亮,再点击一次,LED灯灭,如此循环交替。仿真片段如图5-26所示。,5.1 Proteus单片机系统仿真基础,图5-26 实例仿真片段,2. 单片机系统的Proteus交互仿真5.1 Prote,3. 调试菜单与调试窗口系统在全速仿真运行时不显示调试窗口,可单击按钮 暂停,然后单击Proteus ISIS界面的“Debug”菜单,弹出如图5-27所示的下拉菜单。单击不同选项可打开对应的窗口进行观察。,5.1 Proteus单片机系统仿真基础,图5-27 “Debug”下拉菜单,3. 调试菜单与调试窗口5.1 Proteus单片机系统仿,5.1 Proteus单片机系统仿真基础,图5-28 单片机寄存器窗口,(1) 单片机寄存器窗口。 通过菜单【Debug】【8051 CPU Registers-U1】打开单片机寄存器窗口,如图5-28所示。里面有常用的SFR,如SP、PC、PSW、R0R7、ACC及将要执行的指令等。在本窗口内右击,可以设置窗口的字体和颜色。,5.1 Proteus单片机系统仿真基础图5-28 单片,5.1 Proteus单片机系统仿真基础,(2) 单片机SFR窗口。 通过菜单【Debug】【8051 CPU SFR Memory-U1】打开单片机的SFR窗口,如图5-29所示。,图5-29 单片机SFR窗口,5.1 Proteus单片机系统仿真基础 (,5.1 Proteus单片机系统仿真基础,图5-30 单片机IDATA窗口,(3) 单片机IDATA窗口。 通过菜单【Debug】【8051 CPU Internal (IDATA) Memory-U1】打开单片机的IDATA窗口,如图5-30所示。 对于单片机的SFR寄存器,既可以从单片机的寄存器窗口中查看,也可以在SFR寄存器窗口中查看。,5.1 Proteus单片机系统仿真基础图5-30 单片,5.1 Proteus单片机系统仿真基础,在SFR、IDATA窗口中右击,可弹出该窗口的设置菜单,如图5-31所示。可使用“Goto”命令快速运动到指定的显示单元,还可复制数据或改变显示方式等。,图5-31 单片机IDATA窗口的快捷菜单,5.1 Proteus单片机系统仿真基础 在,4 观察窗口通过以上方法可以观察单片机各个存储器的内容,但因显示内容比较分散,观察起来不方便。对此,Proteus又同时提供了一个观察窗口“Watch Window”,它可以将所关心的各个寄存器的内容集中于一个窗口中,观察起来十分方便,克服了上述缺点。,5.1 Proteus单片机系统仿真基础,4 观察窗口5.1 Proteus单片机系统仿真基础,(1)添加观察项。通过菜单【Debug】【Watch Window】打开空白的观察窗口,在观察窗口内右击,弹出快捷菜单,如图5-32所示。由该菜单可添加、删除观察项,设置观察项的数据类型,显示格式以及设置窗口的字体、颜色等。,5.1 Proteus单片机系统仿真基础,图5-32 观察窗口及快捷菜单,(1)添加观察项。5.1 Proteus单片机系统仿真,单击“Add Items (By Name)”项,会弹出如图5-33所示的对话框。双击相应的SFR寄存器名称,将观察项添加到观察窗口中。添加了观察项的观察窗口如图5-34所示。,图5-33 “Add Memory Item”对话框,图5-34 添加了观察项的观察窗口,5.1 Proteus单片机系统仿真基础,单击“Add Items (By Name),(2) 删除观察项。有两种方法:在观察窗口单击选中相应的观察项,按键盘上的“Del”键;在观察窗口右击相应的观察项,在弹出的快捷菜单中单击“Delete Item”选项。,5.1 Proteus单片机系统仿真基础,(2) 删除观察项。5.1 Proteus单片机系统仿真,(3)观察点条件设置 。在观察窗口内右击,在弹出的快捷菜单中单击“Watchpoint Condition”项,弹出观察点条件设置框,如图5-35所示。,5.1 Proteus单片机系统仿真基础,图5-35 观察点条件设置框,(3)观察点条件设置 。5.1 Proteus单片机系统,观察点条件设置分为两级,包括“全局断点条件设置(Global Break Condition)”,如图5-35中的上半部分所示,和“观察项的断点表达式(Item Break Expression)”,如图5-35的下半部分所示。下半部分中“Item”项的内容为观察窗口中添加的观察项,可单击按钮,在下拉列表中选择要设置断点的观察项。“Condition”项为观察项的条件,“Mask”项为观察项的约束条件,它们具体包含的内容如图5-35的右边所示。,5.1 Proteus单片机系统仿真基础,观察点条件设置分为两级,包括“全局断点条件设置(Glob,5.2 51单片机的串行接口通信,内容:使用单片机进行串行通信。训练目的:掌握AT89C51单片机完成串行通信的方法 。,5.2 51单片机的串行接口通信内容:,串行接口(Serial Interface)是指数据一位一位地顺序传送,其特点是通信线路简单,只要一对传输线就可以实现双向通信,并可以利用电话线,从而大大降低成本,特别适用于远距离通信。串行接口一条信息的各位数据被逐位按顺序传送的通信方式称为串行通信。串行通信的特点是:数据位传送,传送时按位顺序进行,最少只需一根传输线即可完成;成本低,但传送速度慢。串行通信的距离可以从几米到几千米;根据信息的传送方向,串行通信可以进一步分为单工、半双工和全双工三种方式。,5.2 51单片机的串行接口通信,串行接口(Serial Interface)是指数据一位,5.2.1 Proteus电路设计 1. 元件清单列表打开Proteus ISIS编辑环境,按表5-1所列的清单添加元件。,表5-1 元件清单,5.2 51单片机的串行接口通信,5.2.1 Proteus电路设计 元 件 名 称所 属,2. 电路原理图元件全部添加后,在Proteus ISIS的编辑区域中按图5-36所示的原理图连接硬件电路。,5.2 51单片机的串行接口通信,图5-36 Proteus中串行接口通信原理图,2. 电路原理图5.2 51单片机的串行接口通信图5-36,5.2.2 程序设计本例的程序流程如图5-37所示。其中图5-37(a)为发送过程程序流程图,图5-37(b)为接收过程程序流程图。,5.2 51单片机的串行接口通信,(a) 发送程序流程图 (b) 接收程序流程图图5-37 程序流程图,5.2.2 程序设计5.2 51单片机的串行接口通信(a,5.2.3 Proteus调试与仿真对程序分别进行编译后,U2载入rxd.hex,U1载入txd.hex,程序仿真结果如图5-36所示。由单片机U2的I/O口向单片机U1发送数据,单片机U1使用硬件串口来接收并验证通信数据,并将收到的信号显示为LED的点亮状态,单片机U2发送的数据可使LED闪烁。,5.2 51单片机的串行接口通信,5.2.3 Proteus调试与仿真5.2 51单片机的,5.3 51单片机的I2C通信,内容:本例使用串口通信I2C存储器24C02C扩展AT89C52 单片机的数据存储器,完成读写操作。训练目的:学习使用Proteus设计并仿真I2C器件扩展单片机存储器的方法 ;掌握单片机进行I2C通信的编程方法 。,5.3 51单片机的I2C通信内容:,I2C总线是一种用于IC器件之间的二线制总线。利用该总线可实现多主机系统所需的裁决和高低速设备同步等功能。因此,是一种高性能的串行总线。I2C总线硬件结构为:I2C串行总线一般有两根信号线,一根是双向的串行数据线SDA,另一根是串行时钟线SCL。所有I2C总线设备上的串行数据线SDA都可以接到总线的SDA上,各设备的时钟线SCL都可以接到总线的SCL上。连到总线上的器件之间可通过SDA和SCL两根线传送消息,并根据地址识别每个器件。总线上允许连接的设备数以其电容量不超过400pF为限。,5.3 51单片机的I2C通信,I2C总线是一种用于IC器件之间的二线制总线。利用该总线,5.3.1 Proteus电路设计 1. 元件清单列表打开Proteus ISIS编辑环境,按表5-2所列的清单添加元件。,表5-2 元件清单,5.3 51单片机的I2C通信,5.3.1 Proteus电路设计 表5-2 元件清单,2. 电路原理图元件全部添加后,在Proteus ISIS的编辑区域中按图5-38所示的原理图连接硬件电路。,5.3 51单片机的I2C通信,图5-38 Proteus中I2C通信原理图,2. 电路原理图5.3 51单片机的I2C通信图5-38,5.3.2 程序设计本例的程序流程如图5-39所示。其中图5-39(a)为主程序流程图,图5-39(b)为发送数据子程序流程图。,5.3 51单片机的I2C通信,(a) 主程序流程图 (b) 发送数据子程序流程图图5-39 程序流程图,5.3.2 程序设计5.3 51单片机的I2C通信(a),5.3.3 Proteus调试与仿真程序仿真运行结果如图5-40所示。右键单击24C02C,查看储存内容。,5.3 51单片机的I2C通信,图5-40 程序仿真结果,5.3.3 Proteus调试与仿真5.3 51单片机的,5.4 单片机扩展多片并行RAM,内容:AT89C51单片机扩展三片8K的并行数据存储器。训练目的:掌握AT89C51单片机扩展片外并行RAM的接口方法;掌握片外并行RAM的地址分配方法;掌握Proteus中片外RAM的观察和调试方法。,5.4 单片机扩展多片并行RAM 内容:,MCS-51系列单片机片外数据存储器的空间可达64KB,而片内数据存储器的空间只有128B或256B。如果片内的数据存储器不够用,则需进行数据存储器的扩展。 常见的静态RAM芯片有6264(8K8位)、62 256(32K8位)、628 128(128K8位)等。元件管脚图如图5-41所示 。,图5-41 元件管脚图,5.4 单片机扩展多片并行RAM,5.4.1 单片机扩展并行RAM简介,MCS-51系列单片机片外数据存储器的空间可达64KB,,各引脚的功能如下:A0Ai:地址输入线,i=12(6264)或14(62256);D0D7:双向三态数据线;CE:片选信号,低电平有效,当6264的26脚(CS)为高电平,且CE为低电平时,才选中该片;OE:读选通信号输入线,低电平有效;WE:写允许信号输入线,低电平有效;VCC:工作电源,+5V;GND:线路地。,5.4 单片机扩展多片并行RAM,各引脚的功能如下:5.4 单片机扩展多片并行RAM,存储器扩展的核心问题是存储器的编址。多个存储器芯片的编址分为两个层次:存储器芯片的选择和存储器芯片内部存储单元的选择。 存储器芯片的选择有线选法和译码法两种方法。其中译码法能够把片外RAM地址划分为连续的空间块,避免了地址的间断。常用的地址译码器是3/8线译码器74LS138。,5.4 单片机扩展多片并行RAM,存储器扩展的核心问题是存储器的编址。多个存储器芯片的编址,5.4.2 Proteus电路设计 1. 元件清单列表打开Proteus ISIS编辑环境,按表5-3所列的清单添加元件。,表5-3 元件清单,5.4 单片机扩展多片并行RAM,5.4.2 Proteus电路设计 表5-3 元件清单,2. 电路原理图 在Proteus ISIS的编辑区域中按图5-42所示的原理图连接硬件电路。三片 RAM的地址范围从#1到#3分别是:0000H1FFFH,2000H3FFFH,4000H5FFFH。,5.4 单片机扩展多片并行RAM,图5-42 Proteus中电路原理图,2. 电路原理图5.4 单片机扩展多片并行RAM图5-,下面介绍总线、总线分支与网络标号的画法。Proteus ISIS既支持在层次模块间运行总线,还支持定义库元器件为总线型引脚。(1) 放置总线。 从工具箱中选择总线“Bus”图标 。 在期望总线起始端出现的位置单击鼠标左键。 在期望总线路径的拐点处单击鼠标左键。 在总线的终点单击鼠标左键,然后单击鼠标右键,可结束总线放置。,5.4 单片机扩展多片并行RAM,下面介绍总线、总线分支与网络标号的画法。5.4 单片机,(2) 放置总线分支。在Protel软件里,总线和总线分支是两个不同的命令。而在Proteus中,总线分支既可以用总线命令 ,也可以用一般连线命令 。在使用总线命令画总线分支时,粗线自动变成细线。为了使电路图显得专业而美观,通常把总线分支画成与总线成45角的相互平行的斜线,下面举例来说明总线与总线分支的画法。,5.4 单片机扩展多片并行RAM,(2) 放置总线分支。5.4 单片机扩展多片并行RAM,如图5-43所示,在AT89C51的P0口右侧先画一条自上而下的总线。确认主工具栏中的自动布线器 为选中状态(为画斜线准备)。在P0.0引脚单击鼠标左键后松开,拖动鼠标指针画线,距总线一个背景栅格时,单击鼠标左键确认,然后按住Ctrl键,并向右上移动鼠标指针,在与总线成45角相交时单击鼠标左键确认,即完成一条总线分支的绘制。,5.4 单片机扩展多片并行RAM,图5-43 Proteus总线分支的画法,如图5-43所示,在AT89C51的P0口右侧先画一条自,其它总线分支的绘制不必这样复杂,只需在分支的起始点双击鼠标左键即可完成。比如,画一条P0.1引脚至总线的分支,把鼠标指针放置在P0.1引脚口位置,出现一个红色小方框后双击鼠标左键,就自动完成类似P0.0引脚到总线的一系列动作。依次完成所有总线分支的绘制。需要指出的是,在绘制多条平行线时,均可采用以上简单的画法。,5.4 单片机扩展多片并行RAM,其它总线分支的绘制不必这样复杂,只需在分支的起始点双击鼠,(3) 放置网络标签。 从工具箱中选择“Wire Label”图标 。 把鼠标指针指向期望放置标签的总线分支位置,被选中的导线变成虚线,鼠标指针处出现一个“”号,此时单击鼠标左键,出现“Edit Wire Label”对话框,如图5-44所示。,5.4 单片机扩展多片并行RAM,图5-44 总线标签的标注,(3) 放置网络标签。5.4 单片机扩展多片并行RAM图, 在该对话框的“Label”选项卡中键入相应的文本,如“AD0”。 单击“OK”按钮,结束文本的输入。在放置相邻的第二个总线标签时,系统不会像Protel软件那样自动按序标出文本号,而只需连续单击“OK”按钮即可。实际情况是,必须重新再输入一次文本,或单击“Edit Wire Label”对话框中“String”右侧的下拉箭头,当出现“AD0”时,修改成“AD1”,相对省事些,如图5-44所示。,5.4 单片机扩展多片并行RAM, 在该对话框的“Label”选项卡中键入相应的文本,如“,像删除元件一样直接双击右键来删除标签是不行的,那会使它所连着的导线一起被删除掉。想更改或删除总线标签可以对准总线标签单击右键,出现其快捷菜单,如图5-45所示。其中第一项“Edit Label”是编辑总线标签,第二项“Delete Label”是删除总线标签,第三项“Drag Wire”是移动总线标签。,5.4 单片机扩展多片并行RAM,图5-45 总线标签的更改,像删除元件一样直接双击右键来删除标签是不行的,那会使它所连,5.4.3 程序设计本例中,CPU先向第一片6264从10H单元开始连续写入数据09,再向第二片6264从10H单元连续写入数据1019H,再向第三片6264从10H单元连续写入数据2029。程序流程如图5-46所示。,5.4 单片机扩展多片并行RAM,图5-46 程序流程图,5.4.3 程序设计5.4 单片机扩展多片并行RAM图5,5.4.4 Proteus调试与仿真在Proteus ISIS界面中,单击按钮 启动仿真。 单击按钮 暂停仿真,通过菜单【Debug】【Memory Contents-U1】、【Memory Contents-U4】、【Memory Contents-U6】,打开三片6264存储器窗口,可观察程序的运行结果,如图5-47所示。,5.4 单片机扩展多片并行RAM,图5-47 程序仿真结果,5.4.4 Proteus调试与仿真5.4 单片机扩展多,5.5 51单片机的脉宽编码通信,内容:两个MCS-51单片机采用脉宽编码协议进行通信,通过I/O口对脉宽编码进行时序模拟通信。 训练目的:学习使用Proteus设计并仿真脉宽调制方法进行相互通信;掌握用单片机进行高级I/O编程的方法。,5.5 51单片机的脉宽编码通信 内容:,脉宽编码通信是一种数字信号通信方式,与其它通信协议不同的是:脉宽编码协议用脉冲宽度的长短变化来携带信息。传送一字节信息10110101,脉宽编码时序如图5-48所示。信号电平的一次翻转代表时钟,用每个电平的长度不同来代表一个比特。,图5-48 脉宽编码时序,5.5 单片机的脉宽编码通信,脉宽编码通信是一种数字信号通信方式,与其它通信协议不同的,优点:在数据中提供了时钟信号,这能提供一种同步机制,克服了NRZ码的不足。缺点:带宽利用率低,只有不到50%。如10Mb/s以太网,有效带宽是5Mb/s,但实际占用带宽却有10Mb/s之多。本例用两个AT89C51单片机,使用脉宽编码接口进行通信,通过I/O口对脉宽编码进行时序模拟通信来了解脉宽编码调制方法。,5.5 单片机的脉宽编码通信,优点:在数据中提供了时钟信号,这能提供一种同步机制,克服,5.5.1 Proteus电路设计 1. 元件清单列表打开Proteus ISIS编辑环境,按表5-4所列的清单添加元件。,表5-4 元件清单,5.5 单片机的脉宽编码通信,5.5.1 Proteus电路设计 表5-4 元件清单,2. 电路原理图 在Proteus ISIS的编辑区域中按图5-49所示的原理图连接硬件电路。数据通过P1.7口进行传输,用七段数码管来显示发送和接收的数据。,5.5 单片机的脉宽编码通信,图5-49 Proteus中电路原理图,2. 电路原理图5.5 单片机的脉宽编码通信图5-49,5.5.2 程序设计本例的程序流程图如图5-50所示。其中图5-50(a)为发送过程程序流程图,图5-50(b)为接收过程程序流程图。,5.5 单片机的脉宽编码通信,(a) 发送过程流程图 (b) 接收过程流程图图5-50 程序流程图,5.5.2 程序设计5.5 单片机的脉宽编码通信(a),5.5.3 Proteus调试与仿真主机载入fa.hex,从机载入shou.hex目标代码文件,程序运行效果如图5-51所示。,5.5 单片机的脉宽编码通信,图5-51 程序仿真结果,5.5.3 Proteus调试与仿真5.5 单片机的脉宽,5.6 串行A/D转换,内容:利用AT89C52单片机控制串行A/D转换器TLC2543进行12位数据转换,用TLC2543的AIN1通道输入模拟电压,数据转换结果(16进制数据)通过单片机外接的LED数码管显示出来。 训练目的:掌握AT89C52单片机扩展SPI器件的方法 ;掌握单片机进行SPI通信的程序编写方法 ;掌握串行A/D转换器TLC2543的使用方法 。,5.6 串行A/D转换 内容:,5.6.1 TLC2543器件介绍 TLC2543是TI公司生产的串行A/D转换器,它具有输入通道多、精度高、速度快、使用灵活和体积小的优点。TLC2543为CMOS型12位开关电容逐次逼近A/D转换器。片内含有一个14通道多路器,可从11个模拟输入或3个内部自测电压中选通一路。 TLC2543与微处理器的接线用SPI接口,只有4根连线。,5.6 串行A/D转换,5.6.1 TLC2543器件介绍 5.6 串行A/D转换,TLC2543的特性如下:12位A/D转换器(可8位、12位和16位输出);在工作温度范围内转换时间为l0s;11通道输入;3种内建的自检模式;片内采样/保持电路;最大1/4096的线性误差;内置系统时钟;转换结束标志位;单/双极性输出;输入/输出的顺序可编程(高位或低位在前);可支持软件关机;输出数据长度可编程。,5.6 串行A/D转换,TLC2543的特性如下:5.6 串行A/D转换,1. TLC2543的片内结构及引脚功能,5.6 串行A/D转换,AIN0AIN10模拟输入通道;CS片选端;DIN串行数据输入;,DOUT转换结束数据输出;EOC转换结束信号; GND地;,1. TLC2543的片内结构及引脚功能5.6 串,1. TLC2543的片内结构及引脚功能,5.6 串行A/D转换,SCLK(I/O CLOCK)输入/输出同步时钟;REF+、REF-转换参考电压;VCC设备的电源。,1. TLC2543的片内结构及引脚功能5.6 串,2. TLC2543的命令字命令字的输入采用高位在前,命令字如表5-5所示。,5.6 串行A/D转换,表5-5 TLC2543的命令字格式,输入到输入寄存器中的8位命令字,同外部模拟电压的输入通道、输出数据的位数、数据格式以及数据极性等的对应关系如表5-6所示。,2. TLC2543的命令字5.6 串行A/D转换通 道,表5-6 输入寄存器命令字格式,5.6 串行A/D转换,功能选择输入数据字节地址位LlL0LSBFBIPD7D6D5,5.6.2 Proteus电路设计 1. 元件清单列表打开Proteus ISIS编辑环境,按表5-7所列的清单添加元件。,表5-7 元件清单,5.6 串行A/D转换,5.6.2 Proteus电路设计 表5-7 元件清单,2. 电路原理图 在Proteus ISIS的编辑区域中按图5-53所示的原理图连接硬件电路。,5.6 串行A/D转换,图5-53 Proteus中电路原理图,2. 电路原理图5.

    注意事项

    本文(Proteus实例教程课件-第5章.ppt)为本站会员(小飞机)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开