Min ATmega328P "glömmer" bort mitt program, varför?
Min ATmega328P "glömmer" bort mitt program, varför?
Hej,
har en Arduino UNO och har köpt två nya ATmega328P från ebay som var förprogrammerade med Arduino bootloadern och iaf den ena fungerar bra när jag har laddat in koden. Men när spänningen försvinner och kopplas in igen så har programmet försvunnit och det är ett standardprogram på som blinkar den led:en som sitter på arduinon. Har testat att bränna in en ny Arduino boot loader men detta fungerar inte från Arduinos IDE.
Någon som har en idé om hur man löser detta?
har en Arduino UNO och har köpt två nya ATmega328P från ebay som var förprogrammerade med Arduino bootloadern och iaf den ena fungerar bra när jag har laddat in koden. Men när spänningen försvinner och kopplas in igen så har programmet försvunnit och det är ett standardprogram på som blinkar den led:en som sitter på arduinon. Har testat att bränna in en ny Arduino boot loader men detta fungerar inte från Arduinos IDE.
Någon som har en idé om hur man löser detta?
Re: Min ATmega328P "glömmer" bort mitt program, varför?
> har köpt två nya ATmega328P från ebay...
Det behövs bättre referens. "eBay" är för svepande.
Länk till just den pryl du har köpt !
> Men när spänningen försvinner och kopplas in igen så har programmet försvunnit
Kan du beskriva bättre/närmare vad du gör ? Hur är det hela kopplat ? Spänningen till vad ?
Programmet borde inte försvinna *bara* för att spänningen försvinner...
> och det är ett standardprogram på som blinkar den led:en som sitter på arduinon.
Här är det ganska oklart. *Var* sitter de två AVR'er som som du köpte från eBay ?
Sitter de *på* Arduinon eller har du kopplat de externt till Arduinon ?
> Har testat att bränna in en ny Arduino boot loader men detta fungerar inte från Arduinos IDE.
Du lär behöva en "vanlig" ISP-programmerare för att ladda bootloadern till en naken/tom AVR.
Om inte Arduinins IDE kör ISP (sannolikt så förväntar den väl sig att köra mot en Arduino
med en bootloader aktiv?) så lär den inte kunna ladda boatloadern heller.
Däremot så ska ju Arduinon i sig (med en fungerande processor) kunna fungera som
en ISP programmerare alltså och kunna flasha en bootloader till en *annan* AVR
kopplad externt till Arduinon.
*Har* du en fungerande Ardunio ??
Det behövs bättre referens. "eBay" är för svepande.

