Tartalomjegyzék:

JDM programozó áttekintés: 9 lépés
JDM programozó áttekintés: 9 lépés

Videó: JDM programozó áttekintés: 9 lépés

Videó: JDM programozó áttekintés: 9 lépés
Videó: Fejegység teszt 📋 Olcsó Kínai VS Drága Kínai VS PIONEER 🚧 1DIN & 2DIN & Kihajlós 2024, Július
Anonim
JDM programozó áttekintés
JDM programozó áttekintés

A JDM népszerű PIC programozó, mert soros portot, minimális komponenseket használ, és nem igényel áramellátást. De van zűrzavar odakinn, sok programozó variációval a neten, melyek melyik PIC -kel dolgoznak? Ebben az „utasításban” a JDM -et teszteltük, és bemutatom, hogyan kell szimulálni az áramkört a Spice segítségével, amely minden kérdésre válaszol!

Kellékek

LTspice, amely letölthető az analóg eszközökről itt.

Itt is szüksége van a JDM áramkör fájljaira.

1. lépés: Soros port követelményei

Soros port követelményei
Soros port követelményei

A JDM egy soros portot igényel, amely megfelel az EIA232 előírásoknak, ideális esetben +12/-12 feszültségszinttel.

A Texas Instruments Line Driver MC1488 adatlapja szerint (3. ábra)

Kimeneti impedancia = 4V/8mA = 500 ohm.

Rövidzárlati áramkorlát = 12 mV, időkorlát nélkül - nem károsítja a chipet.

A vonali vevő bemeneti impedanciája = 3-7 k ohm ajánlott.

A régebbi asztali számítógépek soros portjai 12V/-12V feszültséget használnak, amelyek megfelelnek ennek a követelménynek.

Az újabb laptop PC -k soros portjai alacsonyabb feszültséget használnak. A JDM működhet vagy nem - a válasz összetettebb.

2. lépés: PIC programozási követelmények

PIC programozási követelmények
PIC programozási követelmények

A PIC programozási követelményekkel kapcsolatos információkat a Microchip szolgáltatja. A fentiek egy tipikus eszközre vonatkoznak.

3. lépés: JDM specifikáció

JDM specifikáció
JDM specifikáció

Elveszett az eredeti JDM webhely az idők ködében? Ez arra enged következtetni, hogy a tervező mit szánt eredetileg a specifikációnak.

  1. Adjon meg VDD = 5 V -ot, és legfeljebb IDD = 2mA (az „in socket” verzió esetén)
  2. Adjon meg VHH = 13V, és legfeljebb IHH = 0,2mA értéket.
  3. MCLR Emelkedési idő tVHHR = 1uS max.
  4. Az ICSP verziónak képesnek kell lennie arra, hogy alacsonyan húzza az MCLR-t a 22k felhúzás ellen a célon.

4. lépés: Az áramkör leírása

Áramkör leírása
Áramkör leírása

A JDM1 ábra a PICPgm webhelyről vett „standard” JDM áramkörön alapul. Ez a „PIC in Socket” programozó, ahol a PIC a TX és RTS csapokból veszi az áramot. Az eredeti diagramot nehéz volt megérteni, ezért újrarajzoltam, a fentről lefelé haladó áramlás szokásos konvenciójával. És hozzáadtam a „RESET”, „PROG” és „RTS” LED jelzőfényeket, amelyek szükségesek az építés és a tesztelés során. Remélhetőleg ezeknek nincs káros hatása a viselkedésre.

Az áramkör tervezésének szokásos konvenciója minden szempontból közös, de a JDM legfontosabb jellemzője, hogy a soros port földje (GND) csatlakozik a VDD -hez. Ez zavart okoz, mivel a soros port jeleit a GND, a PIC jeleket a logikai földhöz (VSS) viszonyítva mérik.

Amikor a TX magas, a Q1 két előre torzított diódaként viselkedik. (A Q1 kollektor nem fordított előfeszítésű, mint a normál tranzisztoros működésnél). A Q1 kollektor tölti a C2 -t, amelyet Zener (D3) rögzít VDD+8V -ra. A Q1 emitter 13V -ot szállít az MCLR -hez a Program/Verify módhoz.

Amikor a TX lecsökken, a C3 kondenzátor feltöltődik a D1-en keresztül, és a VSS-t a Zener (D5) rögzíti a VDD-5V-on. A TX-et is (VSS-0.6) D1 rögzíti. A Q1 ki van kapcsolva, a C1 tartja a töltést a következő programozási impulzusért. Az MCLR -t 0V -on rögzíti a D2, így a PIC visszaáll.

Ha az RTS magas, akkor az óra a PGC felé továbbítódik. D4 bilincs PGC magas VDD logikai értékkel. Ha az RTS alacsony, a C3 kondenzátort D6-on keresztül töltik, és a VSS-t a Zener (D5) rögzíti a VDD-5V-on. A D6 rögzíti a PGC -t a VSS -nél vagy a logika 0 -nál.

