Difference between revisions of "DsPic-Raspberry programmer interface"

From wwwelab
Jump to navigation Jump to search
Line 17: Line 17:
 
   | '''Label
 
   | '''Label
 
   | '''Programmer I/O
 
   | '''Programmer I/O
 +
  | '''Picpgm function (invert)
 
   | '''Cable
 
   | '''Cable
 
|-
 
|-
Line 22: Line 23:
 
   | GND
 
   | GND
 
   | GND
 
   | GND
 +
  | -
 
   | Blue/Wh
 
   | Blue/Wh
 
|-
 
|-
 
   | 37
 
   | 37
   | GPIO26
+
   | BCM26
 
   | PGD1//470
 
   | PGD1//470
 +
  | DIN (0)
 
   | Brown
 
   | Brown
 
|-
 
|-
 
   | 35
 
   | 35
   | GPIO19
+
   | BCM19
 
   | PGD2//470
 
   | PGD2//470
 +
  | DOUT (0)
 
   | Blue
 
   | Blue
 
|-
 
|-
 
   | 33
 
   | 33
   | GPIO13
+
   | BCM13
 
   | PGC
 
   | PGC
 +
  | CLK (0)
 
   | Green
 
   | Green
 
|-
 
|-
 
   | 29
 
   | 29
   | GPIO05
+
   | BCM5
 
   | RST (when high)
 
   | RST (when high)
 +
  | MCLR (1)
 
   | Brown/Wh
 
   | Brown/Wh
 
|-
 
|-
 
   | 03
 
   | 03
   | GPIO02
+
   | BCM2
 
   | PGMmode (high)
 
   | PGMmode (high)
 +
  | PGM (0)
 
   | Orange
 
   | Orange
 
|}
 
|}
Line 58: Line 65:
  
 
The 12V pull-up is wired with a 100 Ohm resistor (version 1) and 470 ohm (original version). This is a non-essential situation as it was devised to create 4.3V  if PGMmode and RST were independent.
 
The 12V pull-up is wired with a 100 Ohm resistor (version 1) and 470 ohm (original version). This is a non-essential situation as it was devised to create 4.3V  if PGMmode and RST were independent.
 +
 +
The Picpgm column shows how to set the Picpgm configuration file in order to use this programmer with the GPIO's shown on the table. It also shows if the invert option should be selected for each of them.
  
 
==Software use==
 
==Software use==

Revision as of 20:19, 13 May 2020

dsPic-Raspberry programmer interface

A general purpose interface consisting in two opto-couplers have been developed to program the dsPic micro-controllers directly from the Raspberry, allowing remote maintenance and reprogramming of each de-localized unit.

It as to be powered by 12 V (minimum voltage 10.5V - maximum voltage 13.5V) dsPic node unregulated Vcc and feed by the Raspberry GP_I/O, with a common digital ground.

Pin-out and connections

Photo of the pic programmer.
Photo of the pic programmer.

The following table describes the pin-out assembly of the opt-programmer developed to be used with picpgm software.

Programmer pin-out
Rasp I/O Label Programmer I/O Picpgm function (invert) Cable
39 GND GND - Blue/Wh
37 BCM26 PGD1//470 DIN (0) Brown
35 BCM19 PGD2//470 DOUT (0) Blue
33 BCM13 PGC CLK (0) Green
29 BCM5 RST (when high) MCLR (1) Brown/Wh
03 BCM2 PGMmode (high) PGM (0) Orange

If RST low and PGMmode high the pic enter program mode (12V @ MCLR). If RST high (PGMmode any but should be low) the pic reset and hold. If PGMmode low and RST low the pic run with MCLR at high impedance (or pulled up from dsPicnode side.

PGD1 and PDG2 are summed with two 470 ohm resistors to the pic PGD PGC is connected to the pic PGC with one series resistor of 470 ohm.

The 12V pull-up is wired with a 100 Ohm resistor (version 1) and 470 ohm (original version). This is a non-essential situation as it was devised to create 4.3V if PGMmode and RST were independent.

The Picpgm column shows how to set the Picpgm configuration file in order to use this programmer with the GPIO's shown on the table. It also shows if the invert option should be selected for each of them.

Software use

The picpgm software is hosted here and should be used with the following script:


Bash file @ /etc/rc.local

CODE



Phyton script

CODE

A backup is also founded at elab1/...