Programátor pro procesory PIC 1. Technické parametry
Transkript
MLAB PICprogUSB02A Programátor pro procesory PIC Milan Horkel,Miroslav Janás Modul USB programátoru procesorů PIC od firmy MICROCHIP. Programátor je kompatibilní s programátorem PICkit 2 od firmy MICROCHIP. Modul nepotřebuje ke své činnoti napájení, je napájen z USB portu. Modul umožňuje měnit napájecí napětí cílové aplikace, lze ho použít jako logický analyzátor, jako omezený převodník RS232 – USB, jako programátor eeprom. Programátorem nelze naprogramovat starší PIC 16F84 (novější 16F84A již ano). 1. Technické parametry Parametr Hodnota Poznámka Napájení 5V Napájeno z USB rozhraní Napájení cílového zařízení 2.5 - 5V z USB lze nastavit pomocí SW Omezeno USB portem Maximálně cca 90mA Spotřeba cca 10mA Bez cílového zařízení Interface USB 1.1, USB 2.0 USB kabel A-B Kompatibilita PICkit2 PK2CMD PICKit2 – MS windows PK2CMD – Linux, MS windows PICPROGUSB02A.doc / / Jakub Kákona / http://www.mlab.cz 1 / 10 MLAB PICprogUSB02A Rozměry 70x40x20mm Výška nad nosnou deskou 2. Popis konstrukce 2.1. Úvodem Protože nové počítače a zejména notebooky již nemají oblíbený LPT port ke kterému se připojují různé jednoduché programátory procesorů, naklonovali jsme z dostupných pramenů tento programátor, který se připojuje přes všudypřítomnou USB sběrnici. Konstrukce vychází konktrétně z „PICkit2 User Guide“, dokument „51553E.pdf“, ze stránek Microchipu. V dokumentu je kompletní popis i schéma zapojení. Aby byla konstrukce jednodušší a univerzálnější, byly vynechány paměti eeprom a změněny některé součástky ( typ, pouzdro). Dále byl přidán přepínač, který odpojuje programovací piny při použítí programátoru jako logického analyzátoru a převodníku RS232-USB. 2.2. Zapojení modulu Procesor a napájecí část. Do původního zapojení od microchipu je přídána pojistka F1, konektory J2 a J3. J2 vývod napájení z USB portu, J3 vývod napájení pro cílovou aplikaci. Dále jsou vynechány eeprom paměti. VC C _U SB 1 2 3 4 5 6 7 8 9 10 11 12 13 14 S_M C LR VPP_F B V D D _TG T_F B IS P _ D A TA IS P _ C L K AU X M C LR _TG T O SC 1 A O SC 1 O SC 2 LED _BU SY VPP_PU M P TG T_adj O SC 2 X1 B PIC M C L R # /V P P R A 0 /A N 0 R A 1 /A N 1 R A 2 /A N 2 /V R E F R A 3 /A N 3 /V R E F + R A 4 /T 0 C K I R A 5 /A N 4 /S S # /L V D IN G N D O S C 1 /C L K I O S C 2 /C L K O /R A 6 R C 0 /T1 O S O /T1 C K I R C 1 /T 1 O S I/C C P 2 R C 2 /C C P 1 V_U SB _ P IC 1 8 F 2 5 5 0 _ _ 2 8 _ P IN 2 20M H z C 3 470nF 2 2 U 1 S_PG D S_PG C TL V D D _TG T_P V D D _TG T_N VPP_O N U SB_D P U SB_D M VC C _U SB C 6 100nF 1 1 1 28 27 26 25 24 23 22 21 20 19 18 17 16 15 2 C 5 22pF 1 C 4 22pF P G D /R B 7 P G C /R B 6 P G M /R B 5 R B4 C C P 2 /R B 3 IN T 2 /R B 2 IN T 1 /R B 1 IN T 0 /R B 0 VD D G N D D T /R X /R C 7 C K /T X /R C 6 D + /V P /R C 5 D -/V M /R C 4 F1 R XE 075E _S M D C 1 100nF C 2 1 0 u F /1 6 V R 4 2k7 VC C _U SB VC C _U SB VD D _TG T J1 C M P D 1 2 3 4 1 U SB_D M U SB_D P 2 J2 2 VC U SBD U SBD G N A M 1 M 2 2 5 6 1 3 5 JU M P 2X3 1 C JU M P 2X3 1 U SB_B_01 J3 1 3 5 PICPROGUSB02A.doc / / Jakub Kákona / http://www.mlab.cz 2 / 10 MLAB PICprogUSB02A LED, tlačítko SW1, programovací konektory. Tlačítko SW1 je použito pro funkci „abort trigger“ při použití programátoru jako logického analyzátoru. D1, červená LED, indikuje činnost programátoru. D2, žlutá LED, nás informuje o tom, že je použito výstupní napětí „tgt power“. D3, zelená LED, znamená přítomnost USB napětí. Self ISP S e lf _ I S P J4 PG C PG D VD D LED _BU SY D 3 Y G D 1 R 2 470 T_C LK T_D A TA V D D _TG T R 3 470 1 C R S_PG C S_PG D 5 6 S_M C LR Target ISP T_M C LR 1 A1 33 D 2 2C R 1 470 TL 1 2 3 A A 2 2 VC C _U SB 2C 1 PU SH 050x050 SW 1 R 32 2 1 VC C _U SB G N D M C L R # /V P P PIC_ISP VC C _U SB V D D _TG T_P 1 2 3 5 6 J5 T a rg e t_ IS P PG C PG D VD D G N D M C L R # /V P P PIC_ISP Generátor napětí pro MCLR. Osazuje se pouze jedna cívka. Buď L1 nebo L2. Zapojení je nezměněmo oproti originálu. L1 680uH R 17 A C 7 4 7 u F /2 5 V 100k D 6 Q 6 BC 807SM D C T_M C LR 2 2 R 23 10k R 25 4k7 VPP_O N M C LR _TG T 1 Q 8 BC 817SM D 2 E 1 1 B C R 28 10k C R 29 2k7 R 27 10k B Q 9 BC 817SM D PICPROGUSB02A.doc / / Jakub Kákona / http://www.mlab.cz E 2 1 VPP_F B VPP_PU M P R 26 100 1 Q 7 BC 817SM D B A T48S M D 2 1k 2 B 1 R 24 E 1 C 2 A C B C 1 1 1 E C L2 # 2 2 C 9 1 0 u F /1 6 V 2 A V C C _TG T 3 / 10 MLAB PICprogUSB02A Schéma zapojení pro tvorgu napětí „tgt power“ (VCC_TGT) pro cílovou aplikaci. Oproti původnímu zapojení je použit jiný typ operačního zesilovače. 5 M C P 6 0 0 1 T -I/O T G U 2 2 4 1 G Q 5 BS250SM D D A C 12 100nF C 13 1 0 u F /1 6 V C 1 R 22 10k 1 1 2 2 R 20 10k R 21 10k C 11 100nF 1 1 2 2 C 10 100nF 2 1 V C C _TG T 2 VC C _U SB 1 2 OA 3 R 19 100 2 1 R 18 10k VC C _U SB S VC C _U SB TG T_adj Spínač „tgt power“ , převodník napětí a přepínač SW2. Na následujícím schématu, levá část, je tranzistorový spínač napětí „tgt power“ (VCC_TGT). V originálním schématu je použita součástka, která sdružuje v sobě dva fet tranzistory Q1 a Q3. Dostupnější jsou ale tranzistory každý zvlášť. Odpory R33, R34 a R35 jsou použity jako propojky v PCB. Deska je díky nim jednostranná. V pravé části s diodou D5 je jednoduchý převodník napětí, tvořen s tranzistory Q2, Q4 a Q10. Přepínač SW2 přepíná funkci datových signálů buď do programovacího konektoru ISP, nebo do oddělených konektorů J7 a J8. V D D _TG T_F B V C C _TG T VD D _TG T 2 VC C _U SB C 8 100nF 2 S W 2 -1 S 2 1 1 1 2 R 35 0 R 5 10k 1 2 G R 6 2 1 10 R 7 2 Q 3 BS170S M D R 10 4k7 B C B A T48S M D 1 2 R 34 0 S W 2 -2 D 5 1N 4148SM D IS P _ D A T A 1 2C S R 14 10k JU M P 2X1 1 Q 2 B C 807SM D J7 s w it c h C D 4 2 V D D _TG T_N A R 12 2 2 10 1 R 30 2 1 s w it c h J8 JU M P 2X1 R 31 33 2 AU X 1 J6 E 10 T_D A TA 1 1 C 1 Q 4 B C 807SM D 1 6 R 16 4k7 1 B AU X 4 5 33 E R 15 820 R 13 2 G 2 R 11 1k T_C LK 1 A D 1 3 33 1 R 33 0 D R 9 2k7 1 2 E 2 R 8 4k7 1 2 1 V D D _TG T_P Q 1 BS250SM D IS P _ C L K PICPROGUSB02A.doc / / Jakub Kákona / http://www.mlab.cz C B Q 10 BC 807SM D 4 / 10 PICprogUSB02A MLAB 2.3. Mechanická konstrukce Modul je navržen jako standardní modul do stavebnice MLAB s upevňovacími sloupky v rozích. J1 je USB konektor pro připojení k počítači PC J2 USB power - napájecí napětí z USB portu J3 tgt power - napájecí napětí pro cílovou aplikaci (2.5V až 5V) J4 self ISP – konektor pro prvotní naprogramování firmware J5 je ISP programovací konektor SW1 abort trigger - tlačítko logického analyzátoru SW2 přepíná programovací piny mezi ISP konektorem a konektry J6, J7, J8 PICPROGUSB02A.doc / / Jakub Kákona / http://www.mlab.cz 5 / 10 PICprogUSB02A MLAB 3. Osazení a oživení 3.1. Osazení Modul je navržen na jednostranné desce.Při osatování je potřeba značné dávky trpělivosti a hodně času. I přesto, že jseme chtěli navrhnout jednoduchý a univerzální programátor, má modul 88 součástek a to při osazení, kdy hledáme co kam patří zabere více času. Deska při pohledu ze strany součástek Deska při pohledu ze strany spojů PICPROGUSB02A.doc / / Jakub Kákona / http://www.mlab.cz 6 / 10 PICprogUSB02A PICPROGUSB02A.doc / / Jakub Kákona / http://www.mlab.cz MLAB 7 / 10 PICprogUSB02A MLAB Seznam použitých součástek Quantity 6 3 1 2 1 1 1 1 2 1 1 1 2 1 1 1 2 1 1 4 2 2 2 4 1 3 3 3 8 3 4 4 2 1 1 1 2 3 1 1 1 1 1 Reference Part C1,C6,C8,C10,C11,C12 100nF C2,C9,C13 10uF/16V C3 470nF C4,C5 22pF C7 47uF/25V D1 R D2 Y D3 G D6,D4 BAT48SMD D5 1N4148SMD F1 RXE075E_SMD J1 USB_B_01 J2,J3 JUMP2X3 J4 Self_ISP J5 Target_ISP J6 AUX J7,J8 JUMP2X1 L1 680uH L2 axialni GME 611-035 M1,M2,M3,M4 HOLE_M3 M5,M6 FIDU M7,M8 FIDU_PASTE Q5,Q1 BS250SMD P-FET Q2,Q4,Q6,Q10 BC807SMD PNP Q3 BS170SMD N-FET Q7,Q8,Q9 BC817SMD NPN R1,R2,R3 470 R4,R9,R29 2k7 R5,R14,R20,R21,R22,R23,R27,R28 10k R6,R12,R30 10 R7,R13,R31,R32 33 R8,R10,R16,R25 4k7 R24,R11 1k R15 820 R17 100k R18 10k R26,R19 100 R33,R34,R35 0 SW1 P-B1720 SW2 switch U1 _PIC18F2550__28_PIN U2 MCP6001T-I/OTG X1 20MHz PICPROGUSB02A.doc / / Jakub Kákona / http://www.mlab.cz PCB Footprint C0805 ELYTB C0805 C0805 ELYTC LED3 LED3 LED3 MINIMELF SOD87 F1812 USB_B_01 JUMP2X3 PIC_ISP PIC_ISP JUMP2X1 JUMP2X1 L1210_MIJA LL100 HOLE_M3 FIDU FIDU_PASTE SOT23 SOT23 SOT23 SOT23 R0805 R0805 R0805 R0805 R0805 R0805 R0805 R0805 R0805 R1206 R0805 R1206 P-B1720 SW-2XDPDT SO28_300 SOT23-5 XTAL050 8 / 10 PICprogUSB02A MLAB 3.2. Oživení Pokud je deska dobře osazená, zbývá jen do procesoru nahrát firmware. Potřebujeme externí programátor, který zvládne naprogramovat procesor PIC 18F2550. Nyní je pro programátor firmware 2.32.0. Soubor firmaware, v době psaní tohoto dukumentu, se jmenoval „PK2V023200.hex“. Po naprogramování lze kdykoli provést upgrade firmware, bez nutnosti znovu programovat procesor externím programátorem. 3.2.1. Nahrání procesoru v programátoru Do konektoru Self ISP (J4) zasuneme programovací kabel a nahrajeme do procesru PIC 18F2550 aktuální firmware. (nyní PK2V023200.hex). Před programováním je dobré, si rozmyslet, jak budeme programátor napájet. Pokud externí programátor potřebuje externí napájení, můžeme náš nový modul zasunout do USB kabelu k PC. Napájení se tak bude brát z našeho modulu. 4. Programové vybavení S programátorem můžeme pracovat v Linuxu i v MS windows. Pro windows je program PICkit2. Práce s programátorem je uživatelsky příjemnější. Pro Linux lze použít PK2CMD. Jedná se o ovládání programátoru příkazovým řádkem. Existuje PK2CMD i pro příkazovou řádku pro MS windows. Nelze použít MS DOS. Ten nemá podporu USB. 4.1. Použití programátoru v programu PICkit 2 Náš programátor se po připojení k PC nahlásí jako zařízení USB HID. Nyní spustíme program PICkit 2 a můžeme začít programovat. Pokud je připojen cílový procesor, programátor ho pozná a je připraven s ním komunikovat. Klávesovou zkratkou ctr+I vybereme náš hex soubor a tlačítkem „write“ cílový procesor naprogramujeme. Pokud ladíme cílovou aplikaci a potřebujeme často překládat zdrojový program, použijeme tlačítko „Auto Import HEX + Write Device“. Nyní se po každé změně hex souboru, například přeložením zrojového kodu, automaticky naprogramuje procesor, aniž bychom museli někde něco odkliknout nebo spustit. V programu PICkit 2, můžeme volbou „Tools/UART tool...“ použít náš programátor jako jednoduchý převodník USB – RS232. Dále volbou „Tools/Logic tool...“ lze programátor přepnout do režimu „logic I/O“ nebo „analyzer“. V těchto režimech lze sledovat logické úrovně třeba naší laděné cílové aplikace. Další možnosti jsou popsány v nápovědě a v samotném dokumentu PICkit2 User Guide. Poznamenám, že po nainstalování lze v textovém souboru „PICkit 2 Readme.txt“ rychle najít co lze naprogramovat, jsou tam uvedeny i paměti eeprom a další. 4.2. Použití s programem PK2CMD Jedná se o požití programátoru s příkazovým řádkem. Jak v Linuxu, tak v MS windows. Příkaz PK2CMD /? Zobrazí nápovědu. V linuxu můžeme místo lomítka „/“ použít mínus „-“. PICPROGUSB02A.doc / / Jakub Kákona / http://www.mlab.cz 9 / 10 PICprogUSB02A MLAB Příkaz PK2CMD /PPIC16F88 /FPROGRAM.HEX /M /A3.3 naprogramuje náš zvolený procesor PIC16F88 hex souborem PROGRAM.HEX. /M znamená smazání a naprogramování, /A3.3 nastaví „tgt power“ na 3.3V. Další možnosti jsou uvedeny v dokumentu „Readme For PK2CMD.txt“, nebo právě v nápovědě. PICPROGUSB02A.doc / / Jakub Kákona / http://www.mlab.cz 10 / 10
Podobné dokumenty
Modul pro práci s procesory ARM rady STM32
R0805
56k
R0805
1k5
PUSH050x050 P-B1720
SOT223
LM1117MPX
TQFP64 05
STM32F10xRxT
XTAL010/LG #32768Hz
XTAL050
8MHz
Návod na použití plnicí soupravy pro inkoustové
Pro
plnění
inkoustových
zásobníků
použijte plnicí soupravy RPX8-A (černá),
RPX8-C (azurová), RPX8-M (purpurová),
RPX8-Y (žlutá), pro zásobník PGi 5Bk
použijte soupravu RPX5-A, které můžete
zakoupit...
PDF verze
2,44mA. Baterii je možné při vybíjení odpojit od konektoru pro připojení zátěže spínačem
tvořeným tranzistory Q7 a Q8 a zabránit tak hlubokému vybití baterie. Při nabíjení je zdroj
proudu (měnič) p...
Půjčovna SITECH katalog 2013/2014.
speciální funkce patří například možnost skenování nepřístupných míst.
SPS930 je dodávána s kompletním příslušenstvím včetně odrazného hranolu,
měřické tyčky, stativu a kontroleru TSC3 se stavebním...
Osmibitové mikrořadiče Microchip
V České republice jsou nejrozšířenější tři řady mikrořadičů PIC :
Základní řada (Base-Line) s pamětí OTP nebo Flash až 2KB, instrukční soubor má 33
instrukcí, jako periferie jsou na čipu osmibitové...