Atmel STK500 User guide [nl]

Bestnr. 15 39 88
AVR®
Starter Kit STK 500
Handboek voor gebruikers
Alle rechten, ook vertalingen, voorbehouden. Niets uit deze uitgave mag worden verveelvoudigd, opgeslagen in een automatische gegevensbestand, of openbaar gemaakt, in enige vorm of op enige wijze, hetzij elektronisch, mechanisch, door fotokopieën, of op enige andere manier, zonder voorafgaande schriftelijke toestemming van CONRAD ELECTRONIC BENELUX B.V. Nadruk, ook als uittreksel is niet toegestaan. Druk- en vertaalfouten voorbehouden. Deze gebruiksaanwijzing voldoet aan de technische eisen bij het in druk gaan. Wijzigingen in de techniek en uitvoering voorbehouden. © Copyright 2006 by CONRAD ELECTRONIC BENELUX B.V. Windmolenweg 42, 7548 BM Boekelo
Internet
: www.conrad.nl of www.conrad.be
2
Inhoudsopgave Pagina
Hoofdstuk 1
Introductie
1.1 Kenmerken van de Starter Kit 4
1.2 Ondersteuning voor apparatuur 5
Hoofdstuk 2
Het begin
2.1 Uitpakken van het systeem 6
2.2 Systeemvereisten 6
2.3 Snelstart 6
2.3.1 Verbinden van de hardware 7
2.3.2 Programmeren van het doel - AVR apparaat 8
Hoofdstuk 3
Beschrijving van de hardware 9
3.1 Beschrijving van de User LEDs 9
3.2 Beschrijving van de User schakelaars 10
3.3 Verbinden van LEDs en schakelaars 11
3.4 Poortaansluitingen 11
3.5 Beschrijving van de User RS232 interface 12
3.6 Beschrijving van de DataFlash pins 13
3.7 Doel sokkelgedeelte 15
3.7.1 ISP programmering 16
3.7.2 hoogspanningprogrammering 17
3.8 Jumperinstellingen 20
3.8.1 Doel Vcc instellingen, VTARGET 21
3.8.2 Analoog referentievoltage, AREF 22
3.8.3 Reset van de instellingen, RESET 23
3.8.4 Instellingen van de klok, XTAL1 en OSCSEL 25
3.8.5 BSEL2 jumper 27
3.8.6 PJUMP jumpers 27
3.9 Expansieaansluitingen 27
3.9.1 Beschrijving van de signalen 28
3.10 Prog Ctrl en Prog Data Headers 29
3.11 Overig 30
3.11.1 RESET drukknop 30
3.11.2 PROGRAM drukknop 31
3.11.3 Hoofdstroom LED 31
3.11.4 Doelstroom LED 31
3.11.5 Status LED 31
Hoofdstuk 4
Installeren van AVR Studio 31
3
Hoofdstuk 5
Gebruik van AVR Studio 32
5.1 Windows software 32
5.2 Opstarten van de Windows software 32
5.2.1 Starten van STK500 32
5.3 STK 500 User interface 32
5.3.1 “Programma” instellingen 33
5.3.2 “Zekeringen” instellingen 34
5.3.3 “Lockbits” instellingen 35
5.3.4 “Geavanceerd” instellingen 36
5.3.5 “Board” instellingen 37
5.3.6 “Auto” instellingen 38
5.3.7 Geschiedenisvenster 39
5.4 Commandolijn software 40
5.5 Parameters 41
5.6 Syntax voor ondersteunde apparaten 42
Hoofdstuk 6
“In-System” programmering van een extern doelsysteem 42
Hoofdstuk 7
Verhelpen van storingen 44
Hoofdstuk 8
Technische ondersteuning 45
Hoofdstuk 9
Voorbeelden van toepassingen 46
9.1 Gebruik van LEDs en schakelaars 46
Hoofdstuk 10
Garantieverklaring 47
4
Hoofdstuk 1
Introductie
Gefeliciteerd met de aankoop van de STK500 AVR® Flash MCU Starter Kit. De STK500 is een complete beginnerset en ontwikkelingssysteem voor de AVR Flash microcontroller van Atmel Cor­poration. De kit is ontworpen om ontwerpers een snelle start te geven om codes op de AVR te ontwikkelen en voor het maken van prototypes en het testen van nieuwe ontwerpen.
1.1 Kenmerken van de Starter Kit
Compatibel met de AVR® Studio
RS232 interface naar PC voor programmeren en controle
Geregelde stroomvoorziening voor 10 – 15V DC
Sokkels voor 8-pin, 20-pin, 28-pin en 40-pin AVR apparatuur
Parallelle en seriële hoogspanningsprogrammering van AVR onderdelen
Seriële “In-System” programmering (ISP) voor AVR onderdelen
“In-System” programmeur voor het programmeren van AVR onderdelen in extern doelsysteem
Herprogrammering van AVR onderdelen
8 druktoetsen voor algemeen gebruik
8 LEDs voor algemeen gebruik
Alle AVR I/O ports gemakkelijk toegankelijk via Pin header aansluitingen
Extra RS232 port voor algemeen gebruik
Uitbreidingsaansluitingen voor plug -in modules en prototype gebied
“On-board” 2-Mbit DataFlash® voor niet-vluchtige data -opslag.
De STK500 wordt ondersteund door AVR studio, versie 3.2 of nieuwer. Voor de laatste informatie hierover en over andere AVR producten kunt u het document “avrtools.pdf” nalezen; deze gids vindt u in het AVR – gedeelte van de Atmel website.
5
Figuur 1-1
STK500
1.2 Ondersteuning voor apparatuur
De systeemsoftware heeft op dit moment ondersteuning voor de volgende apparatuur in alle snel­heidsgraden:
AT90S1200
AT90S2313
AT90S2323
AT90S2333
AT90S2343
AT90S4414
AT90S4433
AT90S4434
AT90S8515
AT90S8535
ATmega161
ATmega163
ATtiny11
ATtiny12
ATtiny15
ATtiny28
Ondersteuning voor nieuwe AVR apparatuur kan toegevoegd worden in nieuwe versies van AVR Studio. De nieuwste versie van AVR Studio is altijd beschikbaar via www.atmel.com.
6
Hoofdstuk 2
Het begin
2.1 Uitpakken van het systeem
De Starter Kit bevat:
STK500 starter kit evaluatieboard
Kabels voor STK500:
(2 x) 10-draads kabels voor I/O ports en parallel mode programmering (1x) 6-draads kabel voor “in-system” programmering (4x) 2-draads kabel voor UART en DataFlash aansluitingen
9-pins RS232 kabel
DC stroomkabel
Atmel CD-ROM met datasheets en software
AT90S8515-8PC sample microcontroller
2.2 Systeemvereisten
De minimum vereisten voor hardware en software zijn:
486 processor (Pentium® wordt aanbevolen)
16 MB RAM
7 MB vrije ruimte op harde schijf
Windows® 95, Windows 98, Windows NT® 4.0 of hoger, of Windows 2000
115200 baud RS-232 port (COM port)
10 – 15V DC stroomvoorziening, 500 mA min.
2.3 Snelstart
De STK500 wordt geleverd met een AT90S8515-8PC microcontroller in de sokkel gemerkt SCKT3000D3. De jumper –instellingen af fabriek maken het de microcontroller mogelijk te werken vanuit de klokbron en voltageregelaar op het STK500 board.
De microcontroller is geprogrammeerd met een testprogramma dat de LEDs schakelt. Om het programma te testen, moet u er zeker van zijn dat de microcontroller correct geplaatst is en dat de nok op de microcontroller overeenkomt met de nok op de sokkel.
Gebruik de meegeleverde 10-pin kabels om de aansluiting gemerkt “PORTB“ met de aansluiting gemerkt “LEDS” te verbinden, en verbind de aansluiting gemerkt “PORTD” met de aansluiting ge­merkt “SWITCHES”. U ziet de aansluitingen in afb. 2-1.
U heeft een externe 10 – 15V DC stroomvoorziening nodig. Het invoercircuit is een volledige brugomvormer en de polariteit van het invoervoltage kan gekozen worden met óf positieve óf negatieve centrale aansluiting. Verbind de stroomkabel met een stroomvoorziening en met de STK500. Voorzie de stroomaansluiting van10 – 15V DC. De stroomschakelaar schakelt de hoofd­stroom van de STK500 aan en uit. De rode LED brandt als er stroom aanwezig is, en de status
7
LEDs gaan van rood, via geel, naar groen. De groene LED geeft aan dat de doel V
cc
aanwezig is. Het programma dat nu in de AT90S8515 loopt zal reageren op ingedrukte schakelaars door de LEDs te schakelen.
Fig. 2 – 1
Instellingen af fabriek van de STK500.
De starter kit kan geconfigureerd worden voor verschillende klok – en stroombronnen. Een com­plete beschrijving van de jumperinstellingen wordt uitgelegd in paragraaf 3.8 en op de achterkant van de starter kit.
2.3.1 Verbinden van de hardware
Fig. 2 – 2
Verbinding met de STK500
Om de AT90S8515 te programmeren, verbindt u de 6-draads kabel met de ISP6PIN aansluiting en de SPROG3 doel ISP aansluiting zoals te zien is in figuur 2 – 1. Paragraaf 3.7.1 beschrijft de verbindingen van de programmeerkabels.
Verbind een seriële kabel met de aansluiting “RS232 CTRL” op het evaluatieboard en met een COM port op de PC zoals te zien is in figuur 2 –2. Installeer AVR studio software op de PC.
8
Instructies over hoe AVR studio te installeren en te gebruiken worden gegeven in hoofdstuk 5. Als AVR Studio gestart wordt, zal het programma automatisch detecteren met welke COM port de STK500 is verbonden.
2.3.2 Programmeren van het doel – AVR apparaat
De STK500 wordt aangestuurd vanuit AVR studio, versie 3.2 en hoger. AVR Studio is een geïnte­greerde ontwikkelingsomgeving (IDE) voor het ontwikkelen van en het opsporen en verwijderen van fouten in AVR toepassingen. AVR Studio bevat gereedschap voor projectbeheer, een editor voor het bronbestand, een simulator, een in –circuit emulator interface en een programmeer – interface voor de STK500.
Om een hex file in het doel -AVR apparaat te programmeren, kiest u “STK500” uit het “Tools” menu in AVR Studio.
Kies het AVR doelapparaat uit het keuzemenu op het “Program” tabblad en ga naar het bestand “Example” dat zich in het AVR Studio installatiebestand bevindt. Kies de “example1.hex” file.
Klik op de ”wissen” (erase) toets, gevolgd door de “Program” toets. De status LED wordt nu geel terwijl dit gedeelte wordt geprogrammeerd, en als de programmering met succes is beëindigd, wordt de LED groen. Als het programmeren niet succesvol beëindigd is, zal de LED rood oplichten na het programmeren. Zie het hoofdstuk “Verhelpen van fouten” in hoofdstuk 7.
Figuur 2 – 3
AVR Studio STK500 programmeermenu
De volledige beschrijving van het gebruik van de STK500 interface in AVR Studio wordt gegeven in hoofdstuk 5.
9
Hoofdstuk 3
Beschrijving van de hardware
Figuur 3 – 1.
Onderdelen van de STK500
3.1 Beschrijving van de User LEDs
De STK500 Starter Kit bevat o.a. 8 gele LEDs en 8 druktoetsschakelaars. De LEDs en schake­laars zijn met elkaar verbonden voor het opsporen en verwijderen van aansluitingen die zijn afge­scheiden van de rest van het board.Ze kunnen verbonden worden met de AVR apparatuur d.m.v. de meegeleverde 10-draads kabel met de pinaansluiting van de AVR I/O ports. Figuur 3 – 4 laat zien hoe de LEDs en schakelaars met de I/O port aansluitingen verbonden kunnen worden. De kabels dienen direct verbonden te worden van de port aansluiting naar de LED - of schakelaar­aansluiting. De kabel moet niet verdraaid worden. Een rode draad op de kabel geeft pin 1 aan. Zorg er voor dat deze is verbonden met pin 1 van elk van de aansluitingen. Figuur 3 – 2 laat zien hoe de LED controle uitgevoerd wordt. Deze oplossing zal dezelfde hoeveelheid licht van de LED afgeven voor alle doelvoltages van 1.8V tot 6.0V.
10
Figuur 3 – 2
Uitvoering van LEDs en LED aansluitingen
Opm.: De AVR kan genoeg stroom leveren of opnemen om een LED direct aan te sturen. In het
STK500 ontwerp worden een transistor en twee weerstanden gebruikt om de LED dezelfde hoeveelheid licht te laten geven, wat het doelvoltage (VTG) ook moge zijn, en de LEDs uit te schakelen als de VTG ontbreekt.
3.2 Beschrijving van de gebruikersschakelaars
De schakelaars die verbonden zij n met de debug aansluitingen zijn uitgevoerd zoals te zien is in figuur 3 – 2. Als er een schakelaar ingedrukt wordt, gaat de corresponderende SWx omlaag, als de schakelaar losgelaten wordt resulteert dat in VTG (doelvoltage) op de desbetreffende schakelaaraansluiting – verbinding. Het geldige doelvoltage –bereik is 1.8V < VTG < 6,0V.
Figuur 3 – 3
Uitvoering van schakelaars en schakelaaraansluitingen
Opm.: In de AVR kunt u interne pull-ups installeren op de invoer –pins, waardoor de noodzaak
verdwijnt voor een externe pull-up op de druktoets. In het ontwerp van de STK500 hebben we een externe 10K pull-up toegevoegd, om alle gebruikers een logische “1” te geven op SWn als de druktoets niet ingedrukt wordt. De 560R weerstand beperkt de stroom die naar de AVR gaat.
11
3.3 Verbinden van LEDs en schakelaars
Figuur 3 – 4
Verbinden van LEDs en schakelaars met I/O port aansluitingen
Elke I/O port van de AVR kan verbonden worden met de LEDs en schakelaars door de 10-draads kabels te gebruiken. De aansluitingen worden voorzien van VTG (doel Vcc) en GND draden naast de signaaldraden.
3.4 Poort aansluitingen
De pin -out voor de I/O poort wordt uitgelegd in figuur 3 –5. De vierkante markering geeft pin 1 aan.
Figuur 3 – 5
Algemene pin –out van de I/O port aansluitingen
De PORTE/AUX aansluiting heeft naast de PORTE pins nog een aantal speciale signalen en functies. U ziet de pin –out van deze aansluiting in figuur 3 – 6.
Figuur 3 – 6
Pin –out van port E aansluiting
12
De speciale functies van deze port zijn:
PE0 – PE2:
Tabel 3 – 1:
Port E aansluiting
Atmega161
AT90S4414/AT90S8515
PE0
PE0/CP/INT2
ICP
PE1
PE1/ALE ALE
PE2
PE2/OC1B OC1B
REF:
Analoog referentievoltage. Deze pin is verbonden met de AREF pin op apparaten
die een aparte analoge referentiepin hebben.
XT1:
XTAL 1 pin. Het interne hoofdkloksignaal naar alle sokkels. Als de XTAL1 jumper
losgemaakt wordt, kan deze pin gebruikt worden als extern kloksignaal.
XT2:
XTAL 2 pin. Als de XTAL1 jumper losgemaakt wordt, kan deze pin gebruikt worden
voor een extern kristal met de XT1 pin.
De aansluitingen voor de LEDs en schakelaars gebruiken dezelfde pin –out als de I/O poort aan­sluitingen. De pin –out van de schakelaaraansluiting wordt uitgelegd in figuur 3 – 7 en de pin –out voor de LED aansluiting wordt uitgelegd in figuur 3 – 8. De vierkante markering geeft pin 1 aan.
Figuur 3 – 7.
Pin –out van de schakelaaraansluiting
Figuur 3 – 8.
Pin –out van de LED aansluiting
3.5 Beschrijving van de User RS232 interface
De STK500 heeft twee RS232 ports. Eén RS232 port wordt gebruikt voor de communicatie met AVR Studio. De andere RS232 kan worden gebruikt voor de communicatie tussen de doel AVR microcontroller in de sokkel en een seriële poort van de PC verbonden met de RS232. Om de RS232 te gebruiken, moeten de UART pins van de AVR fysiek worden verbonden met de RS232.
De 2-pins aansluiting gemerkt “RS232 SPARE” kan worden gebruikt om de RS232 omvormer te verbinden met de UART pins op de doel AVR microcontroller in de sokkel. Gebruik de 2-draads kabel om de UART pins te verbinden met de RS232. De aansluiting wordt getoond in figuur 3 – 9. Het blokschema van de RS232 aansluiting ziet u in figuur 3 – 10.
13
Figuur 3 – 9
Aansluiting van I/O ports met UART
Figuur 3 – 10
Schema van de UART pin aansluitingen
3.6 Beschrijving van de DataFlash pins
De STK500 is voorzien van een AT45D021 2-Mbit Dataflash voor niet-vluchtige dataopslag. Een DataFlash is een hooggevoelig Flash geheugen met een SPI seriële interface. Een gedetailleerde datasheet van de DataFlash is te verkrijgen via de DataFlash geheugensectie van de Atmel CD­ROM of van de Atmel website.
De DataFlash kan verbonden worden met de I/O pins van de microcontroller sokkels. De 4-pins aansluiting gemarkeerd met “DATAFLASH” kan gebruikt worden om de SPI interface van de DataFlash te verbinden met de I/O pins op de doel AVR microcontroller in de sokkel. 2-draads kabels zijn inbegrepen bij de STK500 om de DataFlash te verbinden met de I/O pins. De meege­leverde 10-draads kabel kan ook gebruikt worden als de DataFlash is verbonden met de hardware SPI interface op PORTB van de AVR microcontroller. De aansluiting van de I/O ports is te zien in figuur 3 – 13. Het blokschema van de DataFlash aansluiting ziet u in figuur 3 – 14, voor de aan­sluiting van de DataFlash met de AVR hardware SPI interface. De SPI pin –out is te zien in figuur 3 – 11 en 3 – 12.
14
Figuur 3 – 11
PORTB SPI pin –out (40-pins delen)
Figuur 3 – 12
PORTB SPI pin –out (28-pins analoge delen)
Figuur 3 - 13
Aansluiting van de I/O pins met DataFlash voor AT90S8515
Figuur 3 – 14
Schema van de DataFlash aansluitingen
15
3.7 Doel sokkelgedeelte
De programmeermodule bestaat uit de 8 sokkels in het witte gedeelte in het midden van de Starter Kit. De doel AVR apparaten kunnen in deze sokkels geplaatst worden voor het programmeren en de sokkels kunnen gebruikt worden bij de toepassing.
Opm.:
Er mag slechts één AVR apparaat tegelijk in de sokkels geplaatst worden.
Het AVR Flash geheugen wordt gegarandeerd nog steeds correct te zijn na 1.000 programmeer­bewerkingen; de typische levensduur van het Flash geheugen is veel langer.
Opm.:
Als u een AVR apparaat in de sokkel plaatst, let dan goed op de richting van het apparaat.
De nok aan de korte kant van het onderdeel moet overeenkomen met de nok op de sokkel. Als het apparaat er verkeerd om in wordt geplaatst, kan het apparaat en zelfs de hele Starter Kit vernield worden.
Het sokkelgedeelte wordt zowel gebruikt voor het laten werken van toepassingen als voor het pro­grammeren van doelapparatuur.
Figuur 3 – 15
De STK500 programmeermodule
Het onderdeel in de sokkel kan in het systeem geprogrammeerd worden vanuit AVR Studio met twee verschillende methodes:
1. AVR In-System Programming (ISP), waarbij de onderdelen normaal voltage krijgen toege­voerd.
2. Hoogspanningsprogrammering (HVP), waarbij het voedingsvoltage altijd 5V is.
Vier algemene netten (VTARGET, RESET, XTAL1 en AREF) kunnen met het sokkelgedeelte ver­bonden worden.
De volgende secties beschrijven hoe u beide programmeermethodes dient te gebruiken. Voor instructies hoe u AVR studio programmeersoftware moet gebruiken, zie hoofdstuk 5, “Gebruik AVR Studio”.
16
3.7.1 ISP programmering
In-System programming gebruikt de interne SPI (seriële perifere interface) van de AVR om een code te downloaden naar het Flash en EEPROM geheugen van de AVR. Voor ISP programmering zijn alleen VCC, GND, RESET en drie signaallijnen nodig voor het programmeren. Alle AVR appa­raten behalve AT90C8534, ATiny10, ATiny11 en ATiny28 kunnen ISP geprogrammeerd worden. De AVR kan geprogrammeerd worden met het normale werkvoltage, normaalgesproken 2.7V – 6,0V. Er zijn geen hoogspanningssignalen nodig. De ISP programmeur kan zowel de interne Flash als de EEPROM programmeren. Hij kan ook fuse bits programmeren om voor de meeste appara­ten klokopties, start -up tijd en interne “brown-out” detector (BOD) te kiezen.
Hoogspanningsprogrammering kan ook apparaten programmeren die niet ondersteund worden door ISP programmering. Sommige apparaten hebben hoogspanningsprogrammering nodig om bepaalde fuse bits te programmeren. Zie het hoofdstuk over hoogspanningsprogrammering op pagina 3 - 10 voor instructies over hoe u hoogspanningsprogrammering moet gebruiken.
Omdat de programmeringinterface van onderdeel tot onderdeel op verschillende pins wordt ge­plaatst, worden er drie programmeringaansluitingen gebruikt om de programmeringsignalen naar de juiste pins te leiden. Een 6-draads kabel is meegeleverd om de ISP signalen te verbinden met de doel -ISP aansluiting. Er worden een kleurcode – en nummersysteem gebruikt om uit te leggen welke doel -ISP aansluiting wordt gebruikt voor elke sokkel.
Tijdens de ISP programmering moet de 6-draads kabel steeds verbonden zijn met de aansluiting gemarkeerd met “ISP6PIN”. Als u apparaten in de blauwe sokkels programmeert, verbindt u het andere eind van de kabel met de blauwe SPROG1 doel -ISP aansluiting. Als u apparaten in de groene sokkels programmeert, verbindt u het andere eind van de kabel met de groene SPROG2 doel -ISP aansluiting. En als u apparaten in de rode sokkels programmeert, gebruikt u de rode SPROG3 doel –ISP aansluiting. Tabel 3 – 2 laat zien welke sokkels passen bij welk AVR appa­raat, en welke SPROG doel –ISP aansluiting gebruikt moet worden voor ISP programmering.
De 6-draads kabels moeten rechtstreeks vanaf de ISP6PIN aansluiting verbonden worden met de juiste SPROG doel –ISP aansluiting. De kabel mag niet verdraaid worden. Een gekleurde draad op de kabel geeft pin 1 aan. Zorg ervoor dat deze wordt verbonden met pin 1 van elk van de aan­sluitingen.
Als u 8-pins apparaten programmeert, dient u op het volgende te letten:Pin 1 wordt bij sommige apparaten zowel als RESET en als PB5 gebruikt (ATiny11, ATiny12 en ATiny15). Pin 1 op de 8­pins sokkels SCKT3400D1 en SCKT3400D1 worden verbonden met PB5. Het RESET signaal dat wordt gebruikt tijdens de ISP programmering is daardoor niet verbonden met PB5. Dit signaal moet verbonden worden door een draad te plaatsen tussen RST en de PORTE aansluiting en PB5 op de PORTB aansluiting.
17
Tabel 3 – 2.
AVR sokkels
AVR app.
STK500 sokkel
Kleur
Nummer
Doel –ISP aansluiting
AT90S1200
AT90S2313
SCKT3300D3 Rood 3 SPROG3
AT90S2323
AT90S2343
ATiny12
SCKT3400D1
blauw
1
SPROG1. Verbind RST op PORTE met PB5 op PORTB
ATiny11 SCKT3400D1
Blauw
1 Alleen hoogspanningsprogrammering
ATiny28 SCKT3500D-
Geen
- Alleen hoogspanningsprogrammering
AT90S4414
AT90S8515
ATmega161
SCKT3000D3 rood 3 SPROG3
AT90S4434
AT90S8535
ATmega163
SCKT3100A3 rood 3 SPROG3
AT90S2333
AT90S4433
SCKT3200A2
groen
2 SPROG2
ATiny15 SCKT3600A1
blauw
1 SPROG1. Verbind RST op
PORTE met PB5 op PORTB
N/A SCKT3700A1
blauw
1
Sokkel is niet in gebruik bij deze versie
van de STK500.
Figuur 3 –16 toont een voorbeeld van hoe AT90S2313 in-system kan worden geprogrammeerd. De 6-draads kabel is verbonden van de ISP6PIN aansluiting naar de rode SPROG3 doel –ISP aansluiting, en de AT90S2313 is geplaatst in de rode sokkel gemerkt “SCKT3100D3”.
Figuur 3 – 16
Voorbeeld van de verbinding voor het programmeren van AT90S2313
Het is niet nodig om de 6-draads kabel te verwijderen van zijn ISP positie terwijl er een pro­gramma loopt in de AVR. De port pins die gebruikt worden voor ISP programmering kunnen ge­bruikt worden voor andere doeleinden in uw programma.
3.7.2 Hoogspanningsprogrammering
Voor de hoogspanningsprogrammering wordt er een 12V programmeervoltage gevoed naar de RESET pin van het AVR apparaat. Alle AVR apparaten kunnen geprogrammeerd worden met hoogspanningsprogrammering, en het doelapparaat kan geprogrammeerd worden terwijl het in de sokkel zit.
18
Er worden twee verschillende methodes gebruikt voor hoogspanningsprogrammering: 8-pins ap­paraten gebruiken een seriële programmeerinterface, terwijl andere apparaten een parallelle pro­grammeerinterface gebruiken. De programmeersignalen worden naar de juiste pins van het doel­apparaat geleid door van de met de STK500 meegeleverde kabels gebruik te maken.
Tabel 3 – 3 geeft een opsomming van de programmeermethode en speciale aandachtspunten als u hoogspanningsprogrammering gebruikt.
Tabel 3 – 3
Instellingen voor hoogspanningsprogrammering
AVR app.
STK500 sokkel
Kleur
Nummer
Hoogspanning -programmeermethode
AT90S1200
AT90S2313
SCKT3300D3 Rood 3
AT90S4414
AT90S8515
SCKT3300D3 Rood 3
AT90S4434
AT90S8535
SCKT3100A3 Rood 3
ATiny28 SCKT3500D- Geen -
Parallelle hoogspanningsprogrammering.
Verbind PROG CTRL aansluiting met PORTD en PROG DATA naar PORTB, zoals te zien is figuur 3 – 17 op pagina 19.
ATmega161
SCKT3300D3 Rood 3
ATmega163
SCKT3100A3
Rood
3
Parallelle programmering als boven. Plaats de BESL jumpers.
AT90S2333
AT90S4433
SCKT3200A2
Groen
2 Parallelle programmering als boven.
Plaats de PJUMP jumper.
AT90S2323
AT90S2343
ATiny11 ATiny12
SCKT3400D1
Blauw
1
ATiny15 SCKT3600A1
Blauw
1
Seriële hoogspanningsprogrammering
N/A SCKT3700A1
Blauw
1 Sokkel is niet in gebruik bij deze versie
van de STK500.
3.7.2.1 Parallelle hoogspanningsprogrammering
Om hoogspanningsprogrammering te gebruiken, moet het programmeringsignaal naar de AVR I/O pins geleid worden. De twee 10-draads kabels die met de STK500 zijn meegeleverd, kunnen ge­bruikt worden om de PROG DATA aansluiting te verbinden met de PORTB aansluiting en de PROG CTRL aansluiting met de PORTD aansluiting, zoals te zien is in afbeelding 3 – 17.
19
Figuur 3 – 17
Aansluiting voor parallelle hoogspanningsprogrammering
Sommige van de jumperinstellingen van de STK500 moeten veranderd worden als er hoogspan­ningsprogrammering gebruikt wordt. Figuur 3 – 18 verklaart deze jumperinstellingen.
Figuur 3 – 18
Jumperinstellingen voor hoogspanningsprogrammering
Hardware set-up voor parallelle hoogspanningsprogrammering:
1. Schakel de stroom uit.
2. Plaats het apparaat dat geprogrammeerd moet worden in de sokkel volgens tabel 3 – 3.
3. Verbind de aansluitingen PROGDATA en PORTB d.m.v. de 10-draads kabel.
4. Verbind de aansluitingen PROGCTRL en PORTD d.m.v. de 10-draads kabel.
5. Plaats de jumper OSCSEL op de pins 1 en 2 om de software –controlled klok te kiezen.
6. Plaats de jumper XTAL1 om het oscillatorsignaal naar het apparaat te leiden.
7. Plaats de jumpers VTARGET en RESET.
8. Als AT90S2333 of AT90S4433 geprogrammeerd worden, monteer dan beide PJUMP jum­pers. De 2-draads kabel kan gebruikt worden i.p.v. de jumpers.
9. Als u ATmega163 of ATmega161 programmeert, plaats dan de BSEL2 jumper. De 2­draads kabel kan gebruikt worden i.p.v. de jumpers.
10. Koppel het doelsysteem af.
11. Schakel de stroom in.
Voor een complete beschrijving van de jumperinstellingen zie paragraaf 3.8, “Instellen van de jumpers”.
20
Opm.:
Verwijder de hardware set-up voor de hoogspanningsprogrammering voor u begint met
een debug sessie.
3.7.2.2 Seriële hoogspanningsprogrammering
De 8-pins AVRs hebben te weinig pins om een parallelle communicatie te gebruiken tijdens de hoogspanningsprogrammering. In plaats daarvan gebruiken ze seriële communicatie.
Dit betekent dat er minder signalen geleid hoeven te worden. De hardware set-up voor seriële hoogspanningsprogrammering is als volgt:
1. Schakel de stroom uit.
2.
Plaats het te programmeren apparaat in zijn sokkel volgens tabel 3 – 3.
3.
Plaats de jumper OSCSEL op de pins 1 en 2 om de software –controlled klok te kiezen.
4. Plaats de jumper XTAL1 om het oscillatorsignaal naar het apparaat te leiden.
5.
Plaats de jumpers VTARGET en RESET.
6.
Gebruik een 2-draads kabel om de PB3 pin (pin 4) op de PORTB aansluiting te verbinden met de XT1 pin (pin 7) op de PORTE/AUX aansluiting. Dit verbindt het kloksysteem met het AVR apparaat.
7.
Gebruik nog een 2-draads kabel om de PB5 pin (pin 6) op de PORTB aansluiting te ver­binden met de RST1 pin (pin 3) op de PORTE/AUX aansluiting. Dit verbindt het reset sys­teem met het AVR apparaat.
8.
Gebruik een derde 2-draads kabel om de pins PB0 en PB2 (pins 4 en 3) op de SPROG1 aansluiting te verbinden met de DATA0 en DATA2 pins (pins 1 en 3) op de PROG DATA aansluiting.
9.
Gebruik de laatste 2-draads kabel om de pin PB1 (pin 1) op de SPROG1 aansluiting te verbinden met de DATA1 pin (pin 2) op de PROG DATA aansluiting.
10.
Schakel de stroom in en u bent klaar om te programmeren.
Alle aansluitingen zijn te zien in figuur 3 – 19.
Figuur 3 – 19
Aansluitingen voor seriële hoogspanningsprogrammering
21
3.8 Instellen van de jumpers
Een Master MCU en acht jumpers regelen de hardware instellingen van de Starter Kit. Tijdens normaal gebruik dienen deze jumpers geplaatst te zijn in de positie zoals ze af fabriek geplaatst zijn. Om de Starter Kit te configureren voor geavanceerd gebruik kunnen de jumpers verwijderd of in andere posities geplaatst worden. De jumperinstellingen en het gebruik ervan worden in het volgende gedeelte uitgelegd. De instellingen af fabriek zijn te zien in onderstaande figuur 3 – 20.
Figuur 3 – 20
Instellingen jumpers af fabriek
Tabel 3 – 4
Beschrijving van de jumpers
Jumper Beschrijving van de instelling af fabriek
VTARGET
On-board VTARGET toevoer aangesloten AREF On-board analoge voltagereferentie aangesloten RESET On-board reset systeem aangesloten XTAL1 On-board kloksysteem aangesloten OSCSEL On-board oscillator geselecteerd BSEL2
Niet gemonteerd. Wordt gebruikt voor hoogspannings-
programmering van ATmega161 en ATmega163 PJUMP
Niet gemonteerd. Wordt gebruikt voor hoogspannings-
programmering van AT90S2333 en AT90S4433
3.8.1 Doel Vcc instellingen, VTARGET
VTARGET regelt de stroomtoevoer naar de sokkels van de doel AVR microcontroller. Deze stroomtoevoer kan of vanuit AVR studio of vanuit een externe bron geregeld worden. Als de VTARGET jumper geplaatst is, is de on-board voedingsstroom aangesloten. De on-board voe­dingsstroom kan vanuit AVR Studio ingesteld worden tussen 0 en 6V. Controleer steeds de des­betreffende datasheet voor het werkvoltage van het AVR apparaat voor u het VTARGET voltage instelt.
Als de VTARGET jumper niet geplaatst is, moet de VCC geleverd worden door een externe bron op één van de VTG pins op de port aansluitingen. Figuur 3 – 21 verklaart de VTARGET jumper opties.
22
Als er een externe bron gebruikt wordt voor VTARGET, moet de gebruiker controleren of de VTARGET wel een hoger voltageniveau heeft dan AREF (analoog referentievoltage). Verbind steeds de gemeenschappelijke massa (GND) als u een extern VTARGET voltage gebruikt.
Figuur 3 – 21
VTARGET jumper opties
De STK500 Master MCU regelt het doelvoltage en gebruikt daarvoor de interne PWM. Figuur 3 – 22 toont de interne aansluiting van het VTARGET signaal.
Figuur 3 – 22
VTARGET aansluiting
Opm.:
De groene LED brandt wanneer er een voltage beschikbaar is op de VTG NET. Het is niet mogelijk de ‘debug’- of programmeer- sectie van de STK500 te gebruiken zonder VTG.
3.8.2 Analoog referentievoltage (AREF)
Het analoog referentievoltage (AREF) kan het referentievoltage leveren aan de on-chip A/D om­vormer op de AVR. Als de AREF jumper geplaatst is, wordt het on-board analoog referentievol­tage verbonden met de AREF van de AVR. Het on-board analoog referentievoltage kan vanuit AVR Studio ingesteld worden van 0 – 6V, maar niet boven VTARGET.
Als de AREF jumper losgemaakt wordt, moet het AREV voltage gevoed worden vanuit een ex­terne bron naar de AREF pin op de PORTE/AUX aansluiting (fig. 3-6). Figuur 3 – 23 geeft uitleg over de AREF jumper opties.
Als u een externe bron gebruikt voor AREF, dient u VTARGET op een hoger voltageniveau in te stellen dan AREF. Dit kan makkelijk ingesteld worden door de VTG –waarde af te lezen van AVR Studio voor u AREF instelt.
23
Figuur 3 – 23
AREF jumper opties
De Master MCU van de STK500 regelt het analoge referentievoltage, waarbij de interne PWM gebruikt wordt. Het AREF signaal van de AVR is tevens toegankelijk op de PORTE aansluiting; deze pin kan ook gebruikt worden voor het externe AREF signaal. Figuur 3 – 24 toont de interne aansluiting van het AREF signaal.
Figuur 3 – 24
Interne AREF aansluiting
Het door AVR studio geregelde analoge referentievoltage kan ook gebruikt worden als invoer voor de analoge comparator of voor ADC metingen op de AVR. Het AREF signaal van de AVR kan dan verbonden worden met VTG.
3.8.3 Reset van de instellingen, RESET
De RESET jumper regelt het RESET signaal naar de STK500. Als ISP het doelapparaat in de sokkel programmeert, programmeert de Master MCU het AVR apparaat zonder zich met de appli­catie te bemoeien. Als de RESET jumper gemonteerd is, regelt de Master MCU het RESET sig­naal van de AVR. Als de RESET jumper niet geplaatst is, is het RESET signaal niet verbonden. Dit is nuttig voor prototype applicaties met een extern reset systeem.
24
De RESET jumper moet altijd geplaatst zijn als er een AVR apparaat met hoogspanning gepro­grammeerd wordt. Als er een extern reset systeem gebruikt wordt, moet er voor gezorgd worden dat de reset lijn tijdens het programmeren geregeld wordt door het Master MCU reset systeem. De RESET knop is niet verbonden, als de RESET jumper niet geplaatst is. Figuur 3 – 25 toont de RESET jumper opties.
Figuur 3 – 25
RESET jumper opties
De STK500 Master MCU regelt het RESET signaal naar de doel AVR. Het RESET signaal is toe­gankelijk op de PORT/AUX aansluiting; deze pin kan tevens gebruikt worden voor een extern RESET signaal. Figuur 3 – 26 toont de interne aansluiting van het RESET signaal.
Figuur 3 – 26
Interne RESET aansluiting
Opm.:
Tijdens de hoogspanningsprogrammering voorziet de STK500 de RESET lijn van de AVR van 12V. Daarom moet een extern circuit dat dit niet aankan, losgekoppeld worden voordat u start met de hoogspanningsprogrammering van de AVR.
25
3.8.4 Instellingen van de klok, XTAL1 en OSCSEL
De STK500 heeft verschillende klok –opties voor de doel AVR. Het plaatsen van de jumpers XTAL1 en OSCSEL regelt de klokkeuzes. OSCSEL bepaalt welk signaal er naar de XTAL1 pin van de AVR geleid moet worden.
Als de XTAL1 jumper geplaatst is, wordt het interne kloksysteem van de STK500 gebruikt als hoofdklok voor de doel AVR. Als de XTAL1 jumper niet geplaatst is, is het interne systeem losge­koppeld. Hierdoor is het mogelijk externe kloksignalen of kristallen te gebruiken als bron voor de doelklok van de AVR.Figuur 3 – 27 toont de XTAL1 jumper optie.
Figuur 3 – 27 XTAL1 jumperopties
Als de XTAL1 jumper niet geplaatst is, kan er een externe klok of kristal verbonden worden met de PORTE aansluiting. Dit ziet u in figuur 3 – 29.
Als de XTAL1 jumper geplaatst is, wordt het interne kloksysteem van de STK500 gebruikt als hoofdklok voor de doel AVR. Het interne kloksysteem kan of een kristal gebruiken in de on-board kristalsokkel, of een via software gegenereerde klok van de master MCU. De frequentie van de via de software gegenereerde klok kan ingesteld worden van 0 tot 3.68 MHz. De instelling af fabriek is
3.68 MHz. Paragraaf 5.3.5.3 op pagina 37 legt uit hoe u de klokfrequentie vanuit AVR Studio moet instellen.
Als u het door de STK500 software gegenereerde kloksysteem als hoofdklok gebruikt, moeten de zekeringen van de AVR microcontroller geconfigureerd worden voor “externe klok” als klokbron. Dit levert de kortste start-up tijd voor de microcontroller. Voor details betreffende de start-up tijd, zie de datasheet voor de AVR microcontroller. Voor uitleg over de configuratie van de klokbron – zekeringen zie paragraaf 5.3.2 op pagina 34. Niet alle AVR apparaten hebben zekeringen voor een keuze tussen gebruik van een kristal of oscillator als klokbron.
Het externe kloksysteem wordt gekozen met de OSCSEL jumper. Figuur 3 – 28 toont de jumper opties voor OSCSEL.
26
De on-board oscillator werkt met keramische resonatoren of kristallen tussen 2 – 20 MHz (AT – geslepen, fundamentele en parallel resonante kristallen).
Figuur 3 - 28
OSCSEL jumperopties
Als de AVR in de hoogspanningsprogrammeermodus geprogrammeerd wordt, moet OSCSEL geplaatst worden op de pins 1 en 2, om te zorgen dat de master MCU de doelklok kan regelen. Dit wordt in detail uitgelegd in paragraaf 3.7.2 op pagina 17.
Opm.:
Bij een echte toepassing met slechts één AVR verbonden met het kristal, is een extern oscillatorcircuit niet nodig. De STK500 heeft acht verschillende AVR sokkels die met het­zelfde kloksysteem zijn verbonden. De lange signaallijnen in dit systeem maken het moei­lijk een kristal te laten werken via de on-chip oscillators op de AVR. De oscillator op de STK500 is ontworpen voor gebruik met alle doelvoltages van 1.8V tot 6.0V.
Figuur 3 – 29
XTAL1 en OSCSEL aansluitingen
27
3.8.5 BSEL2 Jumper
De BSEL2 jumper verbindt het Byte Select 2 signaal voor de hoogspanningsprogrammering van ATmega161 en ATmega163. De BSEL2 jumper moet alleen geplaatst worden bij de hoogspan­ningsprogrammering van de ATmega161 en ATmega163. Voor een beschrijving van het Byte Select 2 signaal zie het programmeergedeelte van de datasheet van de ATmega161 en de ATmega163.
3.8.6 PJUMP jumpers
Als u hoogspanningsprogrammering gebruikt, leiden de PJUMP jumpers de programmeerpin van AT90S2333 en AT90S4433 naar de programmeerlijnen. De PJUMP jumpers mogen alleen ge­bruikt worden als u hoogspanningsprogrammering gebruikt voor het programmeren van de AT90S2333 en de AT90S4433. Tijdens debugging, hoogspanningsprogrammering van andere delen en bij ISP programmering mogen deze jumpers niet geplaatst worden.
3.9 Expansieaansluitingen
De STK500 heeft twee expansieaansluitingen, één aan elke kant van de programmeermodule. Alle AVR I/O ports, programmeersignalen en regelsignalen worden naar de expansie – aansluitingen geleid. Deze expansieaansluitingen maken het makkelijk om prototypes van toepassingen te maken met de STK500. U vindt de pin-out van de expansieaansluitingen in figuur 3 – 31 en figuur 3 – 32.
Figuur 3 – 30
Expansieaansluitingen
28
Figuur 3 – 31
Expansieaansluiting 0 pin-out
Figuur 3 – 32
Expansieaansluiting 1 pin-out
3.9.1 Beschrijving van de signalen
De signalen AUXI1, AUXI0, AUXO1 en AUXO0 zijn bedoeld voor toekomstig gebruik. Verbind deze aansluitingen niet met uw applicatie.
De DATA[7:0] en CT[7:1] signalen vindt u ook op de Prog Data en Prog Ctrl aansluitingen. Deze signalen en aansluitingen worden uitgelegd in paragraaf 3.10 op pagina 29.
29
Het BSEL2 signaal is hetzelfde als het signaal op de BSEL2 jumper. Deze jumper wordt verklaard in paragraaf 3.8.5 op pagina 27
De SI, SO, SCK en CS signalen worden verbonden met de Data Flash. Het gebruik van de Data Flash wordt beschreven in paragraaf 3.6 op pagina 13.
NC betekent dat deze pin niet is verbonden.
De overblijvende signalen zijn gelijk aan de signalen die u aantreft op de PORT aansluitingen, uitgelegd in paragraaf 3.4 op pagina 11.
Opm.:
DATA, CT en AUX signalen zijn gebaseerd op 5V CMOS logic. Er wordt geen voltage –
omvorming voor aanpassing aan VTG uitgevoerd op deze signalen.
3.10 Prog Ctrl en Prog Data aansluitingen
De Prog Ctrl en Prog Data aansluitingen worden gebruikt voor de hoogspanningprogrammering van het doel – AVR apparaat. De plaatsing van de aansluiting is te zien in figuur 3 – 30. Tijdens de parallelle hoogspanningprogrammering worden de Prog Ctrl signalen naar PORTD van het doel­apparaat geleid. De Prog Data signalen worden geleid naar PORTB. Zie paragraaf 3.7.2 op pa­gina 17 voor een complete beschrijving van hoogspanningprogrammering. De pin-outs van de Prog Ctrl en Prog Data aansluitingen zijn te zien in fig. 3 – 33 en fig. 3 – 34. Voor meer informatie over hoogspanningprogrammering van AVR apparaten zie de programmeersectie van elke AVR datasheet.
Opm.:
Prog Ctrl en Prog Data aansluitingen worden direct verbonden met de master MCU zonder niveau -omvormers. Dit betekent dat deze signalen altijd 5V logic zijn.
Figuur 3 – 33
Prog Ctrl aansluitingen pin-out
De Prog Ctrl signalen worden normaalgesproken gebruikt voor de regelsignalen bij de parallelle hoogspanningprogrammering van een AVR -apparaat.
Opm.:
Alle Prog Ctrl signalen zijn gebaseerd op 5V logic. Er wordt geen voltage –omvorming voor
aanpassing aan VTG uitgevoerd op deze signalen.
30
Figuur 3 – 34
Prog Data aansluitingen pin-out
De Prog Data signalen worden gebruikt voor de data bus bij de parallelle hoogspanning – programmering van een AVR apparaat. Tijdens ISP programmering wordt DATA5 gebruikt als MOSI, DATA6 wordt gebruikt als MISO en DATA7 wordt gebruikt voor SCK.
Opm.:
Alle Prog Ctrl signalen zijn gebaseerd op 5V logic. Er wordt geen voltage –omvorming voor
aanpassing aan VTG uitgevoerd op deze signalen.
3.11 Overig
De STK500 heeft twee druktoetsen en 3 LEDs voor speciale functies en statusaanduiding. Het volgende gedeelte verklaart deze kenmerken. Figuur 3 – 35 toont de plaatsing van deze functies.
Figuur 3 – 35
Speciale functies en statusindicatie –LEDs
3.11.1 RESET druktoets
De RESET druktoets resets het doel AVR apparaat als er op deze toets gedrukt wordt. De master MCU wordt niet geregeld door de RESET druktoets. Als de RESET jumper niet geplaatst is, is de RESET druktoets buiten werking.
31
3.11.2 PROGRAM druktoets
Toekomstige versies van AVR studio kunnen de master MCU op de STK500 upgraden. AVR stu­dio zal dan oude software versies van de STK500 detecteren en het Flash programmageheugen van de master MCU upgraden. Om dit te doen, wordt de gebruiker gevraagd op de PROGRAM druktoets te drukken als de STK500 aangezet wordt. AVR Studio geeft tijdens het upgrade proces instructies hoe de upgrade uitgevoerd moet worden.
3.11.3 Main Power LED
De rode power LED is direct verbonden met de hoofdstroomtoevoer van de STK500. De power LED brandt steeds als de STK500 van stroom wordt voorzien.
3.11.4 Doel power LED
De doel power LED is verbonden met VCC lijnen (VTG) op de doel AVR apparaten in de sokkels. De doel power LED brandt als het doel AVR apparaat van stroom wordt voorzien.
3.11.5 Status LED
De PROGRAM LED is een driekleurige LED. Tijdens het programmeren is de LED geel. Als het doel AVR apparaat met succes geprogrammeerd is, zal de LED groen worden. Als het program­meren niet slaagt, zal de LED rood branden om aan te geven dat de programmering niet geslaagd is. Als dat het geval is, controleer dan het hoofdstuk 7 “Verhelpen van fouten” op pagina 44. Tij­dens het opstarten zal de status LED van rood via geel naar groen gaan om aan te geven dat de master MCU klaar is.
Hoofdstuk 4
Installeren van AVR Studio
AVR Studio, met de geïntegreerde ontwikkelingsomgeving (Integrated Development Environment = IDE) is de ideale software voor alle AVR ontwikkeling. Hij beschikt over een editor, een assem­bler en een debugger en doet alles van het begin tot het einde voor alle AVR emulatoren en de STK500 Starter Kit.
Om AVR Studio te installeren, plaatst u het meegeleverde Atmel CD-ROM databoek in de com­puter en navigeert u naar “Products > AVR 8-bit RISC > Software”. Klik op de rechter muisknop op de “AVRstudio.exe” file en selecteer “save links as”. Kies een leeg bestand en sla het bestand op.
Voer het “AVRstudio.exe” bestand uit; dit is een zich zelf uitpakkend bestand dat alle benodigde bestanden zal uitpakken naar de huidige directory. Voer het “Setup.exe” bestand uit; dit bestand zal u door het setup- proces leiden.
Opm.:
AVR Studio, versie 3.2 of recenter, is nodig voor de ondersteuning van STK500.
32
Hoofdstuk 5
Gebruik van AVR studio
5.1 Windows Software
In dit hoofdstuk wordt de ondersteunende software voor de STK500 gepresenteerd en er wordt een uitgebreide beschrijving gegeven van de beschikbare programmeeropties.
5.2 Starten van de Windos Software
De software die gebruikt wordt voor de communicatie met het STK500 ontwikkelingsbord is inbe­grepen in AVR Studio, versie 3.2 of recenter. Voor informatie hoe u deze software moet installe­ren, zie hoofdstuk 4 op pagina 31. Als de software eenmaal geïnstalleerd is, kan AVR studio ge­start worden door dubbel te klikken op het AVR Studio icoon. Als de opties die af fabriek zijn geïn­stalleerd gebruikt worden, vindt u het programma in de Windows “Start menu > Programs > Atmel AVR Tools” folder.
5.2.1 Starten van de STK500
Als u op de “AVR” knop op AVR studio toolbar drukt, zal de STK500 gebruikers –interface gestart worden, zoals te zien is in figuur 5 – 1.
Figuur 5 – 1
AVR Studio met STK500 gebruikers –interface
5.3 STK User Interface
De STK500 user interface bevat krachtige kenmerken voor het STK500 ontwikkelingsbord. De beschikbare instellingen zijn onderverdeeld in groepen, die elk gekozen kunnen worden door op het desbetreffende tabblad te klikken. Aangezien verschillende apparaten verschillende kenmer-
33
ken hebben, zullen de beschikbare opties en keuzes afhangen van welk apparaat er gekozen wordt. Niet beschikbare opties zijn grijs gemarkeerd.
5.3.1 “Program” instellingen
De programma-instellingen zijn verdeeld in vier verschillende subgroepen.
5.3.1.1 Apparaat
Een apparaat wordt gekozen door het juiste apparaat te kiezen uit het pull -down menu. Deze groep bevat tevens een knop die de chip wist van het gekozen apparaat, waarbij zowel de Flash als de EEPROM geheugens gewist worden.
5.3.1.2 Programmeermodus
Deze groep selecteert de programmeermodus. Voor apparaten die alleen hoogspanningprogram­mering ondersteunen, wordt de ISP optie grijs gemarkeerd. Als beide methodes beschikbaar zijn, kies dan een modus door de juiste methode aan te klikken. Als u “Erase Device Before Program­ming” (wis het apparaat voordat er geprogrammeerd wordt) kiest, dan wordt de STK500 gedwon­gen de chip te wissen voordat de code voor het programmageheugen geprogrammeerd wordt (Flash). Als u “Verify Device After Programming” (controleer het apparaat na het programmeren) kiest, wordt de STK500 gedwongen het geheugen te controleren nadat het geprogrammeerd is (zowel Flash als EEPROM).
5.3.1.3 Flash
Als de STK500 gebruikersinterface geopend wordt zonder dat er een project is geladen in AVR Studio, zal de “Use Current Simulator/Emulator FLASH Memory” (gebruik huidige simulator/ emulator Flash geheugen) optie grijs gemarkeerd worden. Als er een project geopend is, is het bij deze optie mogelijk het Flash geheugen te programmeren dat op dit moment aanwezig is in het Flash Memory overzicht van AVR Studio. Voor meer informatie over AVR Studio geheugenover­zichten kunt u een kijkje nemen in het AVR Studio Help bestand.
Als er geen project draait, of de broncode is opgeslagen in een aparte hex file, kies dan de “Input HEX File” optie. Blader naar de juiste file door op de [Afb.] knop te drukken of type het volledige pad en de bestandsnaam in het tekstveld. Het gekozen bestand moet in “Intel-hex” –format of “extended Intel-hex” format staan.
34
Figuur 5 – 2
Programma
5.3.1.4 EEPROM
Als de STK500 gebruikersinterface geopend wordt zonder dat er een project is geladen in AVR Studio, zal de “Use Current Simulator/Emulator EEPROM Memory” (gebruik huidige simulator/ emulator EEPROM geheugen) optie grijs gemarkeerd worden. Als er een project geopend is, is het bij deze optie mogelijk het EEPROM geheugen te programmeren dat op dit moment aanwezig is in het EEPROM Memory overzicht van AVR Studio. Voor meer informatie over AVR Studio ge­heugenoverzichten kunt u een kijkje nemen in het AVR studio Help bestand.
Als er geen project draait, of de broncode is opgeslagen in een aparte hex file, kies dan de “Input HEX File” optie. Blader naar het juiste bestand door op de [Afb.] knop te drukkeen of type het vol­ledige pad en de bestandnaam in het tekstveld. Het gekozen bestand moet in “Intel-hex” –format of “extended Intel-hex” format staan.
5.3.2 “Zekeringen” instellingen
In het “Fuses” tabblad vindt u een overzicht van de toegankelijke zekeringen. Sommige zekerin­gen zijn alleen toegankelijk tijdens hoogspanningprogrammering. Deze zekeringen worden ge­toond, maar zijn niet toegankelijk als u werkt in de ISP programmeermodus. Druk op de “Read” (lees) knop om de huidige waarde van de zekeringen af te lezen, en op de “Write” (schrijf) knop om de huidige instelling van de zekering naar het apparaat te schrijven. Als u één van deze con­troleboxen controleert, geeft dat aan dat deze zekering geactiveerd / geprogrammeerd moet wor­den, hetgeen betekent dat u een “0” moet schrijven op de plaats van de zekering van het desbe­treffende apparaat. Denk er aan dat de gekozen instelling van de zekering niet beïnvloed wordt door het apparaat te wissen met een chip -wis cyclus (d.w.z. op de “Chip Erase” knop drukken in de “Programma” instellingen).
35
Gedetailleerde informatie over welke zekeringen er beschikbaar zijn in de verschillende program­meermodi en de functies ervan kunt u vinden in de desbetreffende datasheet van het apparaat.
Figuur 5 – 3
Zekeringen
5.3.3 “Lockbit” instellingen
Net als bij het “Fuses” tabblad, toont het “Lockbits” tabblad welke vergrendelingmodi (“lock mo­des”) er bij het gekozen apparaat toegepast kunnen worden. Alle lock bits zijn zowel in ISP als in hoogspanningprogrammering toegankelijk. Een vergrendelingmodus kan bestaan uit een combi­natie van instellingen van meervoudige lock bits. Dit wordt afgehandeld door de user interface van de STK500, en de juiste lock bits worden automatisch geprogrammeerd voor de gekozen afgren­delingmodus. Zodra er een beschermingsniveau voor de vergrendelingmodus is ingesteld, is het niet meer mogelijk het beschermingsniveau te verlagen door een “lagere” graad van beveiliging te kiezen of door een andere vergrendelingmodus in te stellen. De enige manier om een gepro­grammeerde lock bit te verwijderen is een complete chip –wis uit te voeren, waarbij zowel de pro­gramma - als de datageheugens gewist worden. Er bestaat één uitzondering: als het doelapparaat een geprogrammeerde “EESAVE” zekering heeft, zal de inhoud van de EEPROM behouden blij­ven, zelfs als er een volledige chip –wis van het apparaat uitgevoerd wordt.
36
Figuur 5 – 4
Lock Bits
5.3.4 “Geavanceerd” instellingen
Het “Geavanceerd” tabblad is op dit moment verdeeld in twee subgroepen.
5.3.4.1 Signatuur bytes
Door op de “Read Signature” knop te drukken, worden de signatuurbytes van het doelapparaat gelezen. De signatuurbytes werken als een herkenningsteken voor het onderdeel. Kijk in de AVR datasheets om meer te lezen over de signatuurbytes.
37
Figuur 5 – 5
Geavanceerd
5.3.4.2 Oscillator kalibrering byte
De oscillator kalibrering byte wordt tijdens het maken naar het apparaat geschreven en kan niet gewist of veranderd worden door de gebruiker. De kalibrering byte is een afstemwaarde die ge­schreven moet worden naar het OSCCAL register om de interne RC oscillator af te stemmen.
5.3.4.3 Lezen van de oscillator kalibrering byte
Wanneer u op de “Read Cal. Byte” (Lees kalibrering byte) knop drukt, wordt de kalibreringwaarde van het apparaat gelezen en deze waarde wordt getoond in de “Value” tekstbox. Denk er aan dat de kalibrering byte niet direct toegankelijk is en tijdens het uitvoeren van een programma naar een geheugenplaats tijdens het programmeren geschreven moet worden als de waarde door het pro­gramma gebruikt moet worden. Als deze optie grijs gemarkeerd is, beschikt het geselecteerde apparaat niet over een afstembare interne RC oscillator.
5.3.4.4 Schrijven van een oscillator kalibrering byte
Aangezien de kalibrering byte niet direct toegankelijk is tijdens het uitvoeren van een programma, dient de gebruiker de kalibrering byte naar een bekende locatie in het Flash of EEPROM geheu­gen te schrijven. Dit kan gedaan worden door het gewenste geheugenadres in de “Write Address” (schrijf adres) tekstbox te schrijven en daarna op de “Write to Memory” (schrijf naar geheugen) knop te drukken. De kalibrering byte wordt dan geschreven naar het geheugen aangegeven door de “Flash” en “Eeprom” radioknoppen.
5.3.5 “Board” instellingen
Via het “Board” tabblad kunt u de werkvoorwaarden op het STK500 ontwikkelingsboard wijzigen. De volgende eigenschappen kunnen gewijzigd worden: VTARGET, AREF en oscillator frequentie.
38
De interface is zeer flexibel en het is mogelijk de werkvoorwaarden in te stellen tot buiten de aan­bevolen specificaties voor het apparaat. Het wordt niet aanbevolen om dit te doen, en het zou het doelapparaat kunnen beschadigen. De aanbevolen werkvoorwaarden voor het onderdeel worden vermeld in de datasheet van het apparaat.
Figuur 5 – 6
Board
5.3.5.1 VTARGET
VTARGET regelt het werkvoltage voor het doelboard. Door het gebruik van de schuifregelaar of de tekstbox kan dit voltage geregeld worden tussen 0V en 6.0V in stappen van 0.1V. Raadpleeg s.v.p. de datasheet van het apparaat om het gespecificeerde voltagebereik voor het gekozen ap­paraat te vinden. Beide voltages worden gelezen door op de “Read Voltages” (lees voltages) knop, en geschreven door op de “Write Voltages” (schrijf voltages) knop te drukken.
De fysieke aansluiting van het VTARGET voltage is te zien in figuur 3 – 22 op pagina 21.
5.3.5.2 AREF
AREF regelt het analoge referentievoltage voor de ADC omvormer. Deze instelling heeft alleen betrekking op apparaten met een ADC omvormer. Door het gebruik van de schuifregelaar of de tekstbox kan dit voltage geregeld worden tussen 0V en 6.0V in stappen van 0.1V. Raadpleeg s.v.p. de datasheet van het apparaat om het geldige voltage –bereik voor het gekozen apparaat te vinden. Zowel VTARGET als AREF worden gelezen door op de “Read Voltages” (lees voltages) knop, en geschreven door op de “Write Voltages” (schrijf voltages) knop te drukken.
Het is niet mogelijk AREF in te stellen op een hoger niveau dan VTARGET, omdat dit de AVR permanent zal beschadigen.
De fysieke aansluiting van het VTARGET voltage is te zien in figuur 3 – 24 op pagina 22.
39
5.3.5.3 Oscillator
De STK500 gebruikt een programmeerbaar oscillatorcircuit dat een groot bereik aan frequenties biedt voor het doelapparaat.
Aangezien het niet mogelijk is een onbeperkt aantal frequenties te genereren, zal de STK user interface de waarde berekenen die het dichtst bij de waarde ligt die geschreven is naar de oscil­lator tekstbox. De berekende waarde wordt dan in de oscillator tekstbox getoond, waarbij de daar­voor geschreven waarde overschreven wordt.
5.3.6 “Auto” instellingen
Als u meerdere apparaten met dezelfde code programmeert, biedt het “Auto” tabblad een krach­tige methode om automatisch een door de gebruiker gedefinieerde volgorde van opdrachten te doorlopen. De opdrachten worden opgesomd in de volgorde waarin ze uitgevoerd worden (indien gekozen). Om een opdracht uit te voeren, dient u de desbetreffende controlebox te controleren. Als bijvoorbeeld alleen “Program Flash” gecontroleerd wordt als er op de “Start” knop gedrukt wordt, zal het Flash geheugen geprogrammeerd worden met de hex file zoals die gespecificeerd is in de “Program” instellingen. Alle opdrachten zijn afhankelijk van en gebruiken de instellingen gegeven in de STK500 user interface.
Figuur 5 – 7
Auto
Het is mogelijk de uitvoering van de commando’s naar een tekstbestand te schrijven door de “Log to file” checkbox te controleren.
5.3.6.1 het systeem instellen voor Auto -programmering
Klik op de controleboxen voor de opdrachten die u door de STK500 user interface wilt laten uit­voeren. Een typische volgorde waar het apparaat wordt gewist en daarna geprogrammeerd is te zien in figuur 5 – 7. De chip wordt gewist, beide geheugens worden geprogrammeerd en ge­checkt, en tenslotte worden de zekeringen en lock bits geprogrammeerd.
40
Als alles geconfigureerd is, wordt iedere keer als u op de “Start” knop drukt dezelfde program­meervolgorde uitgevoerd. Dit vermindert de hoeveelheid werk en tevens de kans op fouten die te wijten zijn aan operationele fouten.
5.3.6.2 Schrijven van de Auto –programmering naar een bestand
Door op de “Log to file” (schrijf naar bestand) checkbox te klikken, wordt alle output van de com­mando’s naar een tekstbestand geschreven. Kies of maak het bestand door op de “Browse” (bla­der) knop te drukken en navigeer naar de plaats waar het bestand zich bevindt of gemaakt moet worden. De output wordt naar dit bestand overgebracht en kan bekeken en bewerkt worden door een tekst -editor te gebruiken.
5.3.7 Historie venster
Het historievenster bevindt zich onderaan het STK500 scherm. In dit venster wordt de dialoog tussen AVR Studio en STK500 getoond. Voor elke nieuwe opdracht die uitgevoerd wordt, wordt de oude dialoog vervangen door de nieuwe.
Figuur 5 – 8
Historievenster
5.4 Commandolijn software
De DOS commandolijn versie van de STK500 software is nuttig voor het programmeren van de STK500 vanuit externe editors of voor toepassing in productie programmeurs. Er kunnen eenvou­dige batch bestanden gemaakt worden voor automatische programmering. Type
STK500 -?
voor hulp.
41
Synopsis:STK500
[-d device name] [m-slp] [-if infile] [ie infile] [-of outfile] [-oe outfile] [-s] [-e] [-p flelb] [-v flelb] [-l value] [-y] [-f value] [-q] [-x value] [-af start,stop] [-ae start,stop] [-c port] [-ut value] [-ua value] [-wt] [-wa] [-j value] [-b his] [-! n,p] [-?] [-t plt] [-n] [-g] [-z] [-hl?]
5.5 Parameters
d Apparaatnaam. Moet gebruikt worden als het apparaat geprogrammeerd wordt. Zie onder-
staande lijst.
m Selecteer programmamodus, serieel (s) of parallel (p). Seriële programmeermodus is in-
stelling af fabriek, en wordt gebruikt als deze parameter niet gebruikt wordt.
if Naam van de Flash input file. Nodig voor het programmeren of verifiëren van het Flash
geheugen. Het bestandsformat is Intel Extended HEX.
ie Naam van de Flash input file. Nodig voor het programmeren of verifiëren van het EEPROM
geheugen. Het bestandsformat is Intel Extended HEX.
of Naam van de Flash output file. Nodig voor het uitlezen van het Flash geheugen. Het be-
standsformat is Intel Extended HEX.
oe Naam van de EEPROM output file. Nodig voor het uitlezen van het EEPROM geheugen.
Het bestandsformat is Intel Extended HEX. s Lees signatuurbytes. e Wis apparaat. Wanneer het gebruikt wordt met een andere programmeerparameter, zal het
apparaat gewist worden voor dat er een andere programmering plaatsvindt. p Programmeer –apparaat; Flash (f), EEPROM (e) of beide (b). De corresponderende input
files zijn hierbij nodig. r Uitleesapparaat; Flash (f), EEPROM (e) of beide (b). De corresponderende output files zijn
hierbij nodig. v Verificatie -apparaat; Flash (f), EEPROM (e) of beide (b). Kan gebruikt worden met –p of
stand -alone. De corresponderende output files zijn hierbij nodig. l Plaats lock byte. “Value” (waarde) is een 8-bit hex waarde. y Lees back lock byte. f Plaats zekeringsbytes (fuse bytes). “Value” (waarde) is een 16-bit hex waarde die de in-
stellingen voor de bovenste en onderste zekering beschrijft. q Lees back fuse bytes. x Vul niet gespecificeerde locaties in met een waarde (0x00 – 0xff). De instelling af fabriek is
geen locaties te programmeren die niet in de input files zijn gespecificeerd. af Flash adresbereik. Specificeert het adresbereik van de werkzaamheden. De instelling af
fabriek is het gehele Flash.Byte adres. ae EEPROM adresbereik. Specificeert het adresbereik van de werkzaamheden. De instelling
af fabriek is het gehele EEPROM.Byte adres. c Selecteer communicatieport; “com1” tot “com8”. Als deze parameter weggelaten wordt, zal
het programma de com.ports voor de STK500 scannen. ut Stel het doelvoltage (VTARGET) in in Volts. “Value” (waarde) is een zwevende punt -
waarde tussen 0.0 en 6.0, die het nieuwe voltage beschrijft. ua Stel het instelbare voltage (AREF) in in Volts. “Value” (waarde) is een zwevende punt -
waarde tussen 0.0 en 6.0, die het nieuwe voltage beschrijft. wt Krijgen van het huidige doelvoltage (VTARGET). wa Krijgen van het huidige instelbare voltage (AREF). j Activeer de resetlijn van de applicatie. “Value” (waarde) is het aantal milliseconden dat de
RESET lijn actief gehouden wordt voordat die wordt vrijgegeven.
42
b krijgen van revisies; hardware revisie (h) en software revisie (s). ! Instellen van oscillator parameters; “n” is de vergelijkende registerwaarde en “p” is de pres-
caler registerwaarde. ? Krijgen van de oscillator parameters. t Krijgen van de zojuist geselecteerde apparaat parameters. n Krijgen van huidige programmeermodus. g Stil werken. z Geen voortgang indicator. Bijvoorbeeld, als u naar een file schrijft, gebruikt u deze optie
om de non-ASCII tekens te vermijden die voor de indicator gebruikt worden. h | ? Help informatie (doet alle andere instellingen teniet).
5.6 Syntax voor ondersteunde apparaten
AT90S1200, AT90S2313, AT90S4414, AT90S4433, AT90S2333, AT90S8515, AT90S2323, AT90S2343, AT90S8535, AT90S4434, AT90C8534, ATmega103, ATmega161, ATmega163, ATtiny11, ATtiny12, ATtiny15, ATtiny28
Figuur 5 - 9
Voorbeeld gebruik
Hoofdstuk 6
“In-System” programmeren van een extern doelsysteem
De STK500 kan worden gebruikt als programmeerapparaat om AVR apparaten in andere applica­ties te programmeren. Er zijn twee verschillende ISP aansluitings -pin-outs beschikbaar: een 6­pins en een 10-pins versie. Beide worden door de STK500 ondersteund.
Figuur 6 – 1
6-pins ISP aansluitings- pin-out
43
Figuur 6 – 2
10-pins ISP aansluitings- pin-out
Kies het apparaat dat geprogrammeerd moet worden op dezelfde manier als wanneer u een appa­raat op de STK500 programmeert. De VCC van de doelapplicatie wordt gedetecteerd door de STK500 en de signalen worden omgezet in voltageniveaus die geschikt zijn voor het doelsysteem.
Noot:
Als de andere applicatie zijn eigen stroomvoorziening naar VTG heeft, moet de jumper
VTARGET verwijderd worden voor u de STK500 verbindt met de andere applicatie. De
STK500 zou beschadigd kunnen worden als de VTARGET jumper niet verwijderd wordt.
44
Hoofdstuk 7 Verhelpen van storingen
Gids voor het verhelpen van storingen
Probleem Oorzaak Oplossing
De DC stroomkabel is niet verbonden.
Verbind de DC stroomkabel
met de DC stekker (pag. 7) Er wordt de verkeerde stroomtoevoer gebruikt.
Controleer of de stroomvoorziening
van het type DC 10-15 V is, min.
500 mA (pag. 7).
De rode Power LED brandt niet
De Aan/Uit –schakelaar staat uit.
Zet de schakelaar op “Aan”.
Er bevindt zich geen AVR apparaat in de sokkel.
Steek het AVR –apparaat in de juiste
sokkel (pag. 7). De LEDs zijn niet verbon­den met de I/O ports.
Verbind de LEDs aansluiting met de
PORTD aansluiting, en de SWITCHES
aansluiting met de PORTB aansluiting
(pag. 11).
De voorgeprogrammeerde voorbeeldcode triggert de LEDs niet.
Het flash geheugen is gewist.
Verbind de STK500 met een PC en
programmeer het AVR apparaat op-
nieuw (pag.7). De seriële kabel van de PC is niet verbonden.
Verbind de seriële kabel met de PC
COM port en de RS232PROG port.
Het AVR apparaat is in de
verkeerde sokkel gesto­ken.
Check of de juiste sokkel is gebruikt
(pag. 27).
Het AVR apparaat is met
de verkeerde richting in de
sokkel geplaatst.
Check of de nok op de AVR sokkel
overeenkomt met de sokkel op het AVR
apparaat. De doel ISP aansluiting is niet verbonden.
Verbind de 6-pins flexibele kabel van
de ISP6PIN aansluiting met de juiste
SPROG doel ISP aansluiting (pag.27) De jumperinstellingen kloppen niet.
Plaats de jumper volgens de instelling
af fabriek (pagina 20). Het VTARGET voltage is te laag.
Controleer de AVR datasheet voor het
minimale werkvoltage.
Het AVR apparaat kan niet geprogrammeerd worden.
De geheugen lock bits zijn geprogrammeerd.
Wis het geheugen voor u gaat pro-
grammeren. Seriële kabel is niet ver­bonden, of stroom niet ingeschakeld.
Verbind de seriële kabel met
RS232PROG en controleer de stroom-
aansluitingen.
Schakel andere programma’s uit die de
PC COM port gebruiken.
PC COM port is in ge­bruik.
Verander van PC COM port
AVR Studio kan STK500 niet vinden.
AVR Studio kan COM port niet vinden.
Verbreek de COM port auto -detectie in
het AVR Studio bestandsmenu. Dwing
COM port naar de juiste COM port.
45
Hoofdstuk 8 Technische ondersteuning
Voor technische ondersteuning kunt u contact opnemen met avr@atmel.com. Als u om technische ondersteuning voor de STK500 vraagt, dient u de volgende informatie mee te sturen:
Versienummer van AVR Studio. Dit kunt u vinden in het AVR Studio menu, “Help>About”.
PC processor type en snelheid
PC werksysteem en versie
Welk doel AVR apparaat er gebruikt wordt (complete onderdeelnummer)
Programmeervoltage
Jumperinstellingen
Een gedetailleerde beschrijving van het probleem.
Hoofdstuk 9 Voorbeelden van toepassingen
9.1 Gebruik van LEDs en schakelaars
Verbind PORTB met LEDS en PORTD met SWITCHES. LEDs zullen verschillend werken, afhankelijk van welke schakelaar ingedrukt wordt. Tip: Kopieer de code van dit document naar AVR Studio.
;***** STK500 LEDS en SWITCH demonstraties
.include “8515def.inc”
.def Temp =r16 ; tijdelijk register .def Delay =r17 ; stel variabele 1 uit .def Delay2 =r18 ; stel variabele 2 uit
;***** Initialisering
RESET:
ser Temp
out DDERB, Temp ; zet PORTB op output
;***** Test input / output
LOOP:
out PORTB, temp ; update LEDs
sbis PIND, 0x00 ; als (Port D, pin0 == 0) inc Temp ; tel dan één LED minder sbis PIND, 0x01 ; als (Port D, pin1 == 0) dec Temp ; tel dan één LED meer sbis PIND, 0X02 ; als (Port D, pin2 == 0) ror Temp ; draai dan de LEDs één naar rechts sbis PIND, 0x03 ; als (Port D, pin3 == 0) rol Temp ; draai dan de LEDs één naar links sbis pind, 0X04 ; als (Port D, pin4 == 0) com Temp ; keer dan alle LEDs om
46
sbis PIND, 0x05 ; als (Port D, pin5 == 0) neg Temp ; keer dan alle LEDs om en tel er één bij op sbis PIND, 0x06 ; als (Port D, pin 6 == 0) swap Temp ; verwissel dan de punten van de LEDs
;***** Wacht nu tot de veranderingen van de LEDs zichtbaar zijn.
DLY:
dec Delay brne DLY dec Delay2 brne DLY
rjmp LOOP ; herhaal de loop continu
Hoofdstuk 10 Garantieverklaring
Atmel garandeert dat het Product hieronder geleverd overeen zal komen met de van toepassing zijnde Atmel Data Sheet of met wederzijds overeengekomen specificaties en vrij zal zijn van de­fecten in materiaal en vakmanschap bij normaal gebruik en service gedurende een periode van 30 dagen gerekend vanaf de datum van de aankoopnota. Producten die “voorbeelden”, “ontwerp verificatie units” en/of “prototypes” zijn, worden verkocht als “AS IS”, “WITH ALL FAULTS” zonder garantie.
Als, gedurende de garantieperiode, (i) Atmel direct schriftelijk op de hoogte wordt gesteld van de ontdekking van enig defect in de goederen, inclusief een gedetailleerde beschrijving van zulk een defect; (ii) zulke goederen teruggestuurd worden naar Atmel, DDP Atmel’s faciliteit en vergezeld van het Atmel “Returned Material Authorization” formulier; en (iii) Atmel’s onderzoek van zulke goederen tot Atmel’s voldoening aantoont dat zulke goederen inderdaad defect zijn en dat zulke defecten niet het gevolg zijn van ongeval, misbruik, verkeerd gebruik, verwaarlozing, verandering, onjuiste installatie, reparatie, incorrect testen, of gebruik dat niet overeenkomt met enige instructie gegeven door Atmel, zal Atmel (als enige optie) of repareren, vervangen of de koper het aankoop­bedrag van zulke goederen terugbetalen. Goederen mogen niet naar Atmel teruggezonden wor­den zonder het Atmel “Returned Material Authorization” formulier.
Voordat goederen door koper naar Atmel teruggestuurd worden om voor garantie in aanmerking te komen, dient koper Atmel in de gelegenheid te stellen zulke goederen bij de koper thuis te in­specteren, en dergelijke goederen mogen niet teruggezonden worden naar Atmel zonder schrifte­lijke toestemming vooraf door Atmel.
Atmel zal de onder de garantie gerepareerde of vervangen goederen terugsturen onder betaling van de verzendkosten, en de door koper gemaakte verzendkosten vergoeden. Het uitvoeren van deze garantie verlengt niet de garantieperiode voor zulke goederen buiten de periode die van toe­passing is voor de origineel geleverde goederen.
BOVENSTAANDE GARANTIE VORMT ATMEL’S ENIGE AANSPRAKELIJKHEID, EN HET ENIGE VERHAAL VAN KOPER, VOOR ENIGE GARANTIEBREUK OF ANDER NON-CONFOR­MISME VAN DE GOEDEREN DIE ONDER DEZE OVEREENKOMST VALLEN. DEZE GARANTIE IS EXCLUSIEF, EN IN PLAATS VAN ALLE ANDERE GARANTIES. ATMEL GEEFT GEEN AN­DERE GARANTIES, EXPRES, BEDOELD OF VOLGENS DE WET, INCLUSIEF ZONDER BE­PERkING VAN ENIGE GARANTIE VAN VERKOOPBAARHEID OF HET GESCHIKT ZIJN VOOR
47
EEN BEPAALD DOEL. HET ENIGE HERSTEL VOOR ENIGE GARANTIEBREUK ZAL ZIJN ZO­ALS EXPLICIET HIERIN VOORZIEN.
Beperking van aansprakelijkheid
Niettegenstaande enige vermelding van het tegendeel hierin vermeld, zal Atmel onder geen en­kele omstandigheid, aansprakelijk zijn ten aanzien van koper of enige derden voor gevolg- , inci­dentele, indirecte, kenschetsende, speciale of andere schade. Atmel’s totale aansprakelijkheid zal niet hoger zijn dan het bedrag dat door koper aan Atmel betaald is. Atmel zal onder geen enkele omstandigheid aansprakelijk zijn voor extra kosten van vervanging.
Loading...