Länk till just den pryl du har köpt !
> Men när spänningen försvinner och kopplas in igen så har programmet försvunnit
Kan du beskriva bättre/närmare vad du gör ? Hur är det hela kopplat ? Spänningen till vad ?
Programmet borde inte försvinna *bara* för att spänningen försvinner...
> och det är ett standardprogram på som blinkar den led:en som sitter på arduinon.
Här är det ganska oklart. *Var* sitter de två AVR'er som som du köpte från eBay ?
Sitter de *på* Arduinon eller har du kopplat de externt till Arduinon ?
> Har testat att bränna in en ny Arduino boot loader men detta fungerar inte från Arduinos IDE.
Du lär behöva en "vanlig" ISP-programmerare för att ladda bootloadern till en naken/tom AVR.
Om inte Arduinins IDE kör ISP (sannolikt så förväntar den väl sig att köra mot en Arduino
med en bootloader aktiv?) så lär den inte kunna ladda boatloadern heller.
Däremot så ska ju Arduinon i sig (med en fungerande processor) kunna fungera som
en ISP programmerare alltså och kunna flasha en bootloader till en *annan* AVR
kopplad externt till Arduinon.
*Har* du en fungerande Ardunio ??
Re: Min ATmega328P "glömmer" bort mitt program, varför?
Hur har du kommit fram till det ?Frossa skrev:Men när spänningen försvinner och kopplas in igen så har programmet försvunnit
Kan det vara så att den inte startar.
Re: Min ATmega328P "glömmer" bort mitt program, varför?
Det är inte så att det är bootloadern som startar och blinkar lysdioden? Den kanske vill ha en pinne till jord eller liknande för att starta programmet?
Re: Min ATmega328P "glömmer" bort mitt program, varför?
Okej, nu ska jag försöka förklara lite bättre.
För det första så är det de här två jag köpte http://www.ebay.com/itm/ws/eBayISAPI.dl ... OC:US:1123
Jag har satt den ena micro controllern på min Arduino och som sagt så fungerar det bra att ladda upp ett program till den. Men när jag sen drar ur usbkabeln till Arduinon och pluggar in den igen så har programmet ersatts av ett "standardprogram".
Lysdioden jag pratar om är den som sitter som standard på Arduinons pin 13.
För det första så är det de här två jag köpte http://www.ebay.com/itm/ws/eBayISAPI.dl ... OC:US:1123
Jag har satt den ena micro controllern på min Arduino och som sagt så fungerar det bra att ladda upp ett program till den. Men när jag sen drar ur usbkabeln till Arduinon och pluggar in den igen så har programmet ersatts av ett "standardprogram".
Lysdioden jag pratar om är den som sitter som standard på Arduinons pin 13.
Re: Min ATmega328P "glömmer" bort mitt program, varför?
Vilket "standardprogram" ? Var finns det ?
Kan du få kontakt med Arduinon alls ?
Hur vet du att det är ett "standardprogram" på den ?
Kan du få kontakt med Arduinon alls ?
Hur vet du att det är ett "standardprogram" på den ?
Re: Min ATmega328P "glömmer" bort mitt program, varför?
Vad jag menar är väl egentligen att den som sagt "glömmer" av mitt program och verkar ladda in ett program som blinkar led:en jag pratade om. Vad det är för program vet jag inte, dem kanske har lagt in det i bootloadern?
Vad jag mena med "standardprogram" var att det är samma program som alltid laddas när usbkabeln kopplas in.
Hur menar du med kontakt?
Allting fungerar bra när jag kör mina program. Enda problemet är att dem försvinner när usbkabeln kopplas ur.
Vad jag mena med "standardprogram" var att det är samma program som alltid laddas när usbkabeln kopplas in.
Hur menar du med kontakt?
Allting fungerar bra när jag kör mina program. Enda problemet är att dem försvinner när usbkabeln kopplas ur.
Re: Min ATmega328P "glömmer" bort mitt program, varför?
OK.
Är det inte bara så att det är bootloadern som går igång ?
D.v.s att ditt program nog ligger kvar, men du måste ge
Arduinon något kommando för att den ska switcha över
till ditt program ? Eller kanske inte...
Enligt : http://arduino.cc/en/Guide/Environment
"The bootloader will blink the on-board (pin 13) LED when it starts (i.e. when the board resets)."
Men det har du säkert redan sett.
Är det inte bara så att det är bootloadern som går igång ?
D.v.s att ditt program nog ligger kvar, men du måste ge
Arduinon något kommando för att den ska switcha över
till ditt program ? Eller kanske inte...
Enligt : http://arduino.cc/en/Guide/Environment
"The bootloader will blink the on-board (pin 13) LED when it starts (i.e. when the board resets)."
Men det har du säkert redan sett.
Re: Min ATmega328P "glömmer" bort mitt program, varför?
Verkar vara ett problem med den bantade bootloader (optiboot) dina kretsar är programmerade med.
http://code.google.com/p/optiboot/issues/detail?id=26
http://code.google.com/p/optiboot/issues/detail?id=40
Har skummat igenom, verkar som att det finns en lösning. Vet ej ifall det går att lösa utan att programmera om boatloadern.
http://code.google.com/p/optiboot/issues/detail?id=26
http://code.google.com/p/optiboot/issues/detail?id=40
Har skummat igenom, verkar som att det finns en lösning. Vet ej ifall det går att lösa utan att programmera om boatloadern.
Re: Min ATmega328P "glömmer" bort mitt program, varför?
Hmm, var står det att det är optiboot?
Men iaf så låter det likt mitt problem så jag ska kolla närmare på det.
Men iaf så låter det likt mitt problem så jag ska kolla närmare på det.
Re: Min ATmega328P "glömmer" bort mitt program, varför?
Jag googlade och fick fram att UNO använder optiboot. Ser även att det står i Sodjans länk:
"
Arduino Uno
An ATmega328 running at 16 MHz with auto-reset, using the optiboot bootloader (115200 baud, 0.5 KB).
"
Bootloadern ska blinka lysdioden en gång vid uppstart. Buggen innebär att vakthunden nollställer programmet med jämna mellanrum (om jag förstod rätt), vilket ser ut som att den kör ett program som blinkar lysdioden.
"
Arduino Uno
An ATmega328 running at 16 MHz with auto-reset, using the optiboot bootloader (115200 baud, 0.5 KB).
"
Bootloadern ska blinka lysdioden en gång vid uppstart. Buggen innebär att vakthunden nollställer programmet med jämna mellanrum (om jag förstod rätt), vilket ser ut som att den kör ett program som blinkar lysdioden.
Re: Min ATmega328P "glömmer" bort mitt program, varför?
Måste erkänna att jag inte fullt hängt med i hur felet uppstår.
Men det verkar som att du hamnar i bootloaderns programmeringsmode.
"Autoreset" betyder att man slipper trycka in resetknappen vid exakt rätt tid för att hamna i programmeringsmode, vilket många upskattar.
Rent praktiskt innebär det att man sänker DTR på seriporten (USB i ditt fall) och framtvingar en reset på PIN29 på MCU'n i rätt läge när man programmerar kretsen.
Detta sköts automatiskt av Arduino Toolchain. Samma sak händer givetvis när man spänningsätter kortet från början, men om ingen programmering sker så går bootloadern vidare till det "riktiga programmet"
Reset har 10K pullup och hålls alltså nomalt hög. Vid reset dras denna låg antingen av "reset knappen" eller låg DTR. (Många missar detta när dom kör kretasrna löst, men jag tolkar det som att det är inte det du gör)
Jag vet inte om detta hjälper dig i felsökningen, men det kan vara bra att veta hur det hänger ihop kanske.
Men det verkar som att du hamnar i bootloaderns programmeringsmode.
"Autoreset" betyder att man slipper trycka in resetknappen vid exakt rätt tid för att hamna i programmeringsmode, vilket många upskattar.
Rent praktiskt innebär det att man sänker DTR på seriporten (USB i ditt fall) och framtvingar en reset på PIN29 på MCU'n i rätt läge när man programmerar kretsen.
Detta sköts automatiskt av Arduino Toolchain. Samma sak händer givetvis när man spänningsätter kortet från början, men om ingen programmering sker så går bootloadern vidare till det "riktiga programmet"
Reset har 10K pullup och hålls alltså nomalt hög. Vid reset dras denna låg antingen av "reset knappen" eller låg DTR. (Många missar detta när dom kör kretasrna löst, men jag tolkar det som att det är inte det du gör)
Jag vet inte om detta hjälper dig i felsökningen, men det kan vara bra att veta hur det hänger ihop kanske.