Skocz do zawartości

Error: 'const class string' has no member named 'c_str'


Pomocna odpowiedź

Mam wgrany, ale to nie jest tak że przy używaniu programatora usbasp bootloader nie jest potrzebny?

Pomimo że nie wyskakuje żaden błąd na karcie nie ma żadnego pliku, czy wskazuje to na błąd w podłączeniu karty?

Mam właśnie tak podłączone i nie wiem czy jak tak jest to jest dobrze. Może powinienem najpierw wgrać program na atmegę, następnie podłączyć kartę, i zresetować atmegę, wtedy powinna ona wykonać operację zapisu na karcie

To zacznij od prostego progamu, który np. miga diodą. Będziesz miał chociaż pewność że programowanie mikroprocesora działa poprawnie. Pomyśl też, czy nie warto wgrać bootloadera i programować przez USB lub port szeregowy - będzie łatwiej wgrywać kolejne wersje programu.

Niestety debugowanie małych AVR nie jest łatwe, bez JTAG-a ciężko powiedzieć gdzie program się wykłada.

Przy okazji - sprawdź jeszcze fuse bity, czy częstotliwość pracy jest ustawiona poprawnie. Na koniec możesz spróbować użyć innej karty SD. Nie wszystkie chcą działać z mikrokontrolerami.

[ Dodano: 28-12-2016, 17:09 ]

Na pocieszenie powiem, że mam teraz podobny problem - nie mogę na kartę SD zapisac ustawień w uboot-cie. Może ktoś ma pomysł co jest źle? Odczyt działa bez problemów, a próba zapisu ustawień kończy się:

Saving Environment to FAT...
writing uboot.env
Error: Invalid FAT entry: 0xfffffffa
Invalid FAT entry
FAT: Misaligned buffer address (3fb13d78)
sdhci_send_command: MMC: 1 busy timeout increasing to: 200 ms.
sdhci_send_command: MMC: 1 busy timeout increasing to: 400 ms.
sdhci_send_command: MMC: 1 busy timeout increasing to: 800 ms.
sdhci_send_command: MMC: 1 busy timeout increasing to: 1600 ms.
sdhci_send_command: MMC: 1 busy timeout increasing to: 3200 ms.
sdhci_send_command: MMC: 1 busy timeout.
sdhci_send_command: MMC: 1 busy timeout.
sdhci_send_command: MMC: 1 busy timeout.
sdhci_send_command: MMC: 1 busy timeout.
sdhci_send_command: MMC: 1 busy timeout.
sdhci_send_command: MMC: 1 busy timeout.
Error: flush fat buffer

W arduinowym okienku Plik->Preferencje jest pozycja:

Pokaż szczegółowe informacje podczas: ➡️ Kompilacji ➡️ Wgrywania

Czy masz obie zaznaczone? Przecież jeśli coś dzieje się podczas pracy programatora, to nie ma co zgadywać tylko przeczytać komunikaty AvrDude. Może być wszystko źle, począwszy od driverów USB do usbasp, na połączeniu z procesorkiem AVR skończywszy. No i sam procesor musi być taki jak wybrałeś. Jeśli ma "fabrycznie" wgrany bootloader na jakiejś kupionej płytce Arduino to raczej fusy są ustawione poprawnie.

A ja mam takie pytanie, bo chyba wiem gdzie jest błąd, ale muszę najpierw coś wiedzieć. Jak otworzę sobie obrazek z rozkładem pinów dowolnego avr to tam każdy pin ma jakieś oznaczenia, typu xtal1, ADC3, PC2 i tak dalej. W arduino wpisuję w funkcję digitalWrite np 1: digitalWrite(1, HIGH), arduino wie wtedy na jakim wyjściu wystawić stan wysoki, ponieważ ma jakoś przypisane te nóżki, np pin 0 to w Atmega328p PD3 (podaję przykład, nie wiem czy tak jest). I tu jest moje pytanie, gdy podłączam goły mikrokontroler, skąd on wie że pin 1 to jest jakaś dana nóżka mikrokontrolera, a nie inna? Czy można jakoś inaczej wpisywać w tego typu funkcjach oznaczenia wyjść, jak np: digitalWrite(PB8, HIGH) ?

To jest pełna informacja z kompilacji i wgrywania programu:

