Skocz do zawartości

Przywrócenie arduino do ustawień fabrycznych


yuki

Pomocna odpowiedź

Dzień dobry.

Otrzymałam płytkę arduino uno, która wcześniej była programowania za pomocą scratch i prawdopodobnie pythona. Po podłączeniu do komputera płytka komunikuje się z arduino IDE i komputerem (po kliknięciu upload w arduino IDE nie ma komunikatu o błędzie, na płytce mruga dioda). Wgrałam jej przykładowy program "blink" z lekcji nr 1 kursu arduino 1, lecz nie mrugają na niej diody. Po zasygnalizowaniu odebrania danych, nic więcej się nie dzieje. Co należy uczynić, by płytka działała?

 

Pozdrawiam

Link do komentarza
Share on other sites

W PLIK-PREFERENCJE włączyć wyświetlanie wszystkich komunikatów (ostrzeżeń) podczas kompilowania i wgrywania programu. Wgrać przykład PLIK-PRZYKLADY-BASICS-BLINK i wysłać do Arduino. Prześledzić komunikaty w okienku konsoli (to czarne na dole w Arduino IDE, można zmieniać jego rozmiar) i pochwalić się wynikami.

Edytowano przez Belferek
Link do komentarza
Share on other sites

Cytat

Using board 'uno' from platform in folder: C:\Users\j\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.6
Using core 'arduino' from platform in folder: C:\Users\j\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.6
Detecting libraries used...
"C:\\Users\\j\\AppData\\Local\\Arduino15\\packages\\arduino\\tools\\avr-gcc\\7.3.0-atmel3.6.1-arduino7/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -Wno-error=narrowing -flto -w -x c++ -E -CC -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10607 -DARDUINO_AVR_UNO -DARDUINO_ARCH_AVR "-IC:\\Users\\j\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.6\\cores\\arduino" "-IC:\\Users\\j\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.6\\variants\\standard" "C:\\Users\\j\\AppData\\Local\\Temp\\arduino-sketch-AA67C5C80B716F94F492B60C55B06D9D\\sketch\\Blink.ino.cpp" -o nul
Generating function prototypes...
"C:\\Users\\j\\AppData\\Local\\Arduino15\\packages\\arduino\\tools\\avr-gcc\\7.3.0-atmel3.6.1-arduino7/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -Wno-error=narrowing -flto -w -x c++ -E -CC -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10607 -DARDUINO_AVR_UNO -DARDUINO_ARCH_AVR "-IC:\\Users\\j\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.6\\cores\\arduino" "-IC:\\Users\\j\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.6\\variants\\standard" "C:\\Users\\j\\AppData\\Local\\Temp\\arduino-sketch-AA67C5C80B716F94F492B60C55B06D9D\\sketch\\Blink.ino.cpp" -o "C:\\Users\\j\\AppData\\Local\\Temp\\arduino-sketch-AA67C5C80B716F94F492B60C55B06D9D\\preproc\\ctags_target_for_gcc_minus_e.cpp"
"C:\\Users\\j\\AppData\\Local\\Arduino15\\packages\\builtin\\tools\\ctags\\5.8-arduino11/ctags" -u --language-force=c++ -f - --c++-kinds=svpf --fields=KSTtzns --line-directives "C:\\Users\\j\\AppData\\Local\\Temp\\arduino-sketch-AA67C5C80B716F94F492B60C55B06D9D\\preproc\\ctags_target_for_gcc_minus_e.cpp"
Kompilowanie szkicu...
"C:\\Users\\j\\AppData\\Local\\Arduino15\\packages\\arduino\\tools\\avr-gcc\\7.3.0-atmel3.6.1-arduino7/bin/avr-g++" -c -g -Os -Wall -Wextra -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -Wno-error=narrowing -MMD -flto -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10607 -DARDUINO_AVR_UNO -DARDUINO_ARCH_AVR "-IC:\\Users\\j\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.6\\cores\\arduino" "-IC:\\Users\\j\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.6\\variants\\standard" "C:\\Users\\j\\AppData\\Local\\Temp\\arduino-sketch-AA67C5C80B716F94F492B60C55B06D9D\\sketch\\Blink.ino.cpp" -o "C:\\Users\\j\\AppData\\Local\\Temp\\arduino-sketch-AA67C5C80B716F94F492B60C55B06D9D\\sketch\\Blink.ino.cpp.o"
Compiling libraries...
Compiling core...
Using precompiled core: C:\Users\j\AppData\Local\Temp\arduino-core-cache\core_arduino_avr_uno_3a85cc3c2e64fade2eaae7632efb0832.a
Linking everything together...
"C:\\Users\\j\\AppData\\Local\\Arduino15\\packages\\arduino\\tools\\avr-gcc\\7.3.0-atmel3.6.1-arduino7/bin/avr-gcc" -Wall -Wextra -Os -g -flto -fuse-linker-plugin -Wl,--gc-sections -mmcu=atmega328p -o "C:\\Users\\j\\AppData\\Local\\Temp\\arduino-sketch-AA67C5C80B716F94F492B60C55B06D9D/Blink.ino.elf" "C:\\Users\\j\\AppData\\Local\\Temp\\arduino-sketch-AA67C5C80B716F94F492B60C55B06D9D\\sketch\\Blink.ino.cpp.o" "C:\\Users\\j\\AppData\\Local\\Temp\\arduino-sketch-AA67C5C80B716F94F492B60C55B06D9D/..\\arduino-core-cache\\core_arduino_avr_uno_3a85cc3c2e64fade2eaae7632efb0832.a" "-LC:\\Users\\j\\AppData\\Local\\Temp\\arduino-sketch-AA67C5C80B716F94F492B60C55B06D9D" -lm
"C:\\Users\\j\\AppData\\Local\\Arduino15\\packages\\arduino\\tools\\avr-gcc\\7.3.0-atmel3.6.1-arduino7/bin/avr-objcopy" -O ihex -j .eeprom --set-section-flags=.eeprom=alloc,load --no-change-warnings --change-section-lma .eeprom=0 "C:\\Users\\j\\AppData\\Local\\Temp\\arduino-sketch-AA67C5C80B716F94F492B60C55B06D9D/Blink.ino.elf" "C:\\Users\\j\\AppData\\Local\\Temp\\arduino-sketch-AA67C5C80B716F94F492B60C55B06D9D/Blink.ino.eep"
"C:\\Users\\j\\AppData\\Local\\Arduino15\\packages\\arduino\\tools\\avr-gcc\\7.3.0-atmel3.6.1-arduino7/bin/avr-objcopy" -O ihex -R .eeprom "C:\\Users\\j\\AppData\\Local\\Temp\\arduino-sketch-AA67C5C80B716F94F492B60C55B06D9D/Blink.ino.elf" "C:\\Users\\j\\AppData\\Local\\Temp\\arduino-sketch-AA67C5C80B716F94F492B60C55B06D9D/Blink.ino.hex"

