原创 PIC单片机在线调试中的一些问题

2007-11-26 18:28 2556 7 7 分类: 工程师职场

datasheet.gif本文相关DataSheet:

PIC16F87X    PIC18FXX2    


  1 在线串行编程


  1.1在线串行编程接口


  带有Flash闪速存储器的PIC单片机产品一般都具有在线串行编程功能,只需要5根引线就可以把程序下载到单片机的Flash程序存储器中。这5根线的排列顺序是MCLR/Vpp、Vdd、Vss、PD(或PGD)和PC(或PGC),图1是PIC单片机在线串行编程接口图。


PIC单片机在线串行编程接口


图1PIC单片机在线串行编程接口


  1.2引脚含义


  上述5根引线的具体含义是:MCLR/Vpp——编程电压(对于PIC单片机一般为13 V左右);Vdd——编程电源(5 V);Vss——地;PD——编程数据信号;PC——编程时钟信号。


  有了这个编程连接电路,只需要合适的编程硬件电路和编程软件,就可以实现单片机在线串行编程和调试。


  2 在线调试


  2.1在线调试器与目标板的连接


  微芯公司推出的第一代在线调试器命名为MPLAB ICD,其支持PIC16F87X系列单片机的在线调试与烧写,并且性能可靠,使用简捷、方便。在MPLAB ICD基础上,微芯公司推出第二代在线调试器命名为MPLAB ICD2(以下简称ICD2),其支持全系列的PIC Flash闪速存储器单片机的在线调试和烧写,甚至还支持微芯公司16位单片机dsPIC的在线调试和烧写。ICD2在线调试器与目标板的连接如图2所示。


  图2中只画出ICD2的MCLR/Vpp、PGD和PGC三组重要信号与目标板的连接,ICD2的Vdd和Vss按照正常方式与目标板连接。如果目标板上有AVdd(模拟电源)和AVss(模拟地),在目标板上也必须把AVdd和AVss与其对应的电源和地相连,不能有任何电源和地引脚悬空,以保证ICD2在调试时能正常工作。


点击看大图


图2在线调试器与目标板的连接


  2.2PGC和PGD信号易出现的问题


  ① 从图2中可以看出,ICD2的PGC和PGD引脚内部已经接有4.7 kΩ的下拉电阻,因此用户设计电路板时,电路板上的这2个引脚就不能再接下拉电阻,以免引起不正确的电平。


  ② PGC和PGD是信号引脚,对于这2个引脚,ICD2和目标板之间的连接不能有任何电容或其他容性器件接入,否则会影响串行数据和时钟信号传输。PGC和PGD信号是双向传输信号,ICD2和目标板之间的连接不能有任何二极管等元件阻断信号传输。


  2.3复位


  MCLR/Vpp是ICD2编程电压引脚,编程时电压应该在13 V左右,这个引脚的另一个功能是复位。我们知道,任何单片机在上电或在其他一些特殊情况下都能引起复位。单片机的复位与电源和晶体振荡是单片机进入正常工作的三大必要条件。因此,应该注意以下问题。


  ① 不能接入大电容,否则Vdd(电源电压)不能快速建立,影响复位。


  ② 目标板的Vdd(电源电压)与MCLR/Vpp间应串接一只10 kΩ以下的复位电阻,这样在复位时目标板的MCLR/Vpp引脚能够被正常拉低,而在编程时也可以保持13 V左右的烧写电压。


  ③ 复位电阻不能太大,必须要小于10 kΩ。根据笔者的经验,对于PIC16F87X系列单片机,复位电阻是10 kΩ或10 kΩ以下时可以正常复位;对于PIC18FXX2系列单片机,复位电阻是10 kΩ时不能正常复位,更换为4.7 kΩ左右的电阻就可以实现正常复位了。

PARTNER CONTENT

文章评论0条评论)

登录后参与讨论
EE直播间
更多
我要评论
0
7
关闭 站长推荐上一条 /3 下一条