C:\Program Files (x86)\Arduino\arduino-builder -dump-prefs -logger=machine -hardware C:\Program Files (x86)\Arduino\hardware -hardware C:\Users\Grzegorz\AppData\Local\Arduino15\packages -tools C:\Program Files (x86)\Arduino\tools-builder -tools C:\Program Files (x86)\Arduino\hardware\tools\avr -tools C:\Users\Grzegorz\AppData\Local\Arduino15\packages -built-in-libraries C:\Program Files (x86)\Arduino\libraries -libraries C:\Users\Grzegorz\Documents\Arduino\libraries -fqbn=MiniCore:avr:328:variant=modelP,BOD=2v7,LTO=Os_flto,clock=8MHz_internal -ide-version=10800 -build-path C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711 -warnings=all -prefs=build.warn_data_percentage=75 -prefs=runtime.tools.avrdude.path=C:\Program Files (x86)\Arduino\hardware\tools\avr -prefs=runtime.tools.avr-gcc.path=C:\Program Files (x86)\Arduino\hardware\tools\avr -prefs=runtime.tools.arduinoOTA.path=C:\Program Files (x86)\Arduino\hardware\tools\avr -verbose C:\Users\Grzegorz\Desktop\sketch_dec28a\sketch_dec28a.ino
C:\Program Files (x86)\Arduino\arduino-builder -compile -logger=machine -hardware C:\Program Files (x86)\Arduino\hardware -hardware C:\Users\Grzegorz\AppData\Local\Arduino15\packages -tools C:\Program Files (x86)\Arduino\tools-builder -tools C:\Program Files (x86)\Arduino\hardware\tools\avr -tools C:\Users\Grzegorz\AppData\Local\Arduino15\packages -built-in-libraries C:\Program Files (x86)\Arduino\libraries -libraries C:\Users\Grzegorz\Documents\Arduino\libraries -fqbn=MiniCore:avr:328:variant=modelP,BOD=2v7,LTO=Os_flto,clock=8MHz_internal -ide-version=10800 -build-path C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711 -warnings=all -prefs=build.warn_data_percentage=75 -prefs=runtime.tools.avrdude.path=C:\Program Files (x86)\Arduino\hardware\tools\avr -prefs=runtime.tools.avr-gcc.path=C:\Program Files (x86)\Arduino\hardware\tools\avr -prefs=runtime.tools.arduinoOTA.path=C:\Program Files (x86)\Arduino\hardware\tools\avr -verbose C:\Users\Grzegorz\Desktop\sketch_dec28a\sketch_dec28a.ino
Using board '328' from platform in folder: C:\Users\Grzegorz\AppData\Local\Arduino15\packages\MiniCore\hardware\avr\1.0.2
Using core 'arduino' from platform in folder: C:\Program Files (x86)\Arduino\hardware\arduino\avr
Detecting libraries used...
"C:\Program Files (x86)\Arduino\hardware\tools\avr/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics  -w -x c++ -E -CC -mmcu=atmega328p -DF_CPU=8000000L -DARDUINO=10800 -DARDUINO_AVR_ATmega328 -DARDUINO_ARCH_AVR -Wextra -flto  "-IC:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino" "-IC:\Users\Grzegorz\AppData\Local\Arduino15\packages\MiniCore\hardware\avr\1.0.2\variants\standard" "C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711\sketch\sketch_dec28a.ino.cpp" -o "nul"
"C:\Program Files (x86)\Arduino\hardware\tools\avr/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics  -w -x c++ -E -CC -mmcu=atmega328p -DF_CPU=8000000L -DARDUINO=10800 -DARDUINO_AVR_ATmega328 -DARDUINO_ARCH_AVR -Wextra -flto  "-IC:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino" "-IC:\Users\Grzegorz\AppData\Local\Arduino15\packages\MiniCore\hardware\avr\1.0.2\variants\standard" "-IC:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SPI\src" "C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711\sketch\sketch_dec28a.ino.cpp" -o "nul"
"C:\Program Files (x86)\Arduino\hardware\tools\avr/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics  -w -x c++ -E -CC -mmcu=atmega328p -DF_CPU=8000000L -DARDUINO=10800 -DARDUINO_AVR_ATmega328 -DARDUINO_ARCH_AVR -Wextra -flto  "-IC:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino" "-IC:\Users\Grzegorz\AppData\Local\Arduino15\packages\MiniCore\hardware\avr\1.0.2\variants\standard" "-IC:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SPI\src" "-IC:\Program Files (x86)\Arduino\libraries\SD\src" "C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711\sketch\sketch_dec28a.ino.cpp" -o "nul"
Using cached library dependencies for file: C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SPI\src\SPI.cpp
Using cached library dependencies for file: C:\Program Files (x86)\Arduino\libraries\SD\src\File.cpp
Using cached library dependencies for file: C:\Program Files (x86)\Arduino\libraries\SD\src\SD.cpp
Using cached library dependencies for file: C:\Program Files (x86)\Arduino\libraries\SD\src\utility\Sd2Card.cpp
Using cached library dependencies for file: C:\Program Files (x86)\Arduino\libraries\SD\src\utility\SdFile.cpp
Using cached library dependencies for file: C:\Program Files (x86)\Arduino\libraries\SD\src\utility\SdVolume.cpp
Generating function prototypes...
"C:\Program Files (x86)\Arduino\hardware\tools\avr/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics  -w -x c++ -E -CC -mmcu=atmega328p -DF_CPU=8000000L -DARDUINO=10800 -DARDUINO_AVR_ATmega328 -DARDUINO_ARCH_AVR -Wextra -flto  "-IC:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino" "-IC:\Users\Grzegorz\AppData\Local\Arduino15\packages\MiniCore\hardware\avr\1.0.2\variants\standard" "-IC:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SPI\src" "-IC:\Program Files (x86)\Arduino\libraries\SD\src" "C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711\sketch\sketch_dec28a.ino.cpp" -o "C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711\preproc\ctags_target_for_gcc_minus_e.cpp"
"C:\Program Files (x86)\Arduino\tools-builder\ctags\5.8-arduino11/ctags" -u --language-force=c++ -f - --c++-kinds=svpf --fields=KSTtzns --line-directives "C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711\preproc\ctags_target_for_gcc_minus_e.cpp"
Compiling sketch...
"C:\Program Files (x86)\Arduino\hardware\tools\avr/bin/avr-g++" -c -g -Os -Wall -Wextra -std=gnu++11 -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -MMD -mmcu=atmega328p -DF_CPU=8000000L -DARDUINO=10800 -DARDUINO_AVR_ATmega328 -DARDUINO_ARCH_AVR -Wextra -flto  "-IC:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino" "-IC:\Users\Grzegorz\AppData\Local\Arduino15\packages\MiniCore\hardware\avr\1.0.2\variants\standard" "-IC:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SPI\src" "-IC:\Program Files (x86)\Arduino\libraries\SD\src" "C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711\sketch\sketch_dec28a.ino.cpp" -o "C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711\sketch\sketch_dec28a.ino.cpp.o"
Compiling libraries...
Compiling library "SPI"
Using previously compiled file: C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711\libraries\SPI\SPI.cpp.o
Compiling library "SD"
Using previously compiled file: C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711\libraries\SD\File.cpp.o
Using previously compiled file: C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711\libraries\SD\SD.cpp.o
Using previously compiled file: C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711\libraries\SD\utility\Sd2Card.cpp.o
Using previously compiled file: C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711\libraries\SD\utility\SdFile.cpp.o
Using previously compiled file: C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711\libraries\SD\utility\SdVolume.cpp.o
Compiling core...
"C:\Program Files (x86)\Arduino\hardware\tools\avr/bin/avr-gcc" -c -g -x assembler-with-cpp -mmcu=atmega328p -DF_CPU=8000000L -DARDUINO=10800 -DARDUINO_AVR_ATmega328 -DARDUINO_ARCH_AVR   "-IC:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino" "-IC:\Users\Grzegorz\AppData\Local\Arduino15\packages\MiniCore\hardware\avr\1.0.2\variants\standard" "C:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino\wiring_pulse.S" -o "C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711\core\wiring_pulse.S.o"
Using previously compiled file: C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711\core\WInterrupts.c.o
Using previously compiled file: C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711\core\hooks.c.o
Using previously compiled file: C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711\core\wiring.c.o
Using previously compiled file: C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711\core\wiring_analog.c.o
Using previously compiled file: C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711\core\wiring_digital.c.o
Using previously compiled file: C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711\core\wiring_pulse.c.o
Using previously compiled file: C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711\core\wiring_shift.c.o
Using previously compiled file: C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711\core\CDC.cpp.o
Using previously compiled file: C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711\core\HardwareSerial.cpp.o
Using previously compiled file: C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711\core\HardwareSerial0.cpp.o
Using previously compiled file: C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711\core\HardwareSerial1.cpp.o
Using previously compiled file: C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711\core\HardwareSerial2.cpp.o
Using previously compiled file: C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711\core\HardwareSerial3.cpp.o
Using previously compiled file: C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711\core\IPAddress.cpp.o
Using previously compiled file: C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711\core\PluggableUSB.cpp.o
Using previously compiled file: C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711\core\Print.cpp.o
Using previously compiled file: C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711\core\Stream.cpp.o
Using previously compiled file: C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711\core\Tone.cpp.o
Using previously compiled file: C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711\core\USBCore.cpp.o
Using previously compiled file: C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711\core\WMath.cpp.o
Using previously compiled file: C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711\core\WString.cpp.o
Using previously compiled file: C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711\core\abi.cpp.o
Using previously compiled file: C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711\core\main.cpp.o
Using previously compiled file: C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711\core\new.cpp.o
"C:\Program Files (x86)\Arduino\hardware\tools\avr/bin/avr-gcc-ar" rcs  "C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711\core\core.a" "C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711\core\wiring_pulse.S.o"
"C:\Program Files (x86)\Arduino\hardware\tools\avr/bin/avr-gcc-ar" rcs  "C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711\core\core.a" "C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711\core\WInterrupts.c.o"
"C:\Program Files (x86)\Arduino\hardware\tools\avr/bin/avr-gcc-ar" rcs  "C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711\core\core.a" "C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711\core\hooks.c.o"
"C:\Program Files (x86)\Arduino\hardware\tools\avr/bin/avr-gcc-ar" rcs  "C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711\core\core.a" "C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711\core\wiring.c.o"
"C:\Program Files (x86)\Arduino\hardware\tools\avr/bin/avr-gcc-ar" rcs  "C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711\core\core.a" "C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711\core\wiring_analog.c.o"
"C:\Program Files (x86)\Arduino\hardware\tools\avr/bin/avr-gcc-ar" rcs  "C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711\core\core.a" "C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711\core\wiring_digital.c.o"
"C:\Program Files (x86)\Arduino\hardware\tools\avr/bin/avr-gcc-ar" rcs  "C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711\core\core.a" "C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711\core\wiring_pulse.c.o"
"C:\Program Files (x86)\Arduino\hardware\tools\avr/bin/avr-gcc-ar" rcs  "C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711\core\core.a" "C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711\core\wiring_shift.c.o"
"C:\Program Files (x86)\Arduino\hardware\tools\avr/bin/avr-gcc-ar" rcs  "C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711\core\core.a" "C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711\core\CDC.cpp.o"
"C:\Program Files (x86)\Arduino\hardware\tools\avr/bin/avr-gcc-ar" rcs  "C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711\core\core.a" "C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711\core\HardwareSerial.cpp.o"
"C:\Program Files (x86)\Arduino\hardware\tools\avr/bin/avr-gcc-ar" rcs  "C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711\core\core.a" "C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711\core\HardwareSerial0.cpp.o"
"C:\Program Files (x86)\Arduino\hardware\tools\avr/bin/avr-gcc-ar" rcs  "C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711\core\core.a" "C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711\core\HardwareSerial1.cpp.o"
"C:\Program Files (x86)\Arduino\hardware\tools\avr/bin/avr-gcc-ar" rcs  "C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711\core\core.a" "C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711\core\HardwareSerial2.cpp.o"
"C:\Program Files (x86)\Arduino\hardware\tools\avr/bin/avr-gcc-ar" rcs  "C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711\core\core.a" "C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711\core\HardwareSerial3.cpp.o"
"C:\Program Files (x86)\Arduino\hardware\tools\avr/bin/avr-gcc-ar" rcs  "C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711\core\core.a" "C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711\core\IPAddress.cpp.o"
"C:\Program Files (x86)\Arduino\hardware\tools\avr/bin/avr-gcc-ar" rcs  "C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711\core\core.a" "C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711\core\PluggableUSB.cpp.o"
"C:\Program Files (x86)\Arduino\hardware\tools\avr/bin/avr-gcc-ar" rcs  "C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711\core\core.a" "C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711\core\Print.cpp.o"
"C:\Program Files (x86)\Arduino\hardware\tools\avr/bin/avr-gcc-ar" rcs  "C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711\core\core.a" "C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711\core\Stream.cpp.o"
"C:\Program Files (x86)\Arduino\hardware\tools\avr/bin/avr-gcc-ar" rcs  "C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711\core\core.a" "C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711\core\Tone.cpp.o"
"C:\Program Files (x86)\Arduino\hardware\tools\avr/bin/avr-gcc-ar" rcs  "C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711\core\core.a" "C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711\core\USBCore.cpp.o"
"C:\Program Files (x86)\Arduino\hardware\tools\avr/bin/avr-gcc-ar" rcs  "C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711\core\core.a" "C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711\core\WMath.cpp.o"
"C:\Program Files (x86)\Arduino\hardware\tools\avr/bin/avr-gcc-ar" rcs  "C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711\core\core.a" "C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711\core\WString.cpp.o"
"C:\Program Files (x86)\Arduino\hardware\tools\avr/bin/avr-gcc-ar" rcs  "C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711\core\core.a" "C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711\core\abi.cpp.o"
"C:\Program Files (x86)\Arduino\hardware\tools\avr/bin/avr-gcc-ar" rcs  "C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711\core\core.a" "C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711\core\main.cpp.o"
"C:\Program Files (x86)\Arduino\hardware\tools\avr/bin/avr-gcc-ar" rcs  "C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711\core\core.a" "C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711\core\new.cpp.o"
Linking everything together...
"C:\Program Files (x86)\Arduino\hardware\tools\avr/bin/avr-gcc" -Wall -Wextra -Os -Wl,--gc-sections -mmcu=atmega328p -w -flto -o "C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711/sketch_dec28a.ino.elf" "C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711\sketch\sketch_dec28a.ino.cpp.o" "C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711\libraries\SPI\SPI.cpp.o" "C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711\libraries\SD\File.cpp.o" "C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711\libraries\SD\SD.cpp.o" "C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711\libraries\SD\utility\Sd2Card.cpp.o" "C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711\libraries\SD\utility\SdFile.cpp.o" "C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711\libraries\SD\utility\SdVolume.cpp.o" "C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711/core\core.a" "-LC:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711" -lm
"C:\Program Files (x86)\Arduino\hardware\tools\avr/bin/avr-objcopy" -O ihex -j .eeprom --set-section-flags=.eeprom=alloc,load --no-change-warnings --change-section-lma .eeprom=0  "C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711/sketch_dec28a.ino.elf" "C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711/sketch_dec28a.ino.eep"
"C:\Program Files (x86)\Arduino\hardware\tools\avr/bin/avr-objcopy" -O ihex -R .eeprom  "C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711/sketch_dec28a.ino.elf" "C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711/sketch_dec28a.ino.hex"
Using library SPI at version 1.0 in folder: C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SPI 
Using library SD at version 1.1.0 in folder: C:\Program Files (x86)\Arduino\libraries\SD 
Sketch uses 10546 bytes (32%) of program storage space. Maximum is 32256 bytes.
Global variables use 890 bytes (43%) of dynamic memory, leaving 1158 bytes for local variables. Maximum is 2048 bytes.
C:\Program Files (x86)\Arduino\hardware\tools\avr/bin/avrdude -CC:\Program Files (x86)\Arduino\hardware\tools\avr/etc/avrdude.conf -v -patmega328p -cusbasp -Pusb -Uflash:w:C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711/sketch_dec28a.ino.hex:i 

