ISPcable II - propox
ISPcable II - propox
ISPcable II - propox
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
<strong>ISPcable</strong> <strong>II</strong><br />
Programator w systemie mikrokontrolerów<br />
AT89S i AVR firmy Atmel.<br />
REV Beta 1.0<br />
Instrukcja<br />
użytkownika<br />
Evalu<br />
ation Board<br />
s for ‘51, AVR, ST,<br />
PIC microcontrollers Sta-<br />
rter Kits Embedded Web Serve<br />
rs Prototyping Boards Minimodules<br />
for microcontrollers, etherdesigning<br />
Evaluation Boards for<br />
net controllers, RFID High Spe-<br />
ed In System programmers for<br />
AVR, PIC, ST microcontrollers<br />
Microprocesor systems, PCB<br />
‘51, AVR, ST, PIC microcontrollers<br />
Starter Kits Embedded Web<br />
Servers Prototyping Boards mi-<br />
nimodules for microcontrollers,<br />
ethernet controllers, RFID High<br />
Speed In Systems programme-<br />
rs for AVR, PIC, ST microcontrlollers<br />
Microprocesor systems,<br />
PCB designing Evaluation Bo-<br />
ards for `51, AVR, ST, PIC microcontrollers<br />
Starter Kits Embe-<br />
dded Web Serwers Prototyping<br />
Boards Minimodules for microcontrollercontrollers,<br />
ethernet controllers,<br />
High Speed In System program-<br />
mers for AVR, PIC, ST microco-<br />
Microprocesor<br />
R<br />
Many ideas one solution<br />
Systems, PCB Designing<br />
Evaluation<br />
Boards
Wprowadzenie<br />
Dziękujemy Państwu za zakup naszego programatora <strong>ISPcable</strong> <strong>II</strong>. Mamy nadzieje że<br />
szybkość i uniwersalność naszego Programatora pozwoli Państwu w pełni docenić<br />
zalety programowania w systemie ISP oferowanego przez mikrokontrolery firmy Atmel.<br />
<strong>ISPcable</strong> <strong>II</strong> jest zaawansowanym programatorem ISP dla procesorów rodziny AVR i<br />
AT89 firmy Atmel. <strong>ISPcable</strong> <strong>II</strong> daje projektantowi zintegrowane i stabilne narzędzie do<br />
programowania w systemie wszystkich mikrokontrolerów AVR ISP poprzez 10<br />
wyprowadzeniowe złącze. Programator automatycznie dobiera maksymalną prędkość<br />
złącza RS232, oraz interfejsu ISP, co pozwala na programowanie z maksymalną<br />
prędkością dostępną dla programowanego układu, co ma szczególne znaczenie w<br />
przypadku programowania mikrokontrolerów rodziny ATmega z pamięcią Flash do<br />
128kB. <strong>ISPcable</strong> <strong>II</strong> może programować mikrokontrolery zasilane napięciem od 1,8 do 6V.<br />
Tak szeroki zakres napięć pracy uzyskano dzięki buforowaniu sygnałów linii ISP, co<br />
dodatkowo zwiększyło odporność układu na zakłócenia. Do programatora dołączony jest<br />
program ProProg pracujący w systemie Windows. Użytkownik oprócz podstawowych<br />
funkcji takich jak programowanie i odczyt Pamięci Flash, EEPROM, fuse i lock bitów, ma<br />
możliwość ustawiania konfiguracji sygnału RESET, częstotliwości zegara ISP, czasu<br />
zapisu pamięci Flash i EEPROM. Programator emuluje programator AVRprog firmy<br />
Atmel co pozwala na jego współpracę z darmowym środowiskiem AVRStudio i aplikacją<br />
BASCOM, oraz wszystkimi programami obsługującymi ten programator.<br />
Życzymy samych sukcesów i dużo satysfakcji przy projektowaniu i<br />
uruchamianiu nowych urządzeń mikroprocesorowych.<br />
Cechy<br />
• Kompatybilny z programem AVRStudio<br />
• Programowanie procesorów AT89S, AT90S (AVR), Atmega, Attiny<br />
• Duża szybkość programowania<br />
• Podłączenie do standardowego portu szeregowego RS232<br />
• Automatyczna negocjacja maksymalnej prędkości portu RS232<br />
• Automatyczny lub ręczy wybór częstotliwości sygnału SCK magistrali ISP<br />
• Automatyczne lub ręczne ustawienie polaryzacji sygnału RESET magistrali ISP<br />
• Uniwersalny algorytm programowania umożliwiający implementację przyszłych układów<br />
• Buforowanie magistrali ISP, umożliwiające poprawne programowanie mikrokontrolerów<br />
zasilanych napięciem w przedziale od 1,8 do 6V, oraz zwiększenie odporności na zakłócenia<br />
zewnętrzne<br />
• Obsługa diody LED sygnalizującej programowanie i multipleksera magistrali ISP układu<br />
docelowego<br />
• Stan pracy programatora sygnalizowany na wbudowanej diodzie LED<br />
• Standardowe 10-wyprowadzeniowe złącze do układu docelowego w standardzie Atmela<br />
• Zasilanie programatora z układu docelowego lub z zewnętrznego zasilacza<br />
• Małe wymiary<br />
2
Programowane układy<br />
Poniżej znajduje się lista układów programowanych przez programator współpracujący z<br />
programem ProProg. W miarę pojawiania się nowych układów lista ta będzie rozszerzana. Lista<br />
programowanych mikrokontrolerów przez programator współpracujący z programem AVRStudio<br />
dostępna jest na stronach Atmela www.atmel.com<br />
AT89S tinyAVR AVR megaAVR<br />
AT89S8252<br />
AT89S53<br />
AT89S52<br />
ATtiny12<br />
ATtiny15<br />
ATtiny22<br />
ATtiny26<br />
AT90S1200<br />
AT90S2313<br />
AT90S2323<br />
AT90S2333<br />
AT90S2343<br />
AT90S4414<br />
AT90S4433<br />
AT90S4434<br />
AT90S8515<br />
AT90S8534<br />
AT90S8535<br />
ATmega8<br />
ATmega16<br />
ATmega32<br />
ATmega323<br />
ATmega603<br />
ATmega103<br />
ATmega128<br />
ATmega161<br />
ATmega162<br />
ATmega163<br />
ATmega8515<br />
ATmega8535<br />
Czasy programowania<br />
Mikrokontroler<br />
Fosc Flash Write (s) EEPROM Write (s)<br />
(MHz) 3.3V 5V 6V 3.3V 5V 6V<br />
AT89S8252 24 TBD TBD TBD TBD TBD TBD<br />
AT89S8252 12 TBD TBD TBD TBD TBD TBD<br />
AT89S8252 4 TBD TBD TBD TBD TBD TBD<br />
AT89S53 24 TBD TBD TBD TBD TBD TBD<br />
AT89S53 12 TBD TBD TBD TBD TBD TBD<br />
AT89S53 4 TBD TBD TBD TBD TBD TBD<br />
AT90S1200 12 TBD TBD TBD TBD TBD TBD<br />
AT90S1200 1 TBD TBD TBD TBD TBD TBD<br />
AT90S2313 12 TBD TBD TBD TBD TBD TBD<br />
AT90S2313 1 TBD TBD TBD TBD TBD TBD<br />
AT90S8515/8535 8 TBD TBD TBD TBD TBD TBD<br />
AT90S8515/8535 1 TBD TBD TBD TBD TBD TBD<br />
ATmega103 6 TBD TBD TBD TBD TBD TBD<br />
ATmega103 1 TBD TBD TBD TBD TBD TBD<br />
ATmega323 8 TBD TBD TBD TBD TBD TBD<br />
ATmega323 1 TBD TBD TBD TBD TBD TBD<br />
ATmega128 16 TBD TBD TBD TBD TBD TBD<br />
ATmega128 1 TBD TBD TBD TBD TBD TBD<br />
Uwaga: W tabeli podano jedynie minimalne czasy programowania niektórych mikrokontrolerów.<br />
TBD – czasy zostaną podane w następnej wersji dokumentacji<br />
3
2<br />
1<br />
Opis programatora<br />
Power<br />
LED<br />
Jumper<br />
RS232<br />
ISP<br />
Power<br />
RS232<br />
LED<br />
Jumper<br />
ISP<br />
- Zewnętrzne zasilanie programatora<br />
- Złacze 9 D-SUB żeńskie do podłączenia z portem szeregowym PC<br />
- Sygnalizacja trybu pracy programatora<br />
miganie<br />
- gotowość<br />
ciągłe świecenie - programowanie<br />
- Zworka zasilania w wypadku zasilania z układu docelowego zworka zamknięta<br />
- 10-wyprowadzeniowe złącze ISP do układu docelowego<br />
MOSI<br />
LED<br />
RST<br />
SCK<br />
MISO<br />
VCC<br />
GND<br />
GND<br />
GND<br />
GND<br />
Złącze ISP programatora<br />
OPIS WYPROWADZEŃ<br />
MOSI SPI - sygnał danych Master wy / Slave we<br />
LED Sygnał sterowania diodą LED i multiplekserem<br />
RST Sygnał RESET układu docelowego<br />
SCK<br />
SPI - sygnał zegarowy<br />
MISO SPI - sygnał danych Master we / Slave wy<br />
VCC Napięcie układu docelowego 1.8 - 6V<br />
GND<br />
Masa Programatora<br />
Sygnały magistrali SPI w kablu poprzedzielane zostały sygnałem masy co wpływa na zmniejszenie<br />
zakłóceń między sąsiednimi sygnałami. Złącze ISP jest kompatybilne ze standardem 10-wyprowadzeniowym<br />
firmy Atmel.<br />
4
Podłączenie z układem docelowym<br />
Połączenie z układem docelowym powinno być wykonane przy pomocy załączonego 10-żyłowego<br />
kabla paskowego zakończonego standardowymi wtykami IDC z rastrem 2.54mm. Układ docelowy<br />
powinien posiadać również złącze ISP o układzie wyprowadzeń identycznym z złączem ISP<br />
programatora. Linie magistrali ISP łączymy z odpowiadającymi im liniami magistrali SPI<br />
mikrokontrolera, jak pokazano na poniższym rysunku. Dodatkowo programator wyposażony jest w<br />
sygnał LED służący do wysterowania diody LED sygnalizującej programowanie.<br />
VTG<br />
VTG<br />
JP2<br />
2<br />
4<br />
6<br />
8<br />
10<br />
1<br />
3<br />
5<br />
7<br />
9<br />
ISP Header<br />
Reset circuit<br />
MOSI<br />
LED<br />
RST<br />
CLK<br />
MISO<br />
470R - 1k<br />
ISP ACTIVE<br />
VTG<br />
1<br />
2<br />
3<br />
4<br />
5<br />
6<br />
7<br />
8<br />
9<br />
10<br />
11<br />
12<br />
13<br />
14<br />
15<br />
16<br />
17<br />
18<br />
19<br />
20<br />
PB0/T0<br />
PB1/T1<br />
PB 2 /AIN0<br />
PB 3 /AIN1<br />
PB4/SS<br />
PB5/MOSI<br />
PB6/MISO<br />
PB 7 /SC K<br />
RESET<br />
PD0/RXD<br />
PD 1 /TX D<br />
PD2/INT0<br />
PD3/INT1<br />
PD4<br />
PD5/OC1A<br />
PD6/W R<br />
PD7/RD<br />
XTAL2<br />
XTAL1<br />
GND<br />
VC C<br />
PA 0 /A D0<br />
PA 1 /A D1<br />
PA 2 /A D2<br />
PA 3 /A D3<br />
PA 4 /A D4<br />
PA 5 /A D5<br />
PA 6 /A D6<br />
PA 7 /A D7<br />
ICP<br />
ALE<br />
OC 1B<br />
PC7/A15<br />
PC6/A14<br />
PC5/A13<br />
PC4/A12<br />
PC3/A11<br />
PC2/A10<br />
PC1/A9<br />
PC0/A8<br />
40<br />
39<br />
38<br />
37<br />
36<br />
35<br />
34<br />
33<br />
32<br />
31<br />
30<br />
29<br />
28<br />
27<br />
26<br />
25<br />
24<br />
23<br />
22<br />
21<br />
AT90S8515<br />
Bezpośrednie podłączenie z mikrokontrolerem AT90S8515<br />
Sygnał LED może również służyć do przełączania multipleksera oddzielającego sygnały MOSI,<br />
MISO, SCK od reszty systemu na czas programowania. Rozwiązanie takie powinno być<br />
zastosowanie w systemach w których do magistrali SPI podłączone są inne układy np. pamięć<br />
Flash, układ RTC. Eliminuje ono możliwość przypadkowego zapisu do tych układów w czasie<br />
programowania mikrokontrolera. Sygnał LED w momencie programowania przyjmuje poziom niski.<br />
Połączenie sygnałów ISP do mikrokontrolera przy pomocy multipleksera pokazano na poniższym<br />
rysunku.<br />
VTG<br />
JP2<br />
2<br />
4<br />
6<br />
8<br />
10<br />
1<br />
3<br />
5<br />
7<br />
9<br />
ISP Header<br />
Reset circuit<br />
MOSI<br />
LED<br />
RST<br />
CLK<br />
MISO<br />
VTG<br />
470R - 1k<br />
PB5<br />
PB6<br />
PB7<br />
ISP ACTIVE<br />
Podłączenie z mikrokontrolerem AT90S8515 z wykorzystaniem multipleksera<br />
W celu podłączenia programatora <strong>ISPcable</strong> <strong>II</strong> do układu docelowego z złączem ISP w innym<br />
standardzie koniecznie jest wykonanie odpowiedniego adaptera.<br />
12<br />
13<br />
2<br />
1<br />
5<br />
3<br />
6<br />
11<br />
10<br />
9<br />
ISP multiplexer<br />
X0<br />
X1<br />
Y0<br />
Y1<br />
Z0<br />
Z1<br />
IN H<br />
A<br />
B<br />
C<br />
X<br />
Y<br />
Z<br />
14<br />
15<br />
4<br />
4053/74HC4053<br />
1<br />
2<br />
3<br />
4<br />
5<br />
6<br />
7<br />
8<br />
9<br />
10<br />
11<br />
12<br />
13<br />
14<br />
15<br />
16<br />
17<br />
18<br />
19<br />
20<br />
PB0/T0<br />
PB1/T1<br />
PB 2 /AIN0<br />
PB 3 /AIN1<br />
PB4/SS<br />
PB5/MOSI<br />
PB6/MISO<br />
PB 7 /SC K<br />
RESET<br />
PD0/RXD<br />
PD 1 /TX D<br />
PD2/INT0<br />
PD3/INT1<br />
PD4<br />
PD5/OC1A<br />
PD6/W R<br />
PD7/RD<br />
XTAL2<br />
XTAL1<br />
GND<br />
AT90S8515<br />
VC C<br />
PA 0 /A D0<br />
PA 1 /A D1<br />
PA 2 /A D2<br />
PA 3 /A D3<br />
PA 4 /A D4<br />
PA 5 /A D5<br />
PA 6 /A D6<br />
PA 7 /A D7<br />
ICP<br />
ALE<br />
OC 1B<br />
PC7/A15<br />
PC6/A14<br />
PC5/A13<br />
PC4/A12<br />
PC3/A11<br />
PC2/A10<br />
PC1/A9<br />
PC0/A8<br />
40<br />
39<br />
38<br />
37<br />
36<br />
35<br />
34<br />
33<br />
32<br />
31<br />
30<br />
29<br />
28<br />
27<br />
26<br />
25<br />
24<br />
23<br />
22<br />
21<br />
VTG<br />
5
Konwerter poziomów sygnałów ISP<br />
W celu zapewnienia poprawnej pracy programatora z napięciami układu docelowego różnymi od<br />
napięcia zasilania programatora zastosowano konwertery poziomów sygnałów ISP. Układy<br />
konwersji zostały zaprojektowane do pracy z napięciem układu docelowego od 1.8V do 6V.<br />
<strong>ISPcable</strong> <strong>II</strong> może być zasilany z zewnętrznego źródła zasilania lub bezpośrednio z układu<br />
docelowego. Kiedy napięcie zasilania pobierane jest z układu docelowego jego wartość powinna<br />
wynosić od 4.5 do 5.5V.<br />
Sygnały pomiędzy programatorem a układem docelowym można podzielić na dwie grupy: wejścia<br />
MISO i wyjścia MOSI, SCK, RST, LED. Oprócz regeneracji sygnałów magistrali ISP bufory<br />
konwerterów poziomów sygnałów ograniczają prąd wejściowy i wyjściowy. Bufory zastosowano<br />
zarówno dla wejść jak i wyjść programatora. Dokumentacje techniczną układów buforowych<br />
74HC244 można znaleźć na stronie www.philips.com. Implementacja konwertera poziomów<br />
sygnałów dla linii wyjściowych (MOSI, SCK, RST, LED) pokazana została na poniższym rysunku.<br />
VCC<br />
VTG<br />
VTG<br />
From uC<br />
1 2<br />
33R<br />
To Target<br />
ISP HEADER<br />
ZENER<br />
Konwerter poziomów napięć wyjścia<br />
W układzie docelowym linie MOSI, SCK, RST powinny być podłączone z napięciem zasilania<br />
rezystorem podciągającym o wartości 10k. Implementacja konwertera poziomów dla linii wejściowej<br />
programatora MISO pokazana została na poniższym rysunku.<br />
VTG<br />
VTG<br />
VCC<br />
From Target<br />
33R<br />
10k<br />
VTG<br />
1 2<br />
o uC<br />
ISP HEADER<br />
ZENER<br />
Konwerter poziomów napięć wejście<br />
6
Zasilanie programatora<br />
Programator może być zasilany na dwa sposoby:<br />
• Poprzez złącze ISP. W tym wypadku napięcie zasilania systemu VTG powinno zawierać się<br />
w przedziale od 4.5 do 5.5V, zworka wewnątrz pozostaje zamknięta. Prąd pobierany przez<br />
programator wynosi max. 50mA.<br />
• Poprzez złącze POWER programatora. W tym wypadku napięcie zasilania systemu VTG<br />
powinno zawierać się w przedziale od 1.8 do 6V, zworka wewnątrz programatora<br />
programatora pozostaje otwarta. Natomiast zasilanie programatora powinno się odbywać<br />
poprzez wtyk o średnicy bolca 2.5mm, napięcie to powinno wynosić odpowiednia 9-15V dla<br />
napięcia stałego DC i 7-13 dla napięcia zmiennego AC. W wypadku zasilania programatora<br />
napięciem stałym DC polaryzacja jest nieistotna. Należy jednak pamiętać, że masa zasilania<br />
podawanego na złącze POWER nie może być połączona z masą złącza ISP i masą systemu<br />
docelowego.<br />
Implementacja układu zasilania wewnątrz programatora <strong>ISPcable</strong> <strong>II</strong> została pokazana na poniższym<br />
rysunku.<br />
POWER<br />
JUMPER<br />
VCC<br />
VTG<br />
3<br />
2<br />
1<br />
7805<br />
POWER<br />
Level conventer<br />
ISP HEADER<br />
Układ zasilania programatora<br />
7
Dane techniczne<br />
Wymiary<br />
: 55 x 53 x 16 mm<br />
Waga<br />
: około 0,1 kg<br />
Podłączenie do PC<br />
: Port szeregowy 9-pin D-SUB żeńskie<br />
Prędkość komunikacji<br />
: max. 115200 bit/s - prędkość negocjowana<br />
Kabel programujący<br />
: długość 50cm<br />
Złącze programujące<br />
: 10-wyprowadzeń IDC 0.1’’ standard Atmela<br />
Częstotliwość zegara ISP : max 250kHz min 10kHz<br />
Napięcie układu docelowego : VTG 1.8 – 6.0V<br />
Zasilanie<br />
: wymaga zasilania z układu docelowego lub zewnętrznie<br />
z układu docelowego<br />
VTG 4.5 – 5.5V Is max 50mA.<br />
z zewnętrznego zasilacza<br />
Vpower 7-12 DC 6-15 AC Ip max 50mA<br />
VTG 1.8 – 6.0V Is max 5mA<br />
Pomoc techniczna<br />
W celu uzyskana pomocy technicznej prosimy o kontakt support@<strong>propox</strong>.com. Prosimy również o<br />
zamieszczenie następujących danych:<br />
• Wersja programatora <strong>ISPcable</strong> <strong>II</strong> oraz programu ProProg<br />
• Częstotliwość taktowania i typ procesora PC<br />
• Wersja systemu operacyjnego<br />
• Rodzaj procesora (kompletny numer układu) i częstotliwość oscylatora<br />
• Szczegółowy opis problemu<br />
8