1

我目前正在尝试在pic32mx250f128b中刻录 pinguino 引导加载程序,该引导加载程序与 arduino uno 兼容 5V。我想试试pic32芯片,但我现在没有pickit3,我只能访问pickit2。

因此,要刻录引导加载程序,我使用的是 arduino uno,并使用 pic32prog 中的 bitbang 草图尝试刻录它。

对于接线,我这样做了:

  • 所有 VDD 和 VUSB3V3BUS 引脚都连接到 arduino uno 的 3V3 稳压器。
  • 所有 VSS 引脚都连接到 arduino uno 的地。
  • Arduino D2 (PGC) 直接连接到 PGEC1
  • Arduino D3 (PGD) 直接连接到 PGED1
  • Arduino D4 (MCLR) 直接连接到 MCLR

但实际上,当我启动 pic32prog 时,我总是有这个输出:

Programmer for Microchip PIC32 microcontrollers, Version 2.0.218
Copyright: (C) 2011-2015 Serge Vakulenko
   (ascii ICSP coded by Robert Rozee)

  Adapter: ... OK1 OK2 - ascii ICSP v1E

No target found.

我还尝试了 PGEC2/PGED2 和 PGEC3/PGED3 这对夫妇。

我还没有尝试使用晶体,但我认为从我读到的内容来看,ICSP 编程不需要它。

现在这是我在面包板上所做的:

面包板上的照片

我不知道是什么导致了这个检测问题,

非常感谢您的帮助 :)

编辑:我尝试了几件事,这就是我所在的位置:

  • 我在 MCLR 上添加了上拉电阻,在 VDD 引脚上添加了电容器,以及其他推荐:仍然是错误No target found
  • 我看到 pic32prog 添加了与 pickit2 的兼容性,所以我尝试了一下:这次检测到了 pic,但我收到了这个错误:Unknown CPUID : ffffffff.我还尝试在 pickit2 上使用新的 pic32mx250,以确保它不是第一个损坏的。
  • 最后,为了重新检查我的连接,我找到了另一个版本的数据表。在这个中,PGECx 和 PGEDx 引脚似乎不兼容 5V...-> 所以这次我将使用 3.3v 兼容电路进行测试
4

2 回答 2

1

您需要 3k3 上拉到 PGC 和 PGD 上的 3v3 电源轨。这两个输出是“集电极开路”(模拟),3k3 电阻定义了馈送到目标 PIC32 的 PGC 和 PGD 引脚的逻辑“1”电压。

正如其他人所提到的,您还需要在 MCLR 上进行 10k 上拉。此外,您需要确保所有 Vcc 引脚(13 和 28)连接在一起,所有接地引脚(8、19 和 27)连接在一起,并且在引脚 20 和地之间有一个 10uF 低 ESR 陶瓷电容器(一个 22uF 的钽就可以了)。

请参阅此处的“ascii ICSP 构建指南”文章: http ://www.thebackshed.com/docregister/Browse.asp 该文章包含所需内容的示意图。

干杯,抢劫:-)

于 2017-04-17T14:04:00.210 回答
0

引脚 20 上的 10uF 低 ESR 陶瓷电容器至关重要。引脚 20 只连接到这个电容器,没有别的。没有它,PIC32 的内核将无法运行,也无法进行编程。

原因是 PIC32 的内核运行电压为 1.8 伏,而引脚 20 上的电容器是产生此电源的电路的一部分。在您的照片中,引脚 20 似乎没有连接任何东西。

干杯,抢劫:-)

于 2017-04-24T02:18:01.970 回答