avrdude: Version 6.3, compiled on Dec 16 2016 at 13:33:19
        Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
        Copyright (c) 2007-2014 Joerg Wunsch

        System wide configuration file is "C:\Program Files (x86)\Arduino\hardware\tools\avr/etc/avrdude.conf"

        Using Port                    : usb
        Using Programmer              : usbasp
        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 : usbasp
        Description     : USBasp, http://www.fischl.de/usbasp/

avrdude: auto set sck period (because given equals null)
avrdude: AVR device initialized and ready to accept instructions

Reading | ################################################## | 100% 0.02s

avrdude: Device signature = 0x1e950f (probably m328p)
avrdude: NOTE: "flash" memory has been specified, an erase cycle will be performed
        To disable this feature, specify the -D option.
avrdude: erasing chip
avrdude: auto set sck period (because given equals null)
avrdude: reading input file "C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711/sketch_dec28a.ino.hex"
avrdude: writing flash (10546 bytes):

Writing | ################################################## | 100% 50.39s

avrdude: 10546 bytes of flash written
avrdude: verifying flash memory against C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711/sketch_dec28a.ino.hex:
avrdude: load data flash data from input file C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711/sketch_dec28a.ino.hex:
avrdude: input file C:\Users\Grzegorz\AppData\Local\Temp\arduino_build_535711/sketch_dec28a.ino.hex contains 10546 bytes
avrdude: reading on-chip flash data:

