01.06.2014 Views

ISPcable II - propox

ISPcable II - propox

ISPcable II - propox

SHOW MORE
SHOW LESS

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

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!