当前位置:首页 > 单片机 > 单片机
[导读] 单片机仿真器可实现对单片机程序的单步跟踪调试,具备断点或全速等多种调式方式,同时能够记录各种变量以及RAM和寄存器的动态数据,对于程序的执行步骤与效果进行实时观察。此外,其还可实现对硬件电路的动态调试。

 单片机仿真器可实现对单片机程序的单步跟踪调试,具备断点或全速等多种调式方式,同时能够记录各种变量以及RAM和寄存器的动态数据,对于程序的执行步骤与效果进行实时观察。此外,其还可实现对硬件电路的动态调试。当前单片机仿真器已在工业中得到了广泛应用,因此加大对其的研究具有重要的现实意义。

1 基于SST89C58单片机的仿真器设计

设计的主要部分是SST89C58单片机,从其构成来看,内部集成了72 kB大小的SuperFlashEEPROM程序存储器,涵盖了64 kB大小的Block0及8 kB大小的Block1的Flash—ROM。该单片机对于传统使用的SoftICE监控也做出了一定的优化处理,其中监控程序共占据了存储块Block0大小为1 kB的FC00H~FFFFH,同时还有Block1中大小为4 kB的0000H~0FF FH。

研究人员在进行仿真器调试过程中,借助IAP的帮助下再应用编程,将用户的目标程序从电脑机下载至仿真芯片所剩下的Block0空间之中,大小为63 kB,然后利用SoftICE的作用实施仿真调试。但需注意的是,在整个调试过程中,SoftICE和电脑内部的调试器程序之间始终未中断正常的通信联系。

文中从仿真器仿真的原理进行分析,其本质就是在程序调试时根据需要动态的对程序存储区作相应的修改,也唯有如此才能达到断点运行或单步运行的良好效果。在仿真芯片中研究人员预先烧入了相应的监控程序,其主要功能在于与计算机之间实施良好的通讯。等到调试者利用KeilμVision2集成环境来实施仿真的过程中,后者便会将SST89C58单片机程序目标代码利用串口传输到仿真器中,然后通过仿真器中监控程序的作用来将代码烧写至监控芯片的程序存储器。当SST89C58单片机程序在调试时,监控程序也会在集成开发环境指令的作用下,对于被调试的程序进行适当的改写,以便实现设置断点及单步运行。在这一过程中,一旦程序遇到断点而只能中断执行后,则此时监控程序便可获得CPU的控制权,其不仅需承担起查看单片机寄存器、RAM以及单片机内部的相关变量的工作任务,同时还需观察状态在串行口的帮助下输送至集成开发环境的过程,判断其是否可满足用户观察的各种需求。

2 电路构成分析

2.1 SSTB9C58单片机

图中的U1表示的是SST89C58单片机,从其指令来看与8051单片机完全相同,均使用的是双列直插封装方式,且其能与标准的8051管脚之间实现有效兼容。在整个电路中,对31引脚采取了接高电平的处理,目的在于确保其仅能访问内部64 kB大小的程序存储器;在这一构成条件下,利用对内部特殊功能寄存器的有效操作,可达到IAP在应用可编程的效果;系统本身带有SPI串行接口以及全双工增强型UART;若处于常规情况下,运行过程中外部晶振能达到40 MHz。

SST89C58单片机的16引脚可当做普通I/O口来进行使用,研究人员利用按键S2接地,与此同时S2和复位按键S1两者在互相作用下,不仅能实现仿真器的脱机运行,还可达到仿真运行功能的切换效果。

2.2 晶振与复位电路

如图1所示,晶振电路中主要包括晶振Y1、电容C5与C6、跳线器J1与J2等几个部分。在运行过程中,仿真器利用J1、J2的作用来决定是否需要应用外部电路晶振,否则便需要应用仿真器内部电路晶振。但需注意的是,等到跳线器J1及J2“2、3”端受到各种因素的影响发生短接时,则需采用用户板晶振;而一旦J1及J2“1、2”端发生短接,此时就需要应用仿真器内部电路晶振。

复位电路的主要功能在于仿真器的上电复位以及强制复位。从构成上讲,复位电路中涵盖了大小为0.1μF的电容C7、按键S1以及10 kΩ的R1。一旦系统上电,就会自动选择电容C7充电,单片机的复位引脚RST就能获得一个高电平脉冲,而等到C7充电结束后,复位引脚转变成低电平,就可完成上电复位作用;在SST89C58工作时,若根据实际情况必须对系统采取强制复位,工作人员可选择S1,复位脚电平便会从原先的低电平转变成高电平,而电容C7则会被瞬间放电,等到S1键被松开后,VCC就会开始对电容C7进行充电,以确保复位脚的高电平可持续一定的时间,因此最终完成强制复位功能。

2.3 电平转换电路

研究选择RS-232标准作为仿真器和计算机之间的串行通信。其中SST89C58单片机的逻辑电平常与TTL电平之间是兼容的,不过在RS-232标准中要求的逻辑电平和TTL电平之间,无论在极性还是幅度上均存在着一定的差异性,故需要采取电平转换。