Reading | ################################################## | 100% 45.80s

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

avrdude done.  Thank you.

Wydaje się w porządku, tutaj raczej nie ma błędu

[ Dodano: 28-12-2016, 17:38 ]

Ale i tak sie plik nie pojawia

No ale tu mamy informacje, że wszystko poszło dobrze. Dlaczego wciąż kręcisz się wokół kompilacji i wgrywania? Obie te rzeczy muszą zakończyć się poprawnie żeby mieć pewność, że kod wynikowy siedzie w procesorze. Niestety to jest warunek konieczny, ale niewystarczający do poprawnego działania. Pokaż nam swój układ, sposób podłączenia karty itp.

Oczywiście, że można inaczej korzystać z pinów I/O. Funkcja digitalWrite() jest bardzo uniwersalna (i to ona "wie" który numerek odpowiada któremu pinowi w danym procesorze), ale też bardzo wolna. Zawsze masz dostępne wszystkie rejestry procesora, także PORTB, PORTC, PIND itd.. i do nich możesz poisać i znich czytać. To jest pewnie z kilkadziesiąt razy szybsze i krótsze niż wykonanie digitalWrite.

EDIT: Funkcje takie jak SD.begin() oddają flagę błędu:

https://www.arduino.cc/en/Reference/SDbegin

