Microchip
直播中

翁齐芳

7年用户 187经验值
私信 关注
[问答]

使用PICkit3编程PIC16F876失败

大家好!在AC162049(Microchip的通用编程模块)中,PICtiT3编程是PIC16F876的一个问题。我的Microchip原来的PICTIT3的样本不能编程我所拥有的PIC16F876中的任何一个。我没有问题用PICTIT3在MPLA892下擦除PIC16F876。但是使用MPLAB8或IPE4.01编程PIC16F876失败。在IPE的电源设置下,我可以看到阴影ICSP选项:“使用低电压编程模式条目”和“使用高压编程模式条目”。TICSP选项“来自工具的电源目标电路”不被遮蔽,并且我可以激活它。我的USB端口电源能力不错,我不必使用外部电源(5伏是用PICTIT3,4.96 V用万用表测量)。与PIC16F870同样的问题。但是我没有任何问题,在外部电源模式下使用这个PICTIT3编程DSIC33 FJ和PIC32 MZ。在这个样品中,不是一个硬件在低电压下运行的问题。在汇编中,解决了32个IPSP选项(使用低/高电压编程模式条目)。有没有人在PICTIT3中用PICTIT3编程实现“电源目标电路从工具”模式的成功经验?谢谢,谢尔盖。

以上来自于百度翻译


      以下为原文

    Hi all!  I have a problem with PICkit3 while programming PIC16F876 in AC162049 (Microchip's Universal Programming Module). My sample of Microchip's original PICkit3 can't program any of the PIC16F876 that I have. I have no problem with erasing the PIC16F876 under MPLAB8.92 using PICkit3. But programming PIC16F876 using MPLAB8 or IPE4.01 is failed. Under Power Settings of IPE I can see shadowed  ICSP  options : "Use low voltage prgramming mode entry" and "Use high voltage prgramming mode entry".
The ICSP  option "Power Target Circuit from Tool" is not shadowed and I can activate it. My USB port power capabilities are ok I have not have to use the external power supply (5.0 V is measured by PICkit3, 4.96 V - by multimeter).  The same problem I have with PIC16F870.
But I have not have any problem programming  dsPIC33FJ and PIC32MZ using this PICkit3 in external power supply mode.
I haven't a hardware problem with operation at low voltage in this sample of PICkit3. ETN #32 is resolved in Assembly #10-00424-R7.

How can I activate any of the shadowed ICSP options (Use low/high voltage prgramming mode entry)?
Have anyone the successful experience of programming PIC16Fxxx using PICkit3 in "Power Target Circuit from Tool" mode?

Thanks.
Regards,
Sergey.

回帖(6)

王焕树

2018-12-27 16:08:34
你应该使用默认的,这是高电压编程。检查是否AC161649模块保持RB3/PGM引脚低(即连接到地)。如果不是,从该引脚添加一个10K电阻器到地面,看看编程是否有效。

以上来自于百度翻译


      以下为原文

    You should use the default, which is high voltage programming.
Check if the AC162049 module holds the RB3/PGM pin low (i.e. connected to ground).
If not, add a 10k resistor from that pin to ground, and see if programming works.
 
举报

刘晓寰

2018-12-27 16:20:27
你好!谢谢你的回答!OASASION拉低PGM引脚没有帮助。正如我所见,高电压编程模式总是可用的,不管LVP位的状态如何,通过将VIHH应用到MCLR引脚(DS30569C页102)。LVP配置位是由工厂默认设置为PGM函数,所以这是默认设置。但我有这么奇怪的情况。如果我读了失败的编程后的PM,我可以看到只有两个或三个第一次写正确。只有第一个0x70地址被删除为PIC16F876!同样的情况PIC16F870,但对于只有0x6FADIDES,而试图使用16F870在高压编程模式。我试图使用VDD到PGM引脚使用LVP模式。在16F876的这种情况下,第一个地址不被写入,但是下一个0x424地址被成功写入。程序内存范围设置为全范围编程,但16F870已成功编程为LVP模式中的所有内存范围!所以我认为16F876的一个样本被破坏了。下一个星期我会测试其他的。我想在LPP模式下,PICTIT3必须与旧MCU一起使用,而编程时可以选择“来自于工具的电源目标电路”。所以,为什么我不能用高压编程来从PICTIT3供电16FXXX?如果有人决定怎么做,我会感激他的!谢谢,谢尔盖。

以上来自于百度翻译


      以下为原文

   
Hi! Thanks for your answer! Ocasionally pulling down the PGM pin doesn't help.
And as I see, the High Voltage Programming mode is always available, regardless of the state of the LVP bit, by applying VIHH to the MCLR pin (DS30569C-page 102). 
What do you mean about the default ICSP mode? LVP configuration bit is set by the factory default to the PGM function, so this is the default setting. But I have so strange situation. If I read the PM after the failed programming, I can see that only two or three first adresses written correctly. And only the first 0x70 addresses are erased for PIC16F876! The same situation for PIC16F870, but for only 0x6F adresses while trying to use 16f870 in high voltage programming mode. I tried to use the LVP mode by applying the VDD to the PGM pin. In such a situation for the 16f876 the first address is not written, but the next 0x424 addresses are written succesfully. Program memory range is set to full range programming.
 
But the 16f870 has been programmed succesfully for all memory range in LVP mode! 
So I guess that the one sample of 16f876 is damaged. The other ones I'll test next Monday.
And I guess that PICkit3 has to be used with old MCUs in LVP mode while programming with the option "Power Target Circuit from Tool".
 
So, why I can't use the high voltage programming when powering the 16fxxx  from the PICkit3?
If anyone has a decision how to do it I would appreciate him!
 
Thanks.
Regards,
Sergey.
举报

张丽

2018-12-27 16:36:23
PIC16F876是一种老式器件,在电路串行编程中有几个问题。禁用低电压编程的配置并不总是对所有通电条件都有效。这就是为什么其他用户建议在PGM引脚上使用外部下拉电阻的原因。当PICTIT3被配置为为目标设备供电时,您的PICTIT3有麻烦编程的原因是,PICTIT3的VDD输出并不总是满足PIC16F97编程所需的最小电压。6设备。当你用任何ICSP设备程序员编程时,你可以给PIC16F876提供一个外部5伏±1%的运气。

以上来自于百度翻译


      以下为原文

   
The PIC16F876 is an old device and has several issues with In Circuit Serial Programming.
 
The configuration to disable Low Voltage Programming does not always seem to be effective for all power on conditions. This is why other users suggest using an external pull-down resistor on the PGM pin.
 
The reason your PICkit3 has trouble programming your PIC16F876 when configured to power the target device is that the VDD  output of the PICkit3 does not always meet the minimum voltage required to program a PIC16F876 device.
 
You will have better luck when you supply an external 5.0 volts ±1% to the PIC16F876 when programming with any ICSP device programmer.
举报

毛雅清

2018-12-27 16:43:52
我懂了!谢谢!这是真的,在编程MCU时,我有更多的外部VDD情况。但是有时它需要在BRAM外部的MCU中编程。我看到,新的微芯片的ICSPs arefirst的所有目标是使用外部VDD的PICS编程。我完全了解情况。在从PICTIT3为目标设备供电时,对旧图片编程的成功取决于USB电源能力,并取决于PICTIT3样本。谢谢!P.S.I测量VPP,同时从IPE或PIC3CMD(PIC3CMD/P16F876/I/V5.0/E)编程和擦除。它是大约5.06 V。键I是用于设置高电压MCLR。所以我看到PICTIT3没有被工具引导使用HVP模式。如果它指向和PIC超出电流限制,我看到VPP低于12 V(例如,10 V或8V的峰值)。但我看到VPP就像LVP模式一样。我看到了ISPGP VP选项。你不认为设置LVP或HVP模式的选择是否因为在PICTIT3中设置一些图片的HVP的一些问题而变灰了?这就是为什么IPE决定在HVP或LVP模式下编程哪一个PIC的原因?问候,谢尔盖。

以上来自于百度翻译


      以下为原文

   
I see! Thanks!
 

That's true and I have much more situations with the external Vdd when programming the on-board MCUs. But sometimes it needs to program the MCU in DIP outside the borad. I see that the new Microchip's ICSPs are first of all targeted to use the external Vdd for the PICs programming. I fully understand the situation. The success of programming the old PICs while powering the target device from PICkit3 depends of the USB power capabilities and depends of the PICkit3 sample. Thanks! 
 
p.s. I measured the Vpp while programming and erasing from the IPE or pic3cmd (pic3cmd /p16f876 /i /v5.0 /e). It was about 5.06 V. The key -I is for setting the high voltage MCLR. So I see that  PICkit3  wasn't directed by the Tool to use the HVP mode. If it was directed to and PIC was out of current limit I saw that the Vpp was lower than 12 V (for example, 10 V or 8V in peak). But I saw that the Vpp was like for LVP mode. And I see the ICSP VP options in IPE grayed out.
 
Don't you think that the options for setting LVP or HVP mode are grayed because of some problems with setting the HVP for some PICs in PICkit3? And so it's the reason why IPE decides which PIC to be programmed in HVP or which in LVP mode?
 
Regards,
Sergey.
举报

更多回帖

发帖
×
20
完善资料,
赚取积分