80C51系列单片机仿真器选购指南
时间:08-06
来源:互联网
点击:
能否运行外部用户目标板上的程序
由于HOOKS 技术中P0/P2 口是重新构造的,因此P0/P2 口上的时序处理是整个设计中的难点。P0/P2 的I/O 特性和数据总线特性相对容易实现一点,但是程序总线很难正确实现,这是由于HOOKS的技术结构决定的。一般HOOKS 仿真器在实现仿真内部64K 代码空间比较容易,但是仿真内部4K (类似89C51)/8K (类似89C54)/16K (类似89C54)/32K (类似89C58)等能外扩ROM 空间的MCU类型则无法实现。在国内外所有的HOOKS 技术的仿真器中,只有广州致远公司的TKS 仿真器B 系列能真正做到稳定运行外部用户目标板上的程序。运行外部用户目标板上的程序是非常必要的,因为用户可能在外部扩充了一般的用户程序,需要实际仿真一下来验证整个系统的正确性;也可能在外部放置了大容量的(可能超过64K 的物理地址限制)分组字库,而这种特性是仿真器内部无法实现的;也可能是外部有分组的BANK 方式的运行代码,这种方式要求仿真器必须有运行外部程序代码的能力。
P0/P2 口能否同时用作总线和I/O
这种特性是芯片本来的性能,但是由于HOOKS 技术的难度,有很多HOOKS 仿真器不能做到这一点,导致用户在使用时无法全面满足要求。该性能一般不需要测试,可以直接阅读仿真器的性能说明或向生产厂商或代理商询问。作者检测过国内外知名仿真器厂家的多种HOOKS 仿真器,几乎都没有完美做到P0/P2 口的准确仿真。
P0/P2 口的直流参数
如果需要检测的仿真器根本做不到同时仿真I/O 和总线方式,则没有必要检测P0/P2 的直流参数。如果要检测的仿真器宣称能够同时仿真I/O 和总线方式,用户还必须分别在I/O 和总线两种方式下对直流参数进行测试。根据作者的HOOKS 仿真器测试经验,有的仿真器虽然宣称能够同时仿真I/O 和总线方式,但是根本不区分这两种方式驱动能力,采用的是一种平均方式,这样在作为I/O 时高电平驱动能力过大,而作为总线时驱动能力过小。用户在使用这类仿真器作为输入时,必须加大外部信号的驱动能力,这跟实际芯片的驱动能力相差太远;在作为总线使用时,如果外部的总线(包括地址总线和数据总线)个数稍多,总线电平将严重下降而无法工作。用户可以使用下面的测试程序配合示波器检查。
测试程序:
ORG 0000H
LJMP TestStart
TestStart: MOV P0,#0FFH
TestLoop: MOV P0,#00H
NOP
MOV A,#0FFH
MOV DPTR,#0FFFFH
MOVX @DPTR,A
NOP
MOV P0,#00H
SJMP TestLoop
END
测试步骤
(1) 照您当前使用的仿真器要求测试上面的程序,仿真器不接任何用户设备。
(2) 单步运行完TestStart 的程序行,P0 的数值设置为0FFH。这时使用电压表测量一下P0的任意一个管脚(例如P0.0)的电压,记录为V1,V1 的数值一般小于当前的电源电压。然后使用一个2K 电阻,一端接仿真器提供的地,另一端接P0.0,使用电压表测量一下P0.0 的电压,记录为V2,V2的电压越接近与0 说明该仿真器P0 在I/O 口方式下的特性越好(接近于开漏)。如果V2 大于1伏说明P0 口的输入电阻在10K 以下,该仿真器P0 口在I/O 下性能较差。
(3) 在TestLoop 中连续全速运行,仍保持2K 电阻接在P0.0。使用示波器观察P0.0 引脚,可以看到占空比较小的正电平脉冲,该正电平脉冲是有P0 输出的低8 位地址和数据输出引起的,因为处于总线方式,P0 口的驱动能力应该较强。保持示波器的正常显示,然后将2K 电阻不断的接触/脱离P0.0 引脚,观察P0.0 脚脉冲信号幅度的变化。如果该信号在2K 电阻接入后幅度降低很大,例如1V 以上,说明该仿真器P0 口驱动能力不足,无法满足用户的正常的需要。
测试结论:HOOKS 仿真器要同时仿真I/O 口和总线模式而且保持良好的驱动特性是比较困难的,但是可以作到的。一般的HOOKS 仿真器一般不敢宣称同时仿真I/O 口和总线方式,但是用户需要注意即使宣称可以同时仿真I/O 和总线,用户也需要照上述的方法进行测试,防止厂家采取驱动折中的方法掩盖。根据作者的测试结果,国内所有的HOOKS 仿真器只有TKS 系列可以作到真正同时仿真I/O 口和总线方式,重要的是仍保持了良好的驱动特性。
是否占用用户资源
设计优良的HOOKS 仿真器不会占用任何用户资源,但是由于设计技术的差别,有一些采用HOOKS技术的仿真器不能达到这样的性能,一般会占用部分资源。占用资源将在使用中限制用户的使用,用户可能无法通过该仿真器实现正常程序的功能。该性能一般不需要测试,可以直接阅读仿真器的性能说明或向生产厂商或代理商询问。
由于HOOKS 技术中P0/P2 口是重新构造的,因此P0/P2 口上的时序处理是整个设计中的难点。P0/P2 的I/O 特性和数据总线特性相对容易实现一点,但是程序总线很难正确实现,这是由于HOOKS的技术结构决定的。一般HOOKS 仿真器在实现仿真内部64K 代码空间比较容易,但是仿真内部4K (类似89C51)/8K (类似89C54)/16K (类似89C54)/32K (类似89C58)等能外扩ROM 空间的MCU类型则无法实现。在国内外所有的HOOKS 技术的仿真器中,只有广州致远公司的TKS 仿真器B 系列能真正做到稳定运行外部用户目标板上的程序。运行外部用户目标板上的程序是非常必要的,因为用户可能在外部扩充了一般的用户程序,需要实际仿真一下来验证整个系统的正确性;也可能在外部放置了大容量的(可能超过64K 的物理地址限制)分组字库,而这种特性是仿真器内部无法实现的;也可能是外部有分组的BANK 方式的运行代码,这种方式要求仿真器必须有运行外部程序代码的能力。
P0/P2 口能否同时用作总线和I/O
这种特性是芯片本来的性能,但是由于HOOKS 技术的难度,有很多HOOKS 仿真器不能做到这一点,导致用户在使用时无法全面满足要求。该性能一般不需要测试,可以直接阅读仿真器的性能说明或向生产厂商或代理商询问。作者检测过国内外知名仿真器厂家的多种HOOKS 仿真器,几乎都没有完美做到P0/P2 口的准确仿真。
P0/P2 口的直流参数
如果需要检测的仿真器根本做不到同时仿真I/O 和总线方式,则没有必要检测P0/P2 的直流参数。如果要检测的仿真器宣称能够同时仿真I/O 和总线方式,用户还必须分别在I/O 和总线两种方式下对直流参数进行测试。根据作者的HOOKS 仿真器测试经验,有的仿真器虽然宣称能够同时仿真I/O 和总线方式,但是根本不区分这两种方式驱动能力,采用的是一种平均方式,这样在作为I/O 时高电平驱动能力过大,而作为总线时驱动能力过小。用户在使用这类仿真器作为输入时,必须加大外部信号的驱动能力,这跟实际芯片的驱动能力相差太远;在作为总线使用时,如果外部的总线(包括地址总线和数据总线)个数稍多,总线电平将严重下降而无法工作。用户可以使用下面的测试程序配合示波器检查。
测试程序:
ORG 0000H
LJMP TestStart
TestStart: MOV P0,#0FFH
TestLoop: MOV P0,#00H
NOP
MOV A,#0FFH
MOV DPTR,#0FFFFH
MOVX @DPTR,A
NOP
MOV P0,#00H
SJMP TestLoop
END
测试步骤
(1) 照您当前使用的仿真器要求测试上面的程序,仿真器不接任何用户设备。
(2) 单步运行完TestStart 的程序行,P0 的数值设置为0FFH。这时使用电压表测量一下P0的任意一个管脚(例如P0.0)的电压,记录为V1,V1 的数值一般小于当前的电源电压。然后使用一个2K 电阻,一端接仿真器提供的地,另一端接P0.0,使用电压表测量一下P0.0 的电压,记录为V2,V2的电压越接近与0 说明该仿真器P0 在I/O 口方式下的特性越好(接近于开漏)。如果V2 大于1伏说明P0 口的输入电阻在10K 以下,该仿真器P0 口在I/O 下性能较差。
(3) 在TestLoop 中连续全速运行,仍保持2K 电阻接在P0.0。使用示波器观察P0.0 引脚,可以看到占空比较小的正电平脉冲,该正电平脉冲是有P0 输出的低8 位地址和数据输出引起的,因为处于总线方式,P0 口的驱动能力应该较强。保持示波器的正常显示,然后将2K 电阻不断的接触/脱离P0.0 引脚,观察P0.0 脚脉冲信号幅度的变化。如果该信号在2K 电阻接入后幅度降低很大,例如1V 以上,说明该仿真器P0 口驱动能力不足,无法满足用户的正常的需要。
测试结论:HOOKS 仿真器要同时仿真I/O 口和总线模式而且保持良好的驱动特性是比较困难的,但是可以作到的。一般的HOOKS 仿真器一般不敢宣称同时仿真I/O 口和总线方式,但是用户需要注意即使宣称可以同时仿真I/O 和总线,用户也需要照上述的方法进行测试,防止厂家采取驱动折中的方法掩盖。根据作者的测试结果,国内所有的HOOKS 仿真器只有TKS 系列可以作到真正同时仿真I/O 口和总线方式,重要的是仍保持了良好的驱动特性。
是否占用用户资源
设计优良的HOOKS 仿真器不会占用任何用户资源,但是由于设计技术的差别,有一些采用HOOKS技术的仿真器不能达到这样的性能,一般会占用部分资源。占用资源将在使用中限制用户的使用,用户可能无法通过该仿真器实现正常程序的功能。该性能一般不需要测试,可以直接阅读仿真器的性能说明或向生产厂商或代理商询问。
仿真 嵌入式 单片机 电路 二极管 LCD 发光二极管 电子 Keil 电压 总线 MCU 示波器 电阻 相关文章:
- 扩大ARM SoC的验证覆盖缩短仿真时间(07-20)
- Proteus在单片机系统设计中的应用(04-21)
- 仿真扩展芯片(EEC)简化高速汽车嵌入式处理器的集成(06-03)
- 使用仿真和虚拟化的嵌入式设计(09-06)
- PIC单片机的应用设计技巧(07-03)
- DDS流水线结构的改进(07-31)
射频专业培训教程推荐
栏目分类