A programozás során a DTR -en kiküldött adatokat a PGD olvassa be, amelyet a PIC bemenetként konfigurál. Ha a DTR magas, a Q2 „emitterkövetőként” működik, és a PGD feszültsége körülbelül (VDD-0,6) vagy 1. logika. Ha a DTR alacsony, a Q2 rossz tranzisztorként működik (az emitter és a kollektor csapjai megfordulnak). A Q2 alacsonyra húzza a PGD -t, amelyet a D7 rögzít a VSS -nél vagy a logika 0 -nál.

Az ellenőrzés során a PIC konfigurálja a PGD -t kimenetként az adatok soros portra küldésére. A DTR -t magasra kell állítani, és az adatokat a CTS -en kell olvasni. Ha a PGD kimenet magas, a Q2 ki van kapcsolva, CTS = DTR = +12V. Ha a PGD kimenet alacsony, a Q2 be van kapcsolva. A Q2 kollektor áramot (12V+5V)/(1k+1k5) = 7mA húz a DTR -ből, és alacsony CTS -t húz a VSS -hez.

5. lépés: Készüljön fel a szimulációra

Készüljön fel a szimulációra
Készüljön fel a szimulációra

Töltse le az LT spice -t, mentse és nyissa meg az itt található áramkörfájlokat (*.asc). Az áramkör szimulálásához meg kell adnunk néhány bemenetet, majd „nyomon kell követnünk” a kimeneteket. A V1, V2 V3 szimulálja a 12V soros portot R11, R12, R13 kimeneti impedanciával.

  • A V1 2 programimpulzust generál a TX -en 0,5 ms -tól 4,5 ms -ig
  • A V2 adatátviteli impulzusokat generál a DTR -en 1,5 és 4,5 ms között
  • A V3 órajel impulzusokat generál az RTS -en 0,5-3,5 ms között

A V4, X1, R15 és R16 komponensek mind a szimuláció részét képezik.

  • A V4 2 impulzust generál 2,5 és 4,5 ms között az adatok ellenőrzéséhez.
  • Az X1 jumper szimulálja a PGD kimenetét.
  • R15, R16 szimulálja a PIC „betöltését” VDD -re és MCLR -re.

6. lépés: Az ICSP módosítása

Az ICSP módosítása
Az ICSP módosítása
Az ICSP módosítása
Az ICSP módosítása

A JDM3 ábra az „áramkörben” programozás verzióját mutatja. Az eredetihez hasonló módosítások

  1. Cserélje ki a ZIF foglalatot ICSP csatlakozóra.
  2. A PIC mostantól a tápellátásról a célkörhöz (V5) táplál.
  3. Távolítsa el az 5 V -os zenert (D5).
  4. A kis 100pF kondenzátort (C4) a PIC mellé helyezzük a céláramkörön.
  5. A LED -ek lehetőség szerint áramot kapnak az áramköri kártyáról.
  6. Az MCLR felhúzó ellenállás (R10) és a dióda (D10) szükséges a céláramkörön.
  7. FIGYELEM. A céltáblának „lebegő” tápegységgel kell rendelkeznie, ideális esetben akkumulátorral.
  8. Ne csatlakoztassa a célföldelést (VSS) a számítógép/PC földhöz más számítógépes portok csatlakoztatásával egyidejűleg a JDM -mel.

A JDM1 szimulálása után nyilvánvalóvá vált a C2 hosszú töltési idejének problémája. Aztán a Fruttenboel elolvasása után úgy tűnik, hogy a C2 és Q1 módosítást adtak hozzá az eredetihez. El sem tudom képzelni, hogy a C2 és a Q1 mit akar tenni a problémákon kívül. Tehát a JDM4 esetében visszatérünk a Fruttenboel régebbi dizájnjához, amely egyszerű és érthető. D1 és D3/LED2 MCLR bilincs a VSS és a VDD+8V között. Az R1 értéke 3 k3 -ra csökken, éppen elegendő a LED2 12V -os megvilágításához.

A JDM4 gyengébb soros portokkal való együttműködésre is alkalmas. Amikor a TX magas (+9V), a TX áramforrás = (9-8)/(1k +3k3) = 0,2ma, éppen elég ahhoz, hogy magasra húzza az MCLR-t, bár nem elegendő a LED2 megvilágításához. Amikor a TX lecsökken (kb. -7V), a TX áramelnyelő = (9-7)/1k = 2mA. LED1 áram = (7-2 led esetén)/(2k7) = 1,8 mA. MCLR lehúzó áram = 7-5,5/3k3 = 0,5mA.

