Rev 206 Rev 211
1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3c.org/TR/html4/strict.dtd"> 1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3c.org/TR/html4/strict.dtd">
2 <html> 2 <html>
3 <head> 3 <head>
4 <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> 4 <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
5 <title> PICPGR301A </title> 5 <title> PICPGR301A </title>
6 <meta name="keywords" content="stavebnice MLAB programátor procesrů PIC Microchip"> 6 <meta name="keywords" content="stavebnice MLAB programátor procesrů PIC Microchip">
7 <meta name="description" content="Projekt MLAB, Programátor PICPGR"> 7 <meta name="description" content="Projekt MLAB, Programátor PICPGR">
8 <!-- AUTOINCLUDE START "Page/Head.cs.ihtml" DO NOT REMOVE --> 8 <!-- AUTOINCLUDE START "Page/Head.cs.ihtml" DO NOT REMOVE -->
9 <link rel="StyleSheet" href="../../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB základní styl"> 9 <link rel="StyleSheet" href="../../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB základní styl">
10 <link rel="shortcut icon" type="image/x-icon" href="Web/PIC/MLAB.ico"> 10 <link rel="shortcut icon" type="image/x-icon" href="../../../../../Web/PIC/MLAB.ico">
11 <script type="text/javascript" src="../../../../../Web/JS/MLAB_Menu.js"></script> 11 <script type="text/javascript" src="../../../../../Web/JS/MLAB_Menu.js"></script>
12 <!-- AUTOINCLUDE END --> 12 <!-- AUTOINCLUDE END -->
13 </head> 13 </head>
14   14  
15 <body lang="cs"> 15 <body lang="cs">
16   16  
17 <!-- AUTOINCLUDE START "Page/Header.cs.ihtml" DO NOT REMOVE --> 17 <!-- AUTOINCLUDE START "Page/Header.cs.ihtml" DO NOT REMOVE -->
18 <!-- ============== HLAVICKA ============== --> 18 <!-- ============== HLAVICKA ============== -->
19 <div class="Header"> 19 <div class="Header">
20 <script type="text/javascript"> 20 <script type="text/javascript">
21 <!-- 21 <!--
22 SetRelativePath("../../../../../"); 22 SetRelativePath("../../../../../");
23 DrawHeader(); 23 DrawHeader();
24 // --> 24 // -->
25 </script> 25 </script>
26 <noscript> 26 <noscript>
27 <p><b> Pro zobrazení (vložení) hlavičky je potřeba JavaScript </b></p> 27 <p><b> Pro zobrazení (vložení) hlavičky je potřeba JavaScript </b></p>
28 </noscript> 28 </noscript>
29 </div> 29 </div>
30 <!-- AUTOINCLUDE END --> 30 <!-- AUTOINCLUDE END -->
31   31  
32 <!-- AUTOINCLUDE START "Page/Menu.cs.ihtml" DO NOT REMOVE --> 32 <!-- AUTOINCLUDE START "Page/Menu.cs.ihtml" DO NOT REMOVE -->
33 <!-- ============== MENU ============== --> 33 <!-- ============== MENU ============== -->
34 <div class="Menu"> 34 <div class="Menu">
35 <script type="text/javascript"> 35 <script type="text/javascript">
36 <!-- 36 <!--
37 SetRelativePath("../../../../../"); 37 SetRelativePath("../../../../../");
38 DrawMenu(); 38 DrawMenu();
39 // --> 39 // -->
40 </script> 40 </script>
41 <noscript> 41 <noscript>
42 <p><b> Pro zobrazení (vložení) menu je potřeba JavaScript </b></p> 42 <p><b> Pro zobrazení (vložení) menu je potřeba JavaScript </b></p>
43 </noscript> 43 </noscript>
44 </div> 44 </div>
45 <!-- AUTOINCLUDE END --> 45 <!-- AUTOINCLUDE END -->
46   46  
47 <!-- ============== TEXT ============== --> 47 <!-- ============== TEXT ============== -->
48 <div class="Text"> 48 <div class="Text">
49 <p class="Title"> 49 <p class="Title">
50 Programátor procesorů PIC 50 Programátor procesorů PIC
51 </p> 51 </p>
52 <p class=Autor> 52 <p class=Autor>
53 Milan Horkel 53 Milan Horkel
54 </p> 54 </p>
55 <p class="Subtitle"> 55 <p class="Subtitle">
56 Programátor PICPGR3 je malý vývojový programátor pro programování 56 Programátor PICPGR3 je malý vývojový programátor pro programování
57 procesorů PIC firmy MICROCHIP. Umožňuje programované zařízení spustit 57 procesorů PIC firmy MICROCHIP. Umožňuje programované zařízení spustit
58 bez odpojování programátoru a může jej resetovat i napájet. 58 bez odpojování programátoru a může jej resetovat i napájet.
59 </p> 59 </p>
60 <p class="Subtitle"> 60 <p class="Subtitle">
61 <img width="454" height="412" src="Pictures/image001.jpg" 61 <img width="454" height="412" src="Pictures/image001.jpg"
62 alt="Deska programátoru"> 62 alt="Deska programátoru">
63 </p> 63 </p>
64 <p> 64 <p>
65 <a href="../PICPGR301A.cs.pdf"><img class="NoBorder" 65 <a href="../PICPGR301A.cs.pdf"><img class="NoBorder"
66 src="../../../../../Web/PIC/FileIco_PDF.ico" 66 src="../../../../../Web/PIC/FileIco_PDF.ico"
67 alt="Acrobat">&nbsp;PDF verze</a> 67 alt="Acrobat">&nbsp;PDF verze</a>
68 </p> 68 </p>
69   69  
70 <h1> Technické parametry </h1> 70 <h1> Technické parametry </h1>
71   71  
72 <table> 72 <table>
73 <tr> 73 <tr>
74 <th> Parametr </th> 74 <th> Parametr </th>
75 <th> Hodnota </th> 75 <th> Hodnota </th>
76 <th> Poznámka </th> 76 <th> Poznámka </th>
77 </tr> 77 </tr>
78 <tr> 78 <tr>
79 <td> Napájení </td> 79 <td> Napájení </td>
80 <td> +15V </td> 80 <td> +15V </td>
81 <td> Ochrana proti přepólování </td> 81 <td> Ochrana proti přepólování </td>
82 </tr> 82 </tr>
83 <tr> 83 <tr>
84 <td> Spotřeba </td> 84 <td> Spotřeba </td>
85 <td> 80mA / 100mA </td> 85 <td> 80mA / 100mA </td>
86 <td> Bez připojené aplikace / při programování </td> 86 <td> Bez připojené aplikace / při programování </td>
87 </tr> 87 </tr>
88 <tr> 88 <tr>
89 <td> Rozměry </td> 89 <td> Rozměry </td>
90 <td> 71 x 61 x 20 </td> 90 <td> 71 x 61 x 20 </td>
91 <td> Výška nad upevňovací deskou, bez přečnívajícího konektoru </td> 91 <td> Výška nad upevňovací deskou, bez přečnívajícího konektoru </td>
92 </tr> 92 </tr>
93 </table> 93 </table>
94   94  
95 <h1> Popis konstrukce </h1> 95 <h1> Popis konstrukce </h1>
96   96  
97 <h2> Úvodem </h2> 97 <h2> Úvodem </h2>
98   98  
99 <p> 99 <p>
100 Programátor PICPGR3 vychází ze starších verzí programátoru, je s nimi 100 Programátor PICPGR3 vychází ze starších verzí programátoru, je s nimi
101 funkčně kompatibilní a na rozdíl od nich je mechanicky řešen jako modul 101 funkčně kompatibilní a na rozdíl od nich je mechanicky řešen jako modul
102 pro stavebnici. 102 pro stavebnici.
103 </p> 103 </p>
104   104  
105 <p> 105 <p>
106 Programátor umožňuje programovat vybrané procesory PIC v režimu 106 Programátor umožňuje programovat vybrané procesory PIC v režimu
107 standardního programování (používá k tomu programovací napětí 12V). 107 standardního programování (používá k tomu programovací napětí 12V).
108 Sortiment podporovaných procesorů není dán konstrukcí hardwaru ale tím, 108 Sortiment podporovaných procesorů není dán konstrukcí hardwaru ale tím,
109 co podporuje software. 109 co podporuje software.
110 </p> 110 </p>
111   111  
112 <p> 112 <p>
113 Programátor umožňuje aplikace s procesory PIC nejen programovat v 113 Programátor umožňuje aplikace s procesory PIC nejen programovat v
114 zapojení ale i přímo spouštět, resetovat i pouze napájet napájecím 114 zapojení ale i přímo spouštět, resetovat i pouze napájet napájecím
115 napětím +5V a to bez odpojování programovacích vodičů (to kupodivu 115 napětím +5V a to bez odpojování programovacích vodičů (to kupodivu
116 neumí zdaleka každý programátor ale vývojář programů to velmi ocení). 116 neumí zdaleka každý programátor ale vývojář programů to velmi ocení).
117 </p> 117 </p>
118   118  
119 <h2> Zapojení modulu </h2> 119 <h2> Zapojení modulu </h2>
120   120  
121 <p> 121 <p>
122 <img width="420" height="864" src="Pictures/image002.gif" 122 <img width="420" height="864" src="Pictures/image002.gif"
123 alt="Schéma zapojení"> 123 alt="Schéma zapojení">
124 <img width="142" height="582" src="Pictures/image003.gif" 124 <img width="142" height="582" src="Pictures/image003.gif"
125 alt="Schéma zapojení zdroje"> 125 alt="Schéma zapojení zdroje">
126 </p> 126 </p>
127   127  
128 <p> 128 <p>
129 Napájecí napětí programátoru (konektor J1) by mělo být +15V aby byl 129 Napájecí napětí programátoru (konektor J1) by mělo být +15V aby byl
130 programátor schopen generovat programovací napětí VPP o hodnotě +12.5V. 130 programátor schopen generovat programovací napětí VPP o hodnotě +12.5V.
131 Tato hodnota je vyžadována pro programování procesorů s OTP pamětí. 131 Tato hodnota je vyžadována pro programování procesorů s OTP pamětí.
132 Procesory s pamětí FLASH nejsou tak striktní co se týká velikosti VPP 132 Procesory s pamětí FLASH nejsou tak striktní co se týká velikosti VPP
133 protože VPP používají pouze pro aktivaci programovacího režimu a stačí, 133 protože VPP používají pouze pro aktivaci programovacího režimu a stačí,
134 pokud je podstatně větší než základní napájecí napětí VDD (pozor, 134 pokud je podstatně větší než základní napájecí napětí VDD (pozor,
135 neplatí to pro některé starší procesory, které měli starší provedení 135 neplatí to pro některé starší procesory, které měli starší provedení
136 FLASH či EEPROM paměti). 136 FLASH či EEPROM paměti).
137 </p> 137 </p>
138   138  
139 <p> 139 <p>
140 Napájecí napětí +5V pro elektroniku programátoru se získává ve 140 Napájecí napětí +5V pro elektroniku programátoru se získává ve
141 stabilizátoru U1 a je používáno i pro napájení cílové aplikace. Spínání 141 stabilizátoru U1 a je používáno i pro napájení cílové aplikace. Spínání
142 napájení pro cílovou aplikaci zajišťují tranzistory Q1 a Q2 a ruční 142 napájení pro cílovou aplikaci zajišťují tranzistory Q1 a Q2 a ruční
143 spínač SW1. 143 spínač SW1.
144 </p> 144 </p>
145   145  
146 <p> 146 <p>
147 Programovací napětí VPP o hodnotě +12.5V stabilizuje U2 a spínají Q3 a 147 Programovací napětí VPP o hodnotě +12.5V stabilizuje U2 a spínají Q3 a
148 Q4. Tranzistor Q5 aktivuje MCLR# (RESET) procesoru. Vzhledem k tomu, že 148 Q4. Tranzistor Q5 aktivuje MCLR# (RESET) procesoru. Vzhledem k tomu, že
149 signál MCLR# i programovací napětí VPP sdílejí společný vývod procesoru 149 signál MCLR# i programovací napětí VPP sdílejí společný vývod procesoru
150 MCLR#/VPP, musí být zajištěno, že nedojde k aktivaci signálu MCLR# 150 MCLR#/VPP, musí být zajištěno, že nedojde k aktivaci signálu MCLR#
151 současně s programovacím napětím VPP. To zajišťuje ochranná logika, 151 současně s programovacím napětím VPP. To zajišťuje ochranná logika,
152 která je realizována v obvodu GAL U3. 152 která je realizována v obvodu GAL U3.
153 </p> 153 </p>
154   154  
155 <p> 155 <p>
156 V obvodu GAL je kromě ochranné logiky realizován i třístavový budič 156 V obvodu GAL je kromě ochranné logiky realizován i třístavový budič
157 řídících signálů. Volné vývody obvodu GAL jsou připraveny pro budoucí 157 řídících signálů. Volné vývody obvodu GAL jsou připraveny pro budoucí
158 rozšíření. Odpory R14, R15 a R16 zajišťují klidový stav na vstupech 158 rozšíření. Odpory R14, R15 a R16 zajišťují klidový stav na vstupech
159 obvodu GAL tak, aby programátor byl v neaktivním stavu pokud není 159 obvodu GAL tak, aby programátor byl v neaktivním stavu pokud není
160 připojen k počítači PC. <i>Na rychlosti obvodu GAL nezáleží, vyhoví 160 připojen k počítači PC. <i>Na rychlosti obvodu GAL nezáleží, vyhoví
161 kterýkoli GAL16V8 v pouzdru DIL.</i> 161 kterýkoli GAL16V8 v pouzdru DIL.</i>
162 </p> 162 </p>
163   163  
164 <p> 164 <p>
165 Propojovací kabel mezi PC a PICPGR3 je zapojen 1:1 samec-samec. 165 Propojovací kabel mezi PC a PICPGR3 je zapojen 1:1 samec-samec.
166 </p> 166 </p>
167   167  
168 <h2> Mechanická konstrukce </h2> 168 <h2> Mechanická konstrukce </h2>
169   169  
170 <p> 170 <p>
171 Programátor je proveden jako standardní stavebnicový modul. 171 Programátor je proveden jako standardní stavebnicový modul.
172 </p> 172 </p>
173   173  
174 <h2> Zapojení obvodu GAL </h2> 174 <h2> Zapojení obvodu GAL </h2>
175 175
176 <p> 176 <p>
177 Verze GAL4.EQN a jeho schématický ekvivalent. 177 Verze GAL4.EQN a jeho schématický ekvivalent.
178 </p> 178 </p>
179   179  
180 <p> 180 <p>
181 <img width="363" height="358" src="Pictures/image004.gif" 181 <img width="363" height="358" src="Pictures/image004.gif"
182 alt="Zapojení obvodu GAL"> 182 alt="Zapojení obvodu GAL">
183 </p> 183 </p>
184   184  
185 <h2> Programátorský model </h2> 185 <h2> Programátorský model </h2>
186 186
187 <p> 187 <p>
188 Programátor se připojuje na LPT port PC. Bázové adresy řídících 188 Programátor se připojuje na LPT port PC. Bázové adresy řídících
189 registrů LPT portů ukládá BIOS počítače do paměti na adresy 0:408H 189 registrů LPT portů ukládá BIOS počítače do paměti na adresy 0:408H
190 (hodnota 16 bitů) a obvykle bývá 3BCH, 378H nebo 278H. 190 (hodnota 16 bitů) a obvykle bývá 3BCH, 378H nebo 278H.
191 </p> 191 </p>
192 192
193 <p> 193 <p>
194 Používá se nejzákladnější jednosměrný režim LPT portu. Řídící registry 194 Používá se nejzákladnější jednosměrný režim LPT portu. Řídící registry
195 LPT mají pak tento význam: 195 LPT mají pak tento význam:
196 </p> 196 </p>
197   197  
198 <ul> 198 <ul>
199 <li> 3BCH/378H/278H Data směrem do tiskárny (v programátoru signály D0 až D7) </li> 199 <li> 3BCH/378H/278H Data směrem do tiskárny (v programátoru signály D0 až D7) </li>
200 <li> 200 <li>
201 <ul> 201 <ul>
202 <li> bit 0 – signál D0 - DATA </li> 202 <li> bit 0 – signál D0 - DATA </li>
203 <li> bit 1 – signál D1 – DATA output anable </li> 203 <li> bit 1 – signál D1 – DATA output anable </li>
204 <li> bit 2 – signál D2 – CLOCK </li> 204 <li> bit 2 – signál D2 – CLOCK </li>
205 <li> bit 3 – signál D3 – CLOCK output enable </li> 205 <li> bit 3 – signál D3 – CLOCK output enable </li>
206 <li> bit 4 – signál D4 – VCCON </li> 206 <li> bit 4 – signál D4 – VCCON </li>
207 <li> bit 5 – signál D5 – VPPON (lze jen spolu s VCCON) </li> 207 <li> bit 5 – signál D5 – VPPON (lze jen spolu s VCCON) </li>
208 <li> bit 6 – signál D5 – RESET (lze jen není-li VPPON) </li> 208 <li> bit 6 – signál D5 – RESET (lze jen není-li VPPON) </li>
209 <li> bit 7 – signál D7 – musí být 0 aby byl programátor aktivní </li> 209 <li> bit 7 – signál D7 – musí být 0 aby byl programátor aktivní </li>
210 </ul> 210 </ul>
211 </li> 211 </li>
212 <li> 3BEH/37AH/27AH Řízení tiskárny (v programátoru se nepoužívá) </li> 212 <li> 3BEH/37AH/27AH Řízení tiskárny (v programátoru se nepoužívá) </li>
213 <li> 3BDH/379H/279H Čtení stavu tiskárny (používá se jen 1 signál) <li> 213 <li> 3BDH/379H/279H Čtení stavu tiskárny (používá se jen 1 signál) <li>
214 <li> 214 <li>
215 <ul> 215 <ul>
216 <li> bit 6 – signál ACK – čtená data DQ alias DATA </li> 216 <li> bit 6 – signál ACK – čtená data DQ alias DATA </li>
217 </ul> 217 </ul>
218 </li> 218 </li>
219 </ul> 219 </ul>
220   220  
221 <h1> Osazení a oživení </h1> 221 <h1> Osazení a oživení </h1>
222   222  
223 <h2> Osazení </h2> 223 <h2> Osazení </h2>
224   224  
225 <p> 225 <p>
226 <img width="117" height="94" src="Pictures/image005.gif" 226 <img width="117" height="94" src="Pictures/image005.gif"
227 alt="Programovací konektor"> 227 alt="Programovací konektor">
228 </p> 228 </p>
229   229  
230 <p> 230 <p>
231 <img width="353" height="371" src="Pictures/image006.jpg" 231 <img width="353" height="371" src="Pictures/image006.jpg"
232 alt="Osazovák"> 232 alt="Osazovák">
233 </p> 233 </p>
234   234  
235 <table class="Soupiska"> 235 <table class="Soupiska">
236 <tr> 236 <tr>
237 <th> Reference </th> 237 <th> Reference </th>
238 <th> Název </th> 238 <th> Název </th>
239 </tr> 239 </tr>
240 <tr> 240 <tr>
241 <th colspan="2"> Odpory </th> 241 <th colspan="2"> Odpory </th>
242 </tr> 242 </tr>
243 <tr> 243 <tr>
244 <td> R9,R10,R11,R12 </td> 244 <td> R9,R10,R11,R12 </td>
245 <td> 100 </td> 245 <td> 100 </td>
246 </tr> 246 </tr>
247 <tr> 247 <tr>
248 <td> R4,R13 </td> 248 <td> R4,R13 </td>
249 <td> 470 </td> 249 <td> 470 </td>
250 </tr> 250 </tr>
251 <tr> 251 <tr>
252 <td> R1,R2,R3,R5,R6,R7 </td> 252 <td> R1,R2,R3,R5,R6,R7 </td>
253 <td> 1k </td> 253 <td> 1k </td>
254 </tr> 254 </tr>
255 <tr> 255 <tr>
256 <td> R8,R14,R15,R16 </td> 256 <td> R8,R14,R15,R16 </td>
257 <td> 4k7 </td> 257 <td> 4k7 </td>
258 </tr> 258 </tr>
259 <tr> 259 <tr>
260 <th colspan="2"> Kondenzátory </th> 260 <th colspan="2"> Kondenzátory </th>
261 </tr> 261 </tr>
262 <tr> 262 <tr>
263 <td> C2,C3,C5,C6 </td> 263 <td> C2,C3,C5,C6 </td>
264 <td> M1 </td> 264 <td> M1 </td>
265 </tr> 265 </tr>
266 <tr> 266 <tr>
267 <td> C4 </td> 267 <td> C4 </td>
268 <td> 10uF/35V </td> 268 <td> 10uF/35V </td>
269 </tr> 269 </tr>
270 <tr> 270 <tr>
271 <td> C1 </td> 271 <td> C1 </td>
272 <td> 220uF/25V </td> 272 <td> 220uF/25V </td>
273 </tr> 273 </tr>
274 <tr> 274 <tr>
275 <th colspan="2"> Diody </th> 275 <th colspan="2"> Diody </th>
276 </tr> 276 </tr>
277 <tr> 277 <tr>
278 <td> D1 </td> 278 <td> D1 </td>
279 <td> 1N4007 </td> 279 <td> 1N4007 </td>
280 </tr> 280 </tr>
281 <tr> 281 <tr>
282 <td> D2 </td> 282 <td> D2 </td>
283 <td> 1N4148 </td> 283 <td> 1N4148 </td>
284 </tr> 284 </tr>
285 <tr> 285 <tr>
286 <td> D3 </td> 286 <td> D3 </td>
287 <td> LED3mm, zelená </td> 287 <td> LED3mm, zelená </td>
288 </tr> 288 </tr>
289 <tr> 289 <tr>
290 <td> D4 </td> 290 <td> D4 </td>
291 <td> LED3mm, červená </td> 291 <td> LED3mm, červená </td>
292 </tr> 292 </tr>
293 <tr> 293 <tr>
294 <td> D5 </td> 294 <td> D5 </td>
295 <td> BZX85V006.2 </td> 295 <td> BZX85V006.2 </td>
296 </tr> 296 </tr>
297 <tr> 297 <tr>
298 <th colspan="2"> Tranzistory </th> 298 <th colspan="2"> Tranzistory </th>
299 </tr> 299 </tr>
300 <tr> 300 <tr>
301 <td> Q1,Q3,Q5 </td> 301 <td> Q1,Q3,Q5 </td>
302 <td> BC337 </td> 302 <td> BC337 </td>
303 </tr> 303 </tr>
304 <tr> 304 <tr>
305 <td> Q2,Q4 </td> 305 <td> Q2,Q4 </td>
306 <td> BC640 </td> 306 <td> BC640 </td>
307 </tr> 307 </tr>
308 <tr> 308 <tr>
309 <th colspan="2"> Integrované obvody </th> 309 <th colspan="2"> Integrované obvody </th>
310 </tr> 310 </tr>
311 <tr> 311 <tr>
312 <td> U1 </td> 312 <td> U1 </td>
313 <td> LM7805T </td> 313 <td> LM7805T </td>
314 </tr> 314 </tr>
315 <tr> 315 <tr>
316 <td> U2 </td> 316 <td> U2 </td>
317 <td> LM78L12Z </td> 317 <td> LM78L12Z </td>
318 </tr> 318 </tr>
319 <tr> 319 <tr>
320 <td> U3 </td> 320 <td> U3 </td>
321 <td> GAL16V8 </td> 321 <td> GAL16V8 </td>
322 </tr> 322 </tr>
323 <tr> 323 <tr>
324 <th colspan="2"> Mechanické součásti </th> 324 <th colspan="2"> Mechanické součásti </th>
325 </tr> 325 </tr>
326 <tr> 326 <tr>
327 <td> J1 </td> 327 <td> J1 </td>
328 <td> K375A </td> 328 <td> K375A </td>
329 </tr> 329 </tr>
330 <tr> 330 <tr>
331 <td> J2 </td> 331 <td> J2 </td>
332 <td> DB25F_90 </td> 332 <td> DB25F_90 </td>
333 </tr> 333 </tr>
334 <tr> 334 <tr>
335 <td> J3 </td> 335 <td> J3 </td>
336 <td> JUMP3 </td> 336 <td> JUMP3 </td>
337 </tr> 337 </tr>
338 <tr> 338 <tr>
339 <td> J4 </td> 339 <td> J4 </td>
340 <td> PIC_ISP </td> 340 <td> PIC_ISP </td>
341 </tr> 341 </tr>
342 <tr> 342 <tr>
343 <td> J5 </td> 343 <td> J5 </td>
344 <td> JUMP2 </td> 344 <td> JUMP2 </td>
345 </tr> 345 </tr>
346 <tr> 346 <tr>
347 <td> SW1 </td> 347 <td> SW1 </td>
348 <td> P-B143 </td> 348 <td> P-B143 </td>
349 </tr> 349 </tr>
350 </table> 350 </table>
351   351  
352 <h2> Oživení </h2> 352 <h2> Oživení </h2>
353   353  
354 <p> 354 <p>
355 Pokud jsou použité správné součástky (obvod GAL musí být naprogramovaný 355 Pokud jsou použité správné součástky (obvod GAL musí být naprogramovaný
356 !) a není chyba v zapojení (zkraty či jiné chyby) bude programátor 356 !) a není chyba v zapojení (zkraty či jiné chyby) bude programátor
357 fungovat na první zapojení. 357 fungovat na první zapojení.
358 </p> 358 </p>
359   359  
360 <p> 360 <p>
361 Základní oživení se provádí pomocí laboratorního zdroje. Nejprve 361 Základní oživení se provádí pomocí laboratorního zdroje. Nejprve
362 přesuneme vypínač SW1 do vypnutého stavu (směrem k LED indikátorům). 362 přesuneme vypínač SW1 do vypnutého stavu (směrem k LED indikátorům).
363 Při postupném zvyšování napájecího napětí kontrolujeme, zda 363 Při postupném zvyšování napájecího napětí kontrolujeme, zda
364 stabilizátor U1 stabilizuje napětí +5V a zda stabilizátor U2 364 stabilizátor U1 stabilizuje napětí +5V a zda stabilizátor U2
365 stabilizuje na cca +12.7V. Spotřeba programátoru by měla být řádu do 365 stabilizuje na cca +12.7V. Spotřeba programátoru by měla být řádu do
366 100mA (konkrétní hodnota záleží na tom, jakou spotřebu má použitý obvod 366 100mA (konkrétní hodnota záleží na tom, jakou spotřebu má použitý obvod
367 GAL. 367 GAL.
368 </p> 368 </p>
369   369  
370 <p> 370 <p>
371 K dalšímu oživování používáme testovací program TSTPGR.EXE, který 371 K dalšímu oživování používáme testovací program TSTPGR.EXE, který
372 umožňuje postupnou aktivaci jednotlivých signálů a jejich kombinací. 372 umožňuje postupnou aktivaci jednotlivých signálů a jejich kombinací.
373 Jednotlivé položky testu vypisují jednak co program nastavil a 373 Jednotlivé položky testu vypisují jednak co program nastavil a
374 informaci o tom, co by se mělo objevit na jednotlivých pinech 374 informaci o tom, co by se mělo objevit na jednotlivých pinech
375 programovacího konektoru. 375 programovacího konektoru.
376 </p> 376 </p>
377   377  
378 <p> 378 <p>
379 Stav H je napětí kolem +4V, stav L je obvykle napětí pod +0.1V a stav X 379 Stav H je napětí kolem +4V, stav L je obvykle napětí pod +0.1V a stav X
380 je napětí kolem +3V s tím, že po připojení odporu 10k na zem nebo na 380 je napětí kolem +3V s tím, že po připojení odporu 10k na zem nebo na
381 napájení +5V dostaneme napětí 0V nebo +5V. Pro testování, zda funguje 381 napájení +5V dostaneme napětí 0V nebo +5V. Pro testování, zda funguje
382 vstup PGD se na tento pin připojuje GND a VDD přes odpor 10k. 382 vstup PGD se na tento pin připojuje GND a VDD přes odpor 10k.
383 </p> 383 </p>
384   384  
385 <p> 385 <p>
386 Napětí VDD by mělo být v rozmezí +4.5V až +5.5V a VPP v rozmezí +12V až 386 Napětí VDD by mělo být v rozmezí +4.5V až +5.5V a VPP v rozmezí +12V až
387 +13V 387 +13V
388 </p> 388 </p>
389   389  
390 <h1> Programové vybavení </h1> 390 <h1> Programové vybavení </h1>
391   391  
392 <h2> Uživatelský návod PICPGR.EXE </h2> 392 <h2> Uživatelský návod PICPGR.EXE </h2>
393   393  
394 <p> 394 <p>
395 Program PICPGR.EXE je DOS program a přímo ovládá zadaný LPT port. V 395 Program PICPGR.EXE je DOS program a přímo ovládá zadaný LPT port. V
396 případě procesorů s pamětí FLASH je možné spouštět jej i z DOS okna pod 396 případě procesorů s pamětí FLASH je možné spouštět jej i z DOS okna pod
397 Windows 95/98. Program při spuštění bez parametrů vypíše nápovědu 397 Windows 95/98. Program při spuštění bez parametrů vypíše nápovědu
398 včetně úplného seznamu podporovaných procesorů a možností nastavení 398 včetně úplného seznamu podporovaných procesorů a možností nastavení
399 přepínačů. 399 přepínačů.
400 </p> 400 </p>
401   401  
402 <p> 402 <p>
403 Program zpracovává jednak standardní HEX soubor (takový, který generují 403 Program zpracovává jednak standardní HEX soubor (takový, který generují
404 obvyklé překladače pro procesor PIC) a alternativně textový soubor, 404 obvyklé překladače pro procesor PIC) a alternativně textový soubor,
405 který je výhodný zejména při ladění (vyčtení stavu, vizuální kontrola, 405 který je výhodný zejména při ladění (vyčtení stavu, vizuální kontrola,
406 definování parametrů v EEPROM paměti a podobně). Součástí datového 406 definování parametrů v EEPROM paměti a podobně). Součástí datového
407 souboru mohou být data pro paměť programu, pro paměť EEPROM, pro 407 souboru mohou být data pro paměť programu, pro paměť EEPROM, pro
408 testovací pole i pro konfigurační slovo. Nastavení konfiguračního slova 408 testovací pole i pro konfigurační slovo. Nastavení konfiguračního slova
409 lze (pouze pro procesory s pamětí FLASH) změnit uvedením přepínačů. 409 lze (pouze pro procesory s pamětí FLASH) změnit uvedením přepínačů.
410 Různé procesory mají různé přepínače. 410 Různé procesory mají různé přepínače.
411 </p> 411 </p>
412   412  
413 <p> 413 <p>
414 Pro většinu akcí je nutné uvést typ procesoru a případně i formát 414 Pro většinu akcí je nutné uvést typ procesoru a případně i formát
415 vstupního či výstupního souboru (přepínač HEX nebo TXT). Na pořadí 415 vstupního či výstupního souboru (přepínač HEX nebo TXT). Na pořadí
416 přepínačů nezáleží. 416 přepínačů nezáleží.
417 </p> 417 </p>
418   418  
419 <h3> Nápověda </h3> 419 <h3> Nápověda </h3>
420   420  
421 <p> 421 <p>
422 <samp>PICPGR</samp> 422 <samp>PICPGR</samp>
423 </p> 423 </p>
424   424  
425 <p> 425 <p>
426 Vypíše úplnou nápovědu včetně seznamu všech podporovaných procesorů, 426 Vypíše úplnou nápovědu včetně seznamu všech podporovaných procesorů,
427 jejich vlastností a přepínačů. 427 jejich vlastností a přepínačů.
428 </p> 428 </p>
429   429  
430 <p> 430 <p>
431 <samp>PICPGR &lt;procesor&gt;</samp> 431 <samp>PICPGR &lt;procesor&gt;</samp>
432 </p> 432 </p>
433   433  
434 <p> 434 <p>
435 Nápověda vypíše vlastnosti procesoru a jeho sady přepínačů pro 435 Nápověda vypíše vlastnosti procesoru a jeho sady přepínačů pro
436 předefinování stavu konfiguračních přepínačů. 436 předefinování stavu konfiguračních přepínačů.
437 </p> 437 </p>
438   438  
439 <h3> Mazání procesoru </h3> 439 <h3> Mazání procesoru </h3>
440   440  
441 <p> 441 <p>
442 <samp>PICPGR ERASE &lt;procesor&gt;</samp> 442 <samp>PICPGR ERASE &lt;procesor&gt;</samp>
443 </p> 443 </p>
444   444  
445 <p> 445 <p>
446 Smaže obsah všech pamětí procesoru i v případě, že je procesor zamčený. 446 Smaže obsah všech pamětí procesoru i v případě, že je procesor zamčený.
447 Funguje pouze pro procesory s pamětí FLASH. 447 Funguje pouze pro procesory s pamětí FLASH.
448 </p> 448 </p>
449   449  
450 <h3> Čtení procesoru </h3> 450 <h3> Čtení procesoru </h3>
451   451  
452 <p> 452 <p>
453 <samp>PICPGR READ &lt;soubor&gt; HEX &lt;procesor&gt;</samp> 453 <samp>PICPGR READ &lt;soubor&gt; HEX &lt;procesor&gt;</samp>
454 </p> 454 </p>
455   455  
456 <p> 456 <p>
457 <samp>PICPGR READ &lt;soubor&gt; TXT &lt;procesor&gt;</samp> 457 <samp>PICPGR READ &lt;soubor&gt; TXT &lt;procesor&gt;</samp>
458 </p> 458 </p>
459   459  
460 <p> 460 <p>
461 Přečte obsah všech pamětí procesoru a uloží je do výsledného HEX nebo 461 Přečte obsah všech pamětí procesoru a uloží je do výsledného HEX nebo
462 TXT souboru. 462 TXT souboru.
463 </p> 463 </p>
464   464  
465 <h3> Programování procesoru a verifikace </h3> 465 <h3> Programování procesoru a verifikace </h3>
466   466  
467 <p> 467 <p>
468 <samp>PICPGR PROGAM &lt;soubor&gt; HEX &lt;procesor&gt;</samp> 468 <samp>PICPGR PROGAM &lt;soubor&gt; HEX &lt;procesor&gt;</samp>
469 </p> 469 </p>
470   470  
471 <p> 471 <p>
472 <samp>PICPGR VERIFY &lt;soubor&gt; HEX &lt;procesor&gt;</samp> 472 <samp>PICPGR VERIFY &lt;soubor&gt; HEX &lt;procesor&gt;</samp>
473 </p> 473 </p>
474   474  
475 <p> 475 <p>
476 Provede naprogramování a kontrolu naprogramování procesoru dle zadaného 476 Provede naprogramování a kontrolu naprogramování procesoru dle zadaného
477 souboru (HEX nebo TXT). Programování automaticky provádí i kontrolu a 477 souboru (HEX nebo TXT). Programování automaticky provádí i kontrolu a
478 vypisuje případné nesrovnalosti. 478 vypisuje případné nesrovnalosti.
479 </p> 479 </p>
480   480  
481 <p> 481 <p>
482 V případě potřeby je možné změnit nastavení konfiguračního slova. Níže 482 V případě potřeby je možné změnit nastavení konfiguračního slova. Níže
483 uvedený příklad provede naprogramování procesoru PIC16F873 obsahem 483 uvedený příklad provede naprogramování procesoru PIC16F873 obsahem
484 souboru TEST.HEX ve formátu HEX s tím, že změní konfigurační bit CP 484 souboru TEST.HEX ve formátu HEX s tím, že změní konfigurační bit CP
485 (Code Protection) do stavu zapnuto a pole FOSC v konfiguračním slově 485 (Code Protection) do stavu zapnuto a pole FOSC v konfiguračním slově
486 (konfigurace oscilátoru) nastaví do stavu 01. 486 (konfigurace oscilátoru) nastaví do stavu 01.
487 </p> 487 </p>
488   488  
489 <p> 489 <p>
490 <samp>PICPGR PROGRAM TEST.HEX HEX PIC16F873 CP_ON FOSC_01</samp> 490 <samp>PICPGR PROGRAM TEST.HEX HEX PIC16F873 CP_ON FOSC_01</samp>
491 </p> 491 </p>
492   492  
493 <h3> Spouštění aplikace </h3> 493 <h3> Spouštění aplikace </h3>
494   494  
495 <p> 495 <p>
496 <samp>PICPGR RUN</samp> 496 <samp>PICPGR RUN</samp>
497 </p> 497 </p>
498   498  
499 <p> 499 <p>
500 <samp>PICPGR RESET</samp> 500 <samp>PICPGR RESET</samp>
501 </p> 501 </p>
502   502  
503 <p> 503 <p>
504 <samp>PICPGR STOP</samp> 504 <samp>PICPGR STOP</samp>
505 </p> 505 </p>
506   506  
507 <p> 507 <p>
508 Zapne napájení a spustí aplikaci, provede reset aplikace a vypne 508 Zapne napájení a spustí aplikaci, provede reset aplikace a vypne
509 napájení aplikace. Používá se při ladění aplikace při kterém se 509 napájení aplikace. Používá se při ladění aplikace při kterém se
510 neodpojuje programovací kabel od laděné aplikace. 510 neodpojuje programovací kabel od laděné aplikace.
511 </p> 511 </p>
512   512  
513 <h3> Konverze formátu datového souboru </h3> 513 <h3> Konverze formátu datového souboru </h3>
514   514  
515 <p> 515 <p>
516 <samp>PICPGR CONVERT &lt;vstup&gt; &lt;vystup&gt; HEX 516 <samp>PICPGR CONVERT &lt;vstup&gt; &lt;vystup&gt; HEX
517 &lt;procesor&gt;</samp> 517 &lt;procesor&gt;</samp>
518 </p> 518 </p>
519   519  
520 <p> 520 <p>
521 <samp>PICPGR CONVERT &lt;vstup&gt; &lt;vystup&gt; TXT 521 <samp>PICPGR CONVERT &lt;vstup&gt; &lt;vystup&gt; TXT
522 &lt;procesor&gt;</samp> 522 &lt;procesor&gt;</samp>
523 </p> 523 </p>
524   524  
525 <p> 525 <p>
526 Převede soubor ve formátu HEX na TXT nebo naopak. Uváděný typ procesoru 526 Převede soubor ve formátu HEX na TXT nebo naopak. Uváděný typ procesoru
527 slouží ke kontrole rozsahu. 527 slouží ke kontrole rozsahu.
528 </p> 528 </p>
529   529  
530 <h2> Popis programu </h2> 530 <h2> Popis programu </h2>
531   531  
532 <p> 532 <p>
533 Program je napsaný v jazyce Turbo Pascal verze 6 a vznikl postupným 533 Program je napsaný v jazyce Turbo Pascal verze 6 a vznikl postupným
534 rozšiřováním původního jednoduchého programu pro programování obvodů 534 rozšiřováním původního jednoduchého programu pro programování obvodů
535 PIC16F84. Zdrojové texty jsou dostupné a komentované. 535 PIC16F84. Zdrojové texty jsou dostupné a komentované.
536 </p> 536 </p>
537   537  
538 <p> 538 <p>
539 Program podporuje kromě programátoru PICPGR i profesionální programátor 539 Program podporuje kromě programátoru PICPGR i profesionální programátor
540 ALL-03. 540 ALL-03.
541 </p> 541 </p>
542   542  
543 </div> 543 </div>
544   544  
545 <!-- AUTOINCLUDE START "Page/Footer.cs.ihtml" DO NOT REMOVE --> 545 <!-- AUTOINCLUDE START "Page/Footer.cs.ihtml" DO NOT REMOVE -->
546 <!-- ============== PATIČKA ============== --> 546 <!-- ============== PATIČKA ============== -->
547 <div class="Footer"> 547 <div class="Footer">
548 <script type="text/javascript"> 548 <script type="text/javascript">
549 <!-- 549 <!--
550 SetRelativePath("../../../../../"); 550 SetRelativePath("../../../../../");
551 DrawFooter(); 551 DrawFooter();
552 // --> 552 // -->
553 </script> 553 </script>
554 <noscript> 554 <noscript>
555 <p><b> Pro zobrazení (vložení) hlavičky je potřeba JavaScript </b></p> 555 <p><b> Pro zobrazení (vložení) hlavičky je potřeba JavaScript </b></p>
556 </noscript> 556 </noscript>
557 </div> 557 </div>
558 <!-- AUTOINCLUDE END --> 558 <!-- AUTOINCLUDE END -->
559   559  
560 </body> 560 </body>
561 </html> 561 </html>