"C:\\Users\\j\\AppData\\Local\\Arduino15\\packages\\arduino\\tools\\avr-gcc\\7.3.0-atmel3.6.1-arduino7/bin/avr-size" -A "C:\\Users\\j\\AppData\\Local\\Temp\\arduino-sketch-AA67C5C80B716F94F492B60C55B06D9D/Blink.ino.elf"
Szkic używa 924 bajtów (2%) pamięci programu. Maksimum to 32256 bajtów.
Zmienne globalne używają 9 bajtów (0%) pamięci dynamicznej, pozostawiając 2039 bajtów dla zmiennych lokalnych. Maksimum to 2048 bajtów.
"C:\Users\j\AppData\Local\Arduino15\packages\arduino\tools\avrdude\6.3.0-arduino17/bin/avrdude" "-CC:\Users\j\AppData\Local\Arduino15\packages\arduino\tools\avrdude\6.3.0-arduino17/etc/avrdude.conf" -v  -patmega328p -carduino "-PCOM3" -b115200 -D "-Uflash:w:C:\Users\j\AppData\Local\Temp\arduino-sketch-AA67C5C80B716F94F492B60C55B06D9D/Blink.ino.hex:i"

avrdude: Version 6.3-20190619
         Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
         Copyright (c) 2007-2014 Joerg Wunsch

         System wide configuration file is "C:\Users\j\AppData\Local\Arduino15\packages\arduino\tools\avrdude\6.3.0-arduino17/etc/avrdude.conf"

         Using Port                    : COM3
         Using Programmer              : arduino
         Overriding Baud Rate          : 115200
         AVR Part                      : ATmega328P
         Chip Erase delay              : 9000 us
         PAGEL                         : PD7
         BS2                           : PC2
         RESET disposition             : dedicated
         RETRY pulse                   : SCK
         serial program mode           : yes
         parallel program mode         : yes
         Timeout                       : 200
         StabDelay                     : 100
         CmdexeDelay                   : 25
         SyncLoops                     : 32
         ByteDelay                     : 0
         PollIndex                     : 3
         PollValue                     : 0x53
         Memory Detail                 :

                                  Block Poll               Page                       Polled
           Memory Type Mode Delay Size  Indx Paged  Size   Size #Pages MinW  MaxW   ReadBack
           ----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
           eeprom        65    20     4    0 no       1024    4      0  3600  3600 0xff 0xff
           flash         65     6   128    0 yes     32768  128    256  4500  4500 0xff 0xff
           lfuse          0     0     0    0 no          1    0      0  4500  4500 0x00 0x00
           hfuse          0     0     0    0 no          1    0      0  4500  4500 0x00 0x00
           efuse          0     0     0    0 no          1    0      0  4500  4500 0x00 0x00
           lock           0     0     0    0 no          1    0      0  4500  4500 0x00 0x00
           calibration    0     0     0    0 no          1    0      0     0     0 0x00 0x00
           signature      0     0     0    0 no          3    0      0     0     0 0x00 0x00

         Programmer Type : Arduino
         Description     : Arduino
         Hardware Version: 3
         Firmware Version: 4.4
         Vtarget         : 0.3 V
         Varef           : 0.3 V
         Oscillator      : 28.800 kHz
         SCK period      : 3.3 us