Wypisz ją sobie i zobaczysz, czy w ogóle inicjalizacja biblioteki i samej karty powodzi się.

Może trzeba odpiąć programator po wgraniu kodu, bo "siedząc" na SPI przeszkadza w komunikacji z kartą?

Kartę należy podłączyć przez konwerter poziomów logicznych, zrobiłem go zamodzielnie zgodnie ze schematem poniżej. Wykonałem 4 kanały, użyłem 4 mosfety.

Może w nim jest błąd? Ma ktoś może pomysł na to jak sprawdzić czy działa poprawnie?

[ Dodano: 28-12-2016, 17:51 ]

marek1707, tak już robiłem, programowałem sam układ, potem podłączałem go do karty i resetowałem.

A Ty umiesz po polsku czytać? Ze zrozumieniem? No to spróbujmy - mały test na początek: tam na dole obrazka jest napis. Co on oznacza? Przetłumacz jak go zrozumiałeś, może być jedno zdanie swoimi słowami. Acha, i bonus-zagadka: czy występuje tu skrót "SD"?

No dobrze, dlaczego karta SD nie może korzystać z tego konwertera? Przecież on konwertuje sygnały na takie same, tylko o stanie wysokim 3,3V, Nie rozumiem dlaczego nie może działać z kartą SD

Bo to jest konwerter do sygnałów I2C czyli open-collector - tylko i wyłącznie. Nawet nie do RS232C - jeden "mądry" napisał a drugi uwierzył. I nie ma w tym Twojej winy, to tylko przykład wszechobecnej internetowej bzdury. Czasem to ręce opadają 😥

Karta SD posługuje się bardzo szybkimi sygnałami i konwerter do niej musi umieć wymuszać zarówno zera jak i jedynki z prędkością wielu MHz. Ten tego nie umie - i tyle.

EDIT: Najbardziej prosto do bólu zrobisz to tak:

https://arduinodiy.wordpress.com/2012/03/28/sd-card-on-arduino/

Powinno zadziałać, od biedy. Z czego tę kartę zasilasz?

Zrobiłem z diody zenera 3.9 i tranzystora npn taki jakby regulator napiecia, daje 3,27 na wyjściu, przy podłączeniu obciążenia 100 ohm, napięcie spada do 3.2

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...