Hur få snurr på en MEGA32?

PIC, AVR, Arduino, Raspberry Pi, Basic Stamp, PLC mm.
Användarvisningsbild
Forsgren
EF Sponsor
Inlägg: 1227
Blev medlem: 24 oktober 2003, 13:45:48
Ort: Orsa

Hur få snurr på en MEGA32?

Inlägg av Forsgren »

Har kört med PIC förut men hade nu tänkt prova en ATMEGA32, har slängt ihop en enkel programmerare som funkar med PonyProg, å den verkar ju göra det den ska. men jag kan inte få microcontrollern att tuffa å gå.. Hur skall "Configuration and Security bits" vara satta?
Som standard verkar dom vara såhär:

BootLock12 = 0
BootLock02 = 0
BootLock01 = 0
Lock2 = 0
Lock1 = 0
OCDEN = 1
JTAGEN = 0
CKOPT = 1
EESAVE = 1
BOOTSZ1 = 0
BOOTSZ0 = 0
BOOTRST = 1
BODLEVEL = 1
BODEN = 1
SUT1 = 1
SUT0 = 0
CKSEL3 = 1
CKSEL2 = 1
CKSEL1 = 1
CKSEL0 = 0

Kör MEGA:n med en kristall på 10 MHz, reset är satt till hög. den har 5V och GND. Vad mer måste man göra?
Någon som har ett fungerande blinkamedenlysdiod-program att skicka till mig kanske (som hex)?
Användarvisningsbild
cykze
EF Sponsor
Inlägg: 1539
Blev medlem: 8 april 2004, 10:40:28
Ort: Uppsala

Inlägg av cykze »

Ändra inte på några fuse-bitar. Låt dom vara som dom är. Som standard används den interna oscillatorn på 1 MHz. Så någon kristall behöver du inte om du nu inte behöver det. :)

Blinkaprogram som blinkar hela PORTB:
(Klistra in koden i en vanlig textfil och spara som .hex)

Kod: Markera allt

:100000000C942A000C9445000C9445000C94450077
:100010000C9445000C9445000C9445000C9445004C
:100020000C9445000C9445000C9445000C9445003C
:100030000C9445000C9445000C9445000C9445002C
:100040000C9445000C9445000C9445000C9445001C
:100050000C94450011241FBECFE5D8E0DEBFCDBF14
:1000600010E0A0E6B0E0E2EBF0E002C005900D92F7
:10007000A036B107D9F710E0A0E6B0E001C01D92AC
:10008000A036B107E1F70C9447000C940000CFE5CF
:10009000D8E0DEBFCDBF8FEF87BB84E294EF01973E
:1000A000F1F784E294EF0197F1F788B3809588BB6C
:0200B000F4CF8B
:00000001FF
Användarvisningsbild
Forsgren
EF Sponsor
Inlägg: 1227
Blev medlem: 24 oktober 2003, 13:45:48
Ort: Orsa

Inlägg av Forsgren »

Men har man sett, det funkar ju! :) Tack!
Användarvisningsbild
Forsgren
EF Sponsor
Inlägg: 1227
Blev medlem: 24 oktober 2003, 13:45:48
Ort: Orsa

Inlägg av Forsgren »

Men inte nu längre, vet inte om jag ändrade på någon fuse-bit, men nu går den inte, kan inte läsa eller programmera den heller.. Helt död.. :evil:
Användarvisningsbild
$tiff
Inlägg: 4941
Blev medlem: 31 maj 2003, 19:47:52
Ort: Göteborg
Kontakt:

Inlägg av $tiff »

Såja, nu har du lärt dig den hårda vägen att man inte ska leka med fuse-bits för mycket. :P
Det kan (och gör ofta) resultera i att den inte går att programmera längre.
Användarvisningsbild
Forsgren
EF Sponsor
Inlägg: 1227
Blev medlem: 24 oktober 2003, 13:45:48
Ort: Orsa

Inlägg av Forsgren »

Men vad är det som händer? Den jag (kanske) ändrade var nog bara CKSEL0..
Hur skall det ställas in för att få den att gå med den externa kristallen?
Användarvisningsbild
cykze
EF Sponsor
Inlägg: 1539
Blev medlem: 8 april 2004, 10:40:28
Ort: Uppsala

Inlägg av cykze »

Är det så svårt att låta bli att ändra på dom. :) Du kan prova att lägga på en extern klocksignal på XTAL1, om du har tillgång till någon typ av oscillator.
Användarvisningsbild
Forsgren
EF Sponsor
Inlägg: 1227
Blev medlem: 24 oktober 2003, 13:45:48
Ort: Orsa

Inlägg av Forsgren »

Jo, men trodde ju jag ändrade rätt.. :roll: oki!! Kopplade in respiratorn(funktionsgenerator) så nu blev det fart på den igen :) Tackar för hjälpen!
Har aldrig haft sådana problem med PIC, känns som om dom är lite mer "klantvänliga" :D
Användarvisningsbild
MicaelKarlsson
Inlägg: 4669
Blev medlem: 18 juni 2004, 09:16:07
Ort: Aneby
Kontakt:

Inlägg av MicaelKarlsson »

Man kan klanta sig en hel del med AVR också, gäller bara att välja rätt saker att klanta sig med :D

Å andra sidan kan det bli enklare att klanta sig om man använder STK500 har jag märkt. Har kört en hel del med den utan att klanta mig en enda gång, fast nån gång skall ju vara den första.......
Användarvisningsbild
Hedis
Inlägg: 2493
Blev medlem: 8 december 2003, 15:10:44
Ort: Vänersborg
Kontakt:

Inlägg av Hedis »

Det är något lurigt med fusebit´s i PonyProg. Jag har för mig att dom är inverterade.

Något du förmodligen kommer stöta på om du inte inaktiverar JTAG är att några pinnar på portb (eller var det C) inte går att använda som utgångar.
Så det kan vara bra att tänka på.
Användarvisningsbild
MicaelKarlsson
Inlägg: 4669
Blev medlem: 18 juni 2004, 09:16:07
Ort: Aneby
Kontakt:

Inlägg av MicaelKarlsson »

JTAG på mega32 finns på port C läs mer på sid 58 i daabladet
Användarvisningsbild
Forsgren
EF Sponsor
Inlägg: 1227
Blev medlem: 24 oktober 2003, 13:45:48
Ort: Orsa

Inlägg av Forsgren »

Hedis skrev:Det är något lurigt med fusebit´s i PonyProg. Jag har för mig att dom är inverterade.
Jopp, jag märkte det, var därför som det inte fungerade som jag ville när jag ändrade dem från första början, ikryssad ruta = "0"..
frejo
Inlägg: 496
Blev medlem: 21 april 2004, 21:43:01
Ort: Linköping

Inlägg av frejo »

Hade du tänkt programmera i C kan jag rekommendera följande lib:
http://hubbard.engr.scu.edu/embedded/avr/avrlib/

Den innehåller dessutom rätt mycket exempelkod.
Användarvisningsbild
Forsgren
EF Sponsor
Inlägg: 1227
Blev medlem: 24 oktober 2003, 13:45:48
Ort: Orsa

Inlägg av Forsgren »

frejo: Japp, verkar va ett bra lib..

Men vad har jag för fel när det bla står "glcdtest.c:51: warning: implicit declaration of function `outp'" när jag kör Make All?
Användarvisningsbild
björn
EF Sponsor
Inlägg: 2570
Blev medlem: 29 mars 2004, 23:09:55

Inlägg av björn »

du har declarerat fel på en variabel på rad 51 i filen glcdtest.c. mer vet jag inte utan att se koden.
Skriv svar