文中选择的集成芯片是MAX232D,即图中的U2,其电平转换电路主要包括内部的电源电压变换器及外部电容等,主要目的在于实现电脑的232电平及SST89C58单片机的TTL电平之间的顺利转换。为达到这一目的,应当将输入的+5 V大小电源电压转变到±9 V。SST89C58单片机的串行通信传输信号是TXD,具体运行时需由U2的10引脚T2IN中开始进行输入,然后当其已经转变为232电平后,便可通过7引脚T2OUT来进行输出,在此基础上就可实现与电脑串行口接收端之间的连接;电脑的串口发送信号则需通过U2的8引脚R2IN才可进行输入,等到已转变为TTL电平后就可通过9引脚R2OUT来进行输出,然后与SST89C58单片机的接收引脚RXD之间实现互相连接。其具体情况如图2所示。

2.4 逻辑电平测试电路

设计时还可在仿真器上增加相应的集成逻辑笔功能,目的在于对电路中电平状态实现动态的测量,给SST89C58单片机实验实训及技术开发过程中工作人员及时的进行电路调试和硬件故障排除等创造了良好条件。逻辑电平测试电路除了有SN74HC00D(U3)之外,还包括发光二极管指示灯L1与L5,以及电阻R5~R9等几个部分。运行过程中只需通过测试线将测试端J4(V-IN)和相应的被测点之间进行有效连接。若发现被测电平处于高电平状态,则U3A和非门便会开始输出低电平,此时红灯L1亮起,而若U3C和非门开始输出高电平,则此时绿灯L2不亮,所代表的含义就是此时处于高电平状态;若输入端已与低电平之间实现有效连接时,则此时绿灯L2亮,而红灯L1则处于不亮状态;等到测试输入端空载,则无论是红灯或是绿灯均处于不亮状态;若系统中连接的测试信号为脉冲,则会发生一种红灯和绿灯一起闪烁的现象,工作人员只需利用对闪烁的速率及明暗程度进行观察,就可较为准确地估测出被测信号的频率大小及占空比情况。

3 结束语

SST89C58单片机与KeilμVision2集成开发软件间的有机结合,提供了一种功能过硬的单片机仿真器,其可实现仿真器的脱机运行以及仿真运行功能的切换,从而完成对电路中电平状态的动态测量,且具有较高的应用价值。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

仿真器是一种用于模拟和测试特定系统或设备的软件工具。通过仿真器,开发人员可以在计算机上模拟系统或设备的运行环境,以便测试和验证其性能、可靠性和正确性。本文将介绍仿真器的特点、应用及其在各个领域中的重要性。

关键字: 仿真器 模拟系统

对于单片机语音芯片来说,仿真器这一专用工具不仅可以调试您的程序,而且还可以帮助您识别设计工程中的一些潜在的硬件和软件问题。仿真器应用广泛这是毋庸置疑的,不仅单片机这一领域,连语音芯片的FPGA。

关键字: 单片机 仿真器 FPGA

一个理想的 使开发者能观察到单片机内部的操作,仿真器是使替代单片机并使单片机操作可视化的硬件工具。

关键字: 单片机 仿真器 硬件工具

仿真的概念其实使用非常广,最终的含义就是使用可控的手段来模仿真实的情况。在嵌入式系统的设计中,仿真应用的范围主要集中在对程序的仿真上。

关键字: 单片机 仿真器 程序

计算机模拟(简称sim)是利用计算机进行模拟的方法。利用计算机软件开发出的模拟器,可以进行故障树分析、测试VLSI逻辑设计等复杂的模拟任务。

关键字: 模拟器 CPU模拟器 仿真器

概伦电子(股票代码:688206.SH)宣布其高性能并行SPICE仿真器NanoSpice™助力由日本有明工业高等专门学校与Jedat(股票代码:38410.JP)联合成立的IC实验室,旨在研究和开发支持高效模拟电路设计...

关键字: 概伦电子 模拟电路 仿真器

宜普电源转换公司(EPC)为工程师提供更多的设计工具、模型和性能仿真器,用于基于高性能氮化镓器件的设计。

关键字: 宜普电源转换公司 氮化镓 仿真器

CC2541的仿真器CC Debugger使用教程

关键字: 仿真器 教程

在面向高可靠性应用开发MCU程序的过程中,工程师通常会遇到设定断点的问题,断点的合理使用对于更好地编程和MCU使用是一种挑战。借助新的工具,这些断点就可以发挥巨大的作用,成为开发工作中的利器。

关键字: MCU 仿真器 条件代码断点 日志断点

点击上方“泰克科技”关注我们!静电放电(ESD)抗扰度测试在设计满足全球电磁兼容能力(EMC)标准的产品时,静电放电(ESD)抗扰度测试至关重要。大多数产品都会遵循主要国际标准,比如IEC61000-4-2和美国ANSI...

关键字: ESD 仿真器 示波器
关闭
关闭