teding:
Wat heb je aan elkaar aangesloten, en welke pinnen heb je nu gebruikt?
Ik heb een mega met een mega, via de bandverbinding.
Kabel 5 geknipt.
In de mega met de sketch de geknipte reset naar de 10. [ dus het draadje wat van de uit te lezen mega komt, gaat naar de 10 reset ]
Dan heb ik de band op meerdere manier op de te lezen mega gezet.
En op 1 manier kwam deze tekst eruit...
Ok, Op de mega/uno staat op de print een wit puntje voor pin 1
Op een bandkabel zit vaak een klein driehoekje op de connector als pin 1
en/of de ader met rode kleur is pin 1
Je hebt nu twee keuze's,
Of je set nick bootloader sketch in de uno
en volgt zijn instructie's
Of je volgt het arduinoISP voorbeeld. Hier heb je dan wellicht een extra condesator nodig tussen de reset en gnd van de uno.
Dus ga voor nick bootloader.
Succes
Of je volgt het arduinoISP voorbeeld. Hier heb je dan wellicht een extra condesator nodig tussen de reset en gnd van de uno.
Dus ga voor nick bootloader.
Succes
Ik heb nu :
Atmega chip programmer.
Written by Nick Gammon.
Entered programming mode OK.
Signature = 0x1E 0x98 0x01
Processor = ATmega2560
Flash memory size = 262144 bytes.
LFuse = 0xFF
HFuse = 0xD8
EFuse = 0xFD
Lock byte = 0xEF
Clock calibration = 0x8E
Bootloader address = 0x3E000
Bootloader length = 7434 bytes.
Type 'V' to verify, or 'G' to program the chip with the bootloader ...
Verifying ...
No errors found.
Done.
Type 'C' when ready to continue with another chip ...
atmega2560_v2,// loader image
0x3E000, // start address
sizeof atmega2560_v2,
256, // page size (for committing)
0xFF, // fuse low byte: external clock, max start-up time
0xD8, // fuse high byte: SPI enable, boot into bootloader, 8192 byte bootloader
0xFD, // fuse extended byte: brown-out detection at 2.7V
0x2F }, // lock bits: SPM is not allowed to write to the Boot Loader section.
Nu ben ik je kwijt...
Wat doet die watchdog timer....
Het probleem waarom ik een bootloader update moet is dat de oude vast icm de watchdog.
Bootloader update gedaan [ geloof ik nu dan eindelijk ]
Maar zie ik die watchdog uit staan.
Als dit een standaard setting zal het wel kloppen.. toch? [ en werkt de watchdog ]
Of moet ik die fusses oid aanpassen ?
Om "het " watchdog probleem op te lossen.,....
Een watchdog is een systeem die kijkt of er nog wel wat gebeurt.
Als er niets meer gebeurt, dan is de processor mogelijk vastgelopen.
De watchdog zal dan de processor resetten om m weer aan de gang te krijgen.
Hoe de controle precies gedaan word weet ik niet.
Maar het ligt voor de hand dat de processor een bitje om moet zetten eens in de zoveel tijd.
Toen er nog geen ingebouwde watchdogs waren werd de adresbus vaak in de gaten gehouden door en extern component.
Als daar niet vaak genoeg een pulsje voorbij kwam op een bepaalde pin, werd er gereset.
Dat laatste heeft alleen zin bij processoren die gebruik maken van een extern parallel geheugen en dat is inmiddels "ouderwets".
MAS3:
Een watchdog is een systeem die kijkt of er nog wel wat gebeurt.
Als er niets meer gebeurt, dan is de processor mogelijk vastgelopen.
De watchdog zal dan de processor resetten om m weer aan de gang te krijgen.
Hoe de controle precies gedaan word weet ik niet.
Maar het ligt voor de hand dat de processor een bitje om moet zetten eens in de zoveel tijd.
Toen er nog geen ingebouwde watchdogs waren werd de adresbus vaak in de gaten gehouden door en extern component.
Als daar niet vaak genoeg een pulsje voorbij kwam op een bepaalde pin, werd er gereset.
Dat laatste heeft alleen zin bij processoren die gebruik maken van een extern parallel geheugen en dat is inmiddels "ouderwets".
Maar oke...
Moet ik nu die fuse aanpassen of niet??
Dat moet je voor jezelf bepalen.
Als je wil dat je programma blijft lopen en reset als ie toch vastgelopen is, zet je m aan.
Als je daar geen behoefte aan hebt, laat je m uitstaan.
Ik weet niet hoe die standaard in de Arduino staat.
MAS3:
Dat moet je voor jezelf bepalen.
Als je wil dat je programma blijft lopen en reset als ie toch vastgelopen is, zet je m aan.
Als je daar geen behoefte aan hebt, laat je m uitstaan.
Ik weet niet hoe die standaard in de Arduino staat.
Dat kun je uit de gegevens halen die je eerder hebt gehad.
Als je op teding's link gaat kijken bij die frank zhao, zie je een aantal zaken waar je vinkjes kunt zetten.
Als je een vinkje zet in het vakje WDTON (WatchDogTimerON), dan zie je dat de waarde in het veld HIGH verandert van 0x89 naar 0x99.
Je kunt dat veld dat verandert eerst aanpassen naar wat er nu bij jou staat, en vervolgens de vakjes aan of uitvinken om de nieuwe waarde te zien.
Gewoon ff mee rommelen dan zul je het vast wel zien.
Vervolgens verander je in de sketch de betreffende regel.
Nick's sketch heeft dat op regel 79 staan.
Ik heb dit zelf niet geprobeerd dus ik kan je niets uit ervaring vertellen, maar dat is wat ik uit de gegeven informatie haal.
MAS3:
Dat kun je uit de gegevens halen die je eerder hebt gehad.
Als je op teding's link gaat kijken bij die frank zhao, zie je een aantal zaken waar je vinkjes kunt zetten.
Als je een vinkje zet in het vakje WDTON (WatchDogTimerON), dan zie je dat de waarde in het veld HIGH verandert van 0x89 naar 0x99.
Je kunt dat veld dat verandert eerst aanpassen naar wat er nu bij jou staat, en vervolgens de vakjes aan of uitvinken om de nieuwe waarde te zien.
Gewoon ff mee rommelen dan zul je het vast wel zien.
Vervolgens verander je in de sketch de betreffende regel.
Nick's sketch heeft dat op regel 79 staan.
Ik heb dit zelf niet geprobeerd dus ik kan je niets uit ervaring vertellen, maar dat is wat ik uit de gegeven informatie haal.
Thanks..
Dat verschilletje van frank zhao zag ik ook...
Alleen als ik op #79 iets ga wijzigen, weigert arduino te compileren...
Dus iemand een andere tip om een 9 veranderd in een 8 te krijgen..
From time to time, it may be useful to have an interrupt or reset delivered independently of the main program code. This may be to wake the AVR from sleep mode or to reset when the program gets stuck in a loop; that's where the watchdog timer comes in. An onboard 128kHz oscillator is used to drive the watchdog with intervals from 16ms to 8s. If the watchdog expires without being touched, the system can catch an interrupt, be reset or both. If you "kick the dog" before the time expires, no action is taken.
While it can be slightly complicated to set up the watchdog by hand, avr-libc has some convenience functions. To enable the watchdog, call watchdog_enable() with the desired duration. Refreshing the watchdog is as simple as a call to watchdog_reset(). If the WDTON fuse is set the watchdog activates automatically, rather than requiring manual activation.
Ik denk niet dat je WDTON op on moet zetten, gebeurt via de software waarschijnlijk al