Ezt az áramkört is tesztelték (JDM5 szimuláció) annak megállapítására, hogy mi történik a +/- 7V soros portokkal, ha nincs elegendő feszültség a VHH = 13V fenntartásához. A C1 célja most nyilvánvalóvá válik, a C1 rövid +ve lökést hoz létre az MCLR -ben, egy 33us tüskét a TX emelkedő szélén, elég hosszú ahhoz, hogy a PIC programozási módba lépjen. De távolítsa el az X2 jumpert (tiltsa le a LED1 -et), mivel nincs elegendő áram ahhoz, hogy az MCLR alacsony legyen és a LED1 együtt világítson. Amikor a TX alacsony, a TX áramelnyelő = (7V-5,5V)/(1k+3k3) = 0,3mA, éppen elég ahhoz, hogy az MCLR-t alacsonyan húzza az R10 felhúzóval szemben.

7. lépés: Szimulációs eredmények

Szimulációs eredmények
Szimulációs eredmények
Szimulációs eredmények
Szimulációs eredmények
Szimulációs eredmények
Szimulációs eredmények

A grafikus fájlok megtekintéséhez jobb, ha jobb egérgombbal kattint az alábbi linkekre, majd válassza a "Hivatkozás megnyitása az új lapon" lehetőséget

1. szimuláció: MCLR, VSS és RTS nyoma az eredeti JDM1 esetén. Azonnal megfigyelhető az 1., 2. és 3. megfigyelés.

2. szimuláció: MCLR és VSS nyoma, valamint RTS módosított JDM2 esetén, amely javítja a korábbi problémákat.

3. szimuláció: PGD, VSS és PGC nyoma a JDM2 adatok küldéséhez program módban. 4. megfigyelés 3,5 mS -nél.

4. szimuláció: PGD, VSS és CTS nyoma a JDM2 számára ellenőrzési módban (X1 jumper beillesztve). rendben

5. szimuláció: MCLR, VSS, PGD és PGC nyoma JDM3 esetén. Az áramkör áramellátását használó ICSP sok problémát megold.

6. szimuláció: MCLR, VSS, PGD és PGC nyoma JDM4 +/- 9V soros porton keresztül. Az MCLR azonnal emelkedik, teljesen működik.

7. szimuláció: MCLR, VSS és TX nyoma a JDM5 esetében +/- 7V soros porttal és az X2 jumperrel. A C1 +ve lökést (tüske) hoz létre az MCLR emelkedő szélén, ami majdnem elegendő ahhoz, hogy az MCLR -t TX felett 13V -ra tolja.

8. lépés: Következtetések

A Spice nagyon jó abban, hogy felfedje az áramkör működésének „rejtett titkait”. Nyilvánvaló, hogy a JDM áramkör működik és kompatibilis sok PIC lapkával, de az alábbi megfigyelések feltárják a lehetséges korlátokat/kompatibilitási problémákat/hibákat?

  1. Az MCLR hosszú emelkedési ideje, míg a C2 a VX -re töltődik a TX első impulzusán. Sikertelen specifikáció 3.
  2. A soros port a C2 -t tölti, ha a TX magas, az RTS pedig alacsony. De az RTS feladata a C3 töltése is. Ha mindkettő egyszerre történik, ez nagyobb terhelést okoz az RTS -nek, következésképpen a C3 elveszíti a töltést (a VSS emelkedik) 2 ms -on a szimuláción. Sikertelen specifikáció 1.
  3. A C3 elveszíti a töltést (a VSS emelkedni kezd), miután az óraimpulzusok leállnak 3,5 ms -nál.
  4. Mi a C2 célja, egyáltalán szükség van rá?

Megoldások

  1. Feltételezhetően a PICPgm egy „körkörös” szoftvert használ. Hosszú TX impulzust kell alkalmaznia a C2 előtöltésére, majd csak a második TX impulzus után léphet programozási módba? A szimulációhoz csökkentettem a C2 értékét 1uF -ra, hogy 1 ms emelkedési időt adjon. Nem ideális megoldás.
  2. A C2 és C3 felosztása egymástól függetlenül történik. A JDM2, C2 egy apró módosítása a VSS helyett a GND -re hivatkozik.
  3. JDM3 megoldotta. Az ICSP sokkal megbízhatóbb, mivel a PIC -t céláramkör táplálja.
  4. A JDM4 megoldja az 1. problémát. Ez egy egyszerű konstrukció, amely teljesen megszünteti a C2 -t.

9. lépés: És végül

És végül
És végül

A puding bizonyítéka az evés. Ez a JDM működik, ezért használja tovább.

És a javaslataim a következők:

  • használja a JDM2 -t az aljzatok programozásához és a 12 V -os soros portokhoz,
  • használja a JDM4-et +/- 9V feletti ICSP programozókhoz és soros portokhoz,
  • +/- 7V feletti soros portokhoz használja a JDM4-et, eltávolítva az X2 jumpert.

Hivatkozások:

Analog Devices LT fűszer

picpgm

Fruttenboel

Kövesse a PIC projekteket a sunyi sarokban

Ajánlott: