Programmering af AVR ATmega88PA (Læst 6518x)

Offline janholm

  • Nyfødt El-Elsker
  • *
  • Indlæg: 6
  • Antal brugbare Indlæg: 0
    • Vis profil
Programmering af AVR ATmega88PA
« Dato: April 21, 2012, 11:31:41 »
Hej Forum
Jeg har oprettet mig her fordi jeg fandt at der var en del tråde om AVR. Jeg har købt 2 stk RoboCard fra http://www.tek-space.dk/, som indeholder en ATmega88PA. Jeg skal bruge RoboCard'et til en simpel styring vedr. lys og temperatur fra en vandluftsolfanger.

Jeg har nogle gamle Fun-card brændere, som kunne programmere AT90-processorer:

- Millinium-brænderen med seriel COM-stik, og
- en FunCard Programmer med Centronic printer stik.

Mit spørgsmål er nu om jeg kan bruge een af disse til at lave den første programmering af ATmega88PA via ISP-forbindelsen?

Jeg planlægger at loade USBasploader til ATmega'en og herefter lave programmer i C og loade via USB. Så der er altså kun tale om den første initial-programmering. Herefter er det planen at programmere C v.h.a. Eclipse IDE med AVR plug-in. Det hele på openSUSE Linux 12.1.

Giv venligst Jeres bud på min planlagte fremgangsmåde!

Med venlig hilsen
Jan Holm

 

Offline gerd

  • Administrator
  • µProcessoren
  • *****
  • Indlæg: 915
  • Antal brugbare Indlæg: 97
    • Vis profil
    • Hjemmeside med nogle af mine projekter
Sv: Programmering af AVR ATmega88PA
« Svar #1 Dato: April 21, 2012, 14:51:10 »
Hej jan,

her er diagrammet af Fun Card brændere:
http://www.sbprojects.com/knowledge/footprints/funcard.php
og her diagrammet af STK200 brændere:
http://www.avrfreaks.net/index.php?name=PNphpBB2&file=viewtopic&p=463274

Så jeg tror, det  vil gå.

Du kann tage avrdude og starte det med
Kode:
avrdude -c stk200
Hvis du har en hurtig pc, kig på parameteren "-i"

Har Du en rigtig parallelport ? Jeg tror, det går ikke med en USB-parallel-adapter.

gerd

 

Offline janholm

  • Nyfødt El-Elsker
  • *
  • Indlæg: 6
  • Antal brugbare Indlæg: 0
    • Vis profil
Sv: Programmering af AVR ATmega88PA
« Svar #2 Dato: April 22, 2012, 11:26:46 »
Hej Gerd

Tak for info!

Hvis jeg forstår dig rigtigt er den letteste måde at programmere min ATmega med et STK200-kabel efter den tegning du linker til, og så køre kommandoen: avrdude -c stk200 fra en PC med et DB25 printer stik?

Ja, jeg har ældre PC'en med DB25 printerport, men jeg må indrømme at jeg ikke længere har en gammel Centronics primterport liggende.

Hilsen Jan

 

Offline gerd

  • Administrator
  • µProcessoren
  • *****
  • Indlæg: 915
  • Antal brugbare Indlæg: 97
    • Vis profil
    • Hjemmeside med nogle af mine projekter
Sv: Programmering af AVR ATmega88PA
« Svar #3 Dato: April 22, 2012, 18:18:45 »
Hej Jan,

Citér
Hvis jeg forstår dig rigtigt er den letteste måde at programmere min ATmega med et STK200-kabel efter den tegning du linker til,
Ja. Og jeg tror, Fun Card brænderen ER en STK200-kabel.

Citér
og så køre kommandoen: avrdude -c stk200 fra en PC med et DB25 printer stik?
Kode:
avrude -c stk200 -i 10 -e -p m88pa -U flash:wFILENAME.hex ... 
-c stk200 for STK200 brænderen
-i 10 Hvis du har en hurtig PC
-e Erase Chip
-p m88pa (avrdude kender ikke Atmega88PA, så du er nødt til at tilføje Atmega88PA med signaturen  i /etc/avrdude.conf)
Kode:
signature        = 0x1e 0x93 0x0f;
http://www.avrfreaks.net/index.php?name=PNphpBB2&file=printview&t=100557&start=0
-U flash:w:FILENAME.hex
-U lfuse:...
-U hfuse:...

se her: http://www.nongnu.org/avrdude/user-manual/avrdude_4.html

Du har openSuse ...
Så du er nødt til at skrive dette:
Kode:
su
mknod /dev/parport0 c 99 0
chmod a+rw /dev/parport0

gerd

 

Offline janholm

  • Nyfødt El-Elsker
  • *
  • Indlæg: 6
  • Antal brugbare Indlæg: 0
    • Vis profil
Sv: Programmering af AVR ATmega88PA
« Svar #4 Dato: April 26, 2012, 18:41:54 »
Hej igen

Og tusind tak for den store hjælp. Det går desværre ikke så hurtigt med projektet, så jeg arbejder stadig på den elektriske løsning:

Gammel PC med parallel printerport <----->  FunCard Programme, nu med DB25 stik istedet for Centronics-stik
FunCard Programmer Card Slot  <-------> skrottet FunCard, da min ATmega har dip28 og de andre sokler er enten dip 20 el. 40
Skrottet FunCard med ledninger loddet på de 5/6 connectorer <-----> ISP-stik på mit RoboCard print med ATmega-chip.

Mit problem er nu om jeg skal bruge 5 eller 6 forbindelser til ISP-stikket?

ISP-stikket skulle være standard udlagt:
1. MISO
2. VCC
3. SCK
4. MOSI
5. RESET
6. GND

Men det FunCard, som jeg vil skrotte har kun 5 forbindelser ført frem til ISO-connectorerne. Og så vidt jeg kan se på printbanerne på min FunCard Programmer, er der også kun fremført 5 forbindelser til Card Slottet.

Skydtes det at Atmel AT90-chippen kunne programmeres med 5 forbindelser, hvorimod ISP-stikket til ATmega skal bruge 6 forbindelser? (eller er der een som er overflødig?)

Jan

 

Offline gerd

  • Administrator
  • µProcessoren
  • *****
  • Indlæg: 915
  • Antal brugbare Indlæg: 97
    • Vis profil
    • Hjemmeside med nogle af mine projekter
Sv: Programmering af AVR ATmega88PA
« Svar #5 Dato: April 26, 2012, 19:31:37 »
Hej Jan,
du skal bruge 6 forbindelser for en ATMega.
For en AT90 i Funcard, du skal bruge 7!
En ekstra pin for oscillator.

Kan du se, hvilke pin mangler?

gerd

 

Offline janholm

  • Nyfødt El-Elsker
  • *
  • Indlæg: 6
  • Antal brugbare Indlæg: 0
    • Vis profil
Sv: Programmering af AVR ATmega88PA
« Svar #6 Dato: April 27, 2012, 11:49:04 »
Hej Gerd

Jeg har fulgt printbanerne på FunCard Programmer op, og jeg har 6 forbindelser ført igennem til CardSlot soklen :-)

Og det var ikke korrekt hvad jeg oplyste om det FunCard med kun 5 forbindelser, og som jeg planlagde at skrotte/save over og bruge som ledningsforbindelse til mit ISP-stik. Kortet har en PIC16??? og en EPROM-chip.

Jeg har imidlertid også et andet FunCard, som hedder: SMT-version, ver 1.0, Free4All. Det indeholder en AT90S8515A + en EPROM på et dobbeltsidet print. På komponentsiden er der 7 forbindelser ført frem til CardSlot-kontakterne og på undersiden er der kun 5 forbindelser ført frem. Så jeg planlægger at save dette FunCard over og lodde de 6 forbindelser fra et ISP-kabel på oversiden med de 7 forbindelser. Mon ikke det er ok?

Jeg er dog blevet lidt i tvivl om min FunCard Programmer er af typen STK200? Efter at have loddet Centronics-stikket ud og erstattet det med et DB25-stik (printet var forberedt til det), kan jeg nu refererer til DB25-stiknumrerne. Jeg kan se at pin 10-12 gennem 3 stk 100 ohm modstande danner VCC (+) på printet og ud til C1 på CardSlot-soklen. Pin 14-21 danner GND (-).

Tror du stadig at typen skal være STK200 til avrdude?

Jan

 

Offline gerd

  • Administrator
  • µProcessoren
  • *****
  • Indlæg: 915
  • Antal brugbare Indlæg: 97
    • Vis profil
    • Hjemmeside med nogle af mine projekter
Sv: Programmering af AVR ATmega88PA
« Svar #7 Dato: April 28, 2012, 17:42:06 »
Hej jan:

Dette er en Funcard programmer:
http://www.sbprojects.com/knowledge/footprints/funcard.php

Og dette er en STK200:
http://www.xtronix.in/stk-200.gif

GND er Pin (19)20..25
Og VCC er Pin 2,3,4

Citér
Jeg kan se at pin 10-12 gennem 3 stk 100 ohm modstande danner VCC (+) på printet og ud til C1 på CardSlot-soklen. Pin 14-21 danner GND (-).

Det er spejlvendt.: 1 = 13, 13=1, 14=25, 25=14.
Kan det være?

gerd

 

Offline janholm

  • Nyfødt El-Elsker
  • *
  • Indlæg: 6
  • Antal brugbare Indlæg: 0
    • Vis profil
Sv: Programmering af AVR ATmega88PA
« Svar #8 Dato: April 29, 2012, 15:55:34 »
Hej Gerd

Endnu engang tak for din tålmodighed.

Jeg besluttede at opgive at bruge min gamle FunCard Programmer til dette projekt. Jeg mener den var alt for forskellighed fra en STK200, og jeg fandt ud af, at den også indeholdt en del fejl. Tror faktisk heller ikke jeg nogensinde fik den til at virke, men brugte istedet en Millenium brænder til FunCard'ene.

Jeg er istedet næste ved at være klar med et STK200-lignende kabel med 4 modstande, som følger de tegninger du henviser til.

Desværre når jeg ikke at afprøve det her i weekenden, og jeg er bortrejst i begyndelsen af den kommende uge. Men jeg vil skrive her på tråden, når jeg har noget nyt.

Igen tak for din hjælp!

Jan

 

Offline janholm

  • Nyfødt El-Elsker
  • *
  • Indlæg: 6
  • Antal brugbare Indlæg: 0
    • Vis profil
Sv: Programmering af AVR ATmega88PA
« Svar #9 Dato: Maj 07, 2012, 09:20:26 »
Hej Forum
Så er det lykkedes at programmere min ATmega88-processor :-)
Jeg lavede et parallelkabel med 4 modstande - STK200 ifølge Gerd's link og det virkede perfekt.

Printerporten på min openSUSE 12.1 var defineret, og jeg havde installeret sw til avrdude. Jeg boot'ede om i non-grafic mode med "init 3", således at KDE ikke kørte og eventuelt ødelagde timing på printerporten og jeg brugte parameter: -i 10.

Men nu bliver det nok mere computerteknik end elektronik!

Konklusionen var at gamle FunCard's med og til pic's nok ikke virker!

Jan