avrdude: AVR device initialized and ready to accept instructions

Reading | ################################################## | 100% 0.00s

avrdude: Device signature = 0x1e950f (probably m328p)
avrdude: reading input file "C:\Users\j\AppData\Local\Temp\arduino-sketch-AA67C5C80B716F94F492B60C55B06D9D/Blink.ino.hex"
avrdude: writing flash (924 bytes):

Writing | ################################################## | 100% 0.16s

avrdude: 924 bytes of flash written
avrdude: verifying flash memory against C:\Users\j\AppData\Local\Temp\arduino-sketch-AA67C5C80B716F94F492B60C55B06D9D/Blink.ino.hex:
avrdude: load data flash data from input file C:\Users\j\AppData\Local\Temp\arduino-sketch-AA67C5C80B716F94F492B60C55B06D9D/Blink.ino.hex:
avrdude: input file C:\Users\j\AppData\Local\Temp\arduino-sketch-AA67C5C80B716F94F492B60C55B06D9D/Blink.ino.hex contains 924 bytes
avrdude: reading on-chip flash data:

Reading | ################################################## | 100% 0.13s

avrdude: verifying ...
avrdude: 924 bytes of flash verified

avrdude done.  Thank you.

Wygląda na to, że wgrywanie przebiegło pomyślnie. Nie wiem, co może być przyczyną.

Link do komentarza
Share on other sites

1 minutę temu, yuki napisał:

Wygląda na to, że wgrywanie przebiegło pomyślnie. Nie wiem, co może być przyczyną.

To, że wygląda na to, że wszystko z Twoją płytką i środowiskiem Arduino IDE powinno być OK. Zawsze warto zobaczyć co tam się działo podczas wgrywania programu na płytkę.

Link do komentarza
Share on other sites

Zarejestruj się lub zaloguj, aby ukryć tę reklamę.
Zarejestruj się lub zaloguj, aby ukryć tę reklamę.

jlcpcb.jpg

jlcpcb.jpg

Produkcja i montaż PCB - wybierz sprawdzone PCBWay!
   • Darmowe płytki dla studentów i projektów non-profit
   • Tylko 5$ za 10 prototypów PCB w 24 godziny
   • Usługa projektowania PCB na zlecenie
   • Montaż PCB od 30$ + bezpłatna dostawa i szablony
   • Darmowe narzędzie do podglądu plików Gerber
Zobacz również » Film z fabryki PCBWay

Wgraj inne przykłady, np. wysyłanie komunikatu na UART co 1s, ustaw w begin 115200, otwórz monitor portu COM z prędkością 115200 i patrz czy coś leci, może tylko LED padła. 

Przywrócenie do stanu początkowego to wypalenie bootloadera, jeśli jakiś inny program coś przestawił to tak się to zresetuje. Trzeba mieć programator, np. USBASP, można też zrobić programator z innego Arduino, wystarczy wgrać szkic Arduino ISP, schemat połączeń znajdziesz w Google. 

Link do komentarza
Share on other sites

Wypalenie bootloadera czasami wgrywa bootloader, ale zawsze ustawia fusebity do stanu przewidzianego dla płytki - "ustawienie fabryczne". Całkiem niedawno widziałem komunikat wgrywania jak wyżej, weryfikacja OK, a program nie działał.

Link do komentarza
Share on other sites

Widział ktoś nie działającego "blinka" przy poprawnym wgraniu programu - ja nie. No ale może mało widziałem, a autor niestety ale precyzyjnie się nie wypowiada.

To może @yuki napisz jak to jest z tym "blinkiem"? Miga dioda na płytce czy nie? Może jakiś filmik?

Edytowano przez Belferek
Link do komentarza
Share on other sites

3 minuty temu, BananWszyscy napisał:

Usunięcie volatile i dodania delay pomogło xD więc wiele jest możliwe

Więc program (algorytm)  z takich czy innych powodów był błędny. Komputery się nie mylą - mylą się ludzie (programiści).

Link do komentarza
Share on other sites

Bądź aktywny - zaloguj się lub utwórz konto!

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto w ~20 sekund!

Zarejestruj nowe konto, to proste!

Zarejestruj się »

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się »
×
×
  • Utwórz nowe...

Ważne informacje

Ta strona używa ciasteczek (cookies), dzięki którym może działać lepiej. Więcej na ten temat znajdziesz w Polityce Prywatności.