Проблема с памятью
- Войдите на сайт для отправки комментариев
Народ помогите!!!
Ошибка:
Low memory available, stability problems may occur.
Так понимаю что это нехватка динамической памяти на Arduino Robot - плата Robot Control.
После заливки скетча Compass с образцов не могу больше ничего залить.
Скетч Compass:
/* Robot Compass
The robot has an on-board compass module, with
which it can tell the direction the robot is
facing. This sketch will make sure the robot
goes towards a certain direction.
Beware, magnets will interfere with the compass
readings.
Circuit:
* Arduino Robot
created 1 May 2013
by X. Yang
modified 12 May 2013
by D. Cuartielles
This example is in the public domain
*/
// include the robot library
#include <ArduinoRobot.h>
#include <Wire.h>
#include <SPI.h>
int speedLeft;
int speedRight;
int compassValue;
int direc = 180; //Direction the robot is heading
void setup() {
// initialize the modules
Robot.begin();
Robot.beginTFT();
Robot.beginSD();
Robot.displayLogos();
}
void loop() {
// read the compass orientation
compassValue = Robot.compassRead();
// how many degrees are we off
int diff = compassValue - direc;
// modify degress
if (diff > 180)
diff = -360 + diff;
else if (diff < -180)
diff = 360 + diff;
// Make the robot turn to its proper orientation
diff = map(diff, -180, 180, -255, 255);
if (diff > 0) {
// keep the right wheel spinning,
// change the speed of the left wheel
speedLeft = 255 - diff;
speedRight = 255;
} else {
// keep the right left spinning,
// change the speed of the left wheel
speedLeft = 255;
speedRight = 255 + diff;
}
// write out to the motors
Robot.motorsWrite(speedLeft, speedRight);
// draw the orientation on the screen
Robot.drawCompass(compassValue);
}
Может ли кто-нибудь что-нибудь посоветовать?
Сталкивался с таким на Ардуино Уно. На Меге скетч занимал где-то 18% памяти, а Уно отказывался работать.
Скорее всего нехватка памяти, отведенной под глобальные переменные. Вероятно программа (кроме, собственно, кучи глобальных переменных) что-то емкое формирует в памяти. У меня затык был при формировании HTML-страницы. Именно тогда перешел на использование микроСД в своих проектах...
Скорее всего вся та хрень, что выводится на дисплей сначал формируется в памяти, потом скармливается устройству.
Для приблизительного контроля объема свободной памяти пользуюсь
Рекомендую.
Araris
Я очень извиняюсь далеко не кодер.
Немогли бы Вы показать контроль объема свободной памяти на примере представленного мною кода.
Очень надо, сам не разберусь.
Radjah
Думаю Вы правы!
Причем вся инфа выводящаяся на дисплей не дает залить ничего другого - память то переполнена.
Народ, как же мне быть то?
Можно ли как-то затереть этот скетч???
Немогли бы Вы показать контроль объема свободной памяти на примере представленного мною кода.
Все просто очень. На этапе сборки/отладки скетча там, где мне надо, вставляю вот это
и просто "глазами контролирую", сколько съедено, сколько остается.
Справка, например, здесь : http://arduino.cc/en/Tutorial/Memory, читаем про SRAM, Вы будете удивлены объемами )))
Вот так я в свое время познал магию PROGMEM...
PROGMEM - это хорошо, а что делать если другой скетч никак не залить?
Понимаю что ранее залитый встал намертво, пожирает память, так что другому нет места.
Можно ли как-то удалить уже залитый?
PROGMEM - это хорошо, а что делать если другой скетч никак не залить?
Понимаю что ранее залитый встал намертво, пожирает память, так что другому нет места.
Можно ли как-то удалить уже залитый?
What ???
Вообщето скетч всегда заливается ВМЕСТО залитого, а не плюс к нему, так что проблема точно не в этом.
А что такое " никак не залить" ? Тип платы и компорт правильные? На ресет реагирует?
Какие сообщения появляются в окошечке внизу? (при новой заливке)
Плата - Arduino Robot (ATmega32u4).
Адрес: http://amperka.ru/product/arduino-robot
После того как загрузил образец скетча (из библиотеки Arduino IDE-1.5.8) Compass, никакой другой скетч не загружается.
Код ошибки:
Arduino: 1.5.8 (Linux), Board: "Arduino Robot Control"
Using library Robot Control in folder: /opt/arduino-1.5.8/libraries/Robot_Control
Using library Wire in folder: /opt/arduino-1.5.8/hardware/arduino/avr/libraries/Wire
Using library SPI in folder: /opt/arduino-1.5.8/hardware/arduino/avr/libraries/SPI
/opt/arduino-1.5.8/hardware/tools/avr/bin/avr-g++ -c -g -Os -w -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -MMD -mmcu=atmega32u4 -DF_CPU=16000000L -DARDUINO=158 -DARDUINO_AVR_ROBOT_CONTROL -DARDUINO_ARCH_AVR -DUSB_VID=0x2341 -DUSB_PID=0x8038 -DUSB_MANUFACTURER= -DUSB_PRODUCT="Robot Control" -I/opt/arduino-1.5.8/hardware/arduino/avr/cores/arduino -I/opt/arduino-1.5.8/hardware/arduino/avr/variants/robot_control -I/opt/arduino-1.5.8/libraries/Robot_Control/src -I/opt/arduino-1.5.8/hardware/arduino/avr/libraries/Wire -I/opt/arduino-1.5.8/hardware/arduino/avr/libraries/SPI /tmp/build1088502564841717068.tmp/R11_Hello_User.cpp -o /tmp/build1088502564841717068.tmp/R11_Hello_User.cpp.o
Using previously compiled file: /tmp/build1088502564841717068.tmp/Robot Control/glcdfont.c.o
Using previously compiled file: /tmp/build1088502564841717068.tmp/Robot Control/EEPROM_I2C.cpp.o
Using previously compiled file: /tmp/build1088502564841717068.tmp/Robot Control/communication.cpp.o
Using previously compiled file: /tmp/build1088502564841717068.tmp/Robot Control/ArduinoRobot.cpp.o
Using previously compiled file: /tmp/build1088502564841717068.tmp/Robot Control/Fat16.cpp.o
Using previously compiled file: /tmp/build1088502564841717068.tmp/Robot Control/Squawk.cpp.o
Using previously compiled file: /tmp/build1088502564841717068.tmp/Robot Control/RobotSdCard.cpp.o
Using previously compiled file: /tmp/build1088502564841717068.tmp/Robot Control/lcd.cpp.o
Using previously compiled file: /tmp/build1088502564841717068.tmp/Robot Control/Arduino_LCD.cpp.o
Using previously compiled file: /tmp/build1088502564841717068.tmp/Robot Control/information.cpp.o
Using previously compiled file: /tmp/build1088502564841717068.tmp/Robot Control/keyboard.cpp.o
Using previously compiled file: /tmp/build1088502564841717068.tmp/Robot Control/SdCard.cpp.o
Using previously compiled file: /tmp/build1088502564841717068.tmp/Robot Control/Multiplexer.cpp.o
Using previously compiled file: /tmp/build1088502564841717068.tmp/Robot Control/Compass.cpp.o
Using previously compiled file: /tmp/build1088502564841717068.tmp/Robot Control/Melody.cpp.o
Using previously compiled file: /tmp/build1088502564841717068.tmp/Robot Control/EasyTransfer2.cpp.o
Using previously compiled file: /tmp/build1088502564841717068.tmp/Robot Control/helper.cpp.o
Using previously compiled file: /tmp/build1088502564841717068.tmp/Robot Control/Sensors.cpp.o
Using previously compiled file: /tmp/build1088502564841717068.tmp/Robot Control/Motors.cpp.o
Using previously compiled file: /tmp/build1088502564841717068.tmp/Robot Control/SquawkSD.cpp.o
Using previously compiled file: /tmp/build1088502564841717068.tmp/Robot Control/utility/VirtualKeyboard.cpp.o
Using previously compiled file: /tmp/build1088502564841717068.tmp/Robot Control/utility/Adafruit_GFX.cpp.o
Using previously compiled file: /tmp/build1088502564841717068.tmp/Robot Control/utility/RobotTextManager.cpp.o
Using previously compiled file: /tmp/build1088502564841717068.tmp/Wire/Wire.cpp.o
Using previously compiled file: /tmp/build1088502564841717068.tmp/Wire/utility/twi.c.o
Using previously compiled file: /tmp/build1088502564841717068.tmp/SPI/SPI.cpp.o
Using previously compiled file: /tmp/build1088502564841717068.tmp/wiring_shift.c.o
Using previously compiled file: /tmp/build1088502564841717068.tmp/hooks.c.o
Using previously compiled file: /tmp/build1088502564841717068.tmp/wiring_digital.c.o
Using previously compiled file: /tmp/build1088502564841717068.tmp/wiring_pulse.c.o
Using previously compiled file: /tmp/build1088502564841717068.tmp/WInterrupts.c.o
Using previously compiled file: /tmp/build1088502564841717068.tmp/wiring_analog.c.o
Using previously compiled file: /tmp/build1088502564841717068.tmp/wiring.c.o
Using previously compiled file: /tmp/build1088502564841717068.tmp/Print.cpp.o
Using previously compiled file: /tmp/build1088502564841717068.tmp/HardwareSerial.cpp.o
Using previously compiled file: /tmp/build1088502564841717068.tmp/CDC.cpp.o
Using previously compiled file: /tmp/build1088502564841717068.tmp/HardwareSerial1.cpp.o
Using previously compiled file: /tmp/build1088502564841717068.tmp/USBCore.cpp.o
Using previously compiled file: /tmp/build1088502564841717068.tmp/HID.cpp.o
Using previously compiled file: /tmp/build1088502564841717068.tmp/Tone.cpp.o
Using previously compiled file: /tmp/build1088502564841717068.tmp/HardwareSerial0.cpp.o
Using previously compiled file: /tmp/build1088502564841717068.tmp/WMath.cpp.o
Using previously compiled file: /tmp/build1088502564841717068.tmp/abi.cpp.o
Using previously compiled file: /tmp/build1088502564841717068.tmp/HardwareSerial3.cpp.o
Using previously compiled file: /tmp/build1088502564841717068.tmp/WString.cpp.o
Using previously compiled file: /tmp/build1088502564841717068.tmp/main.cpp.o
Using previously compiled file: /tmp/build1088502564841717068.tmp/new.cpp.o
Using previously compiled file: /tmp/build1088502564841717068.tmp/HardwareSerial2.cpp.o
Using previously compiled file: /tmp/build1088502564841717068.tmp/IPAddress.cpp.o
Using previously compiled file: /tmp/build1088502564841717068.tmp/Stream.cpp.o
/opt/arduino-1.5.8/hardware/tools/avr/bin/avr-ar rcs /tmp/build1088502564841717068.tmp/core.a /tmp/build1088502564841717068.tmp/wiring_shift.c.o
/opt/arduino-1.5.8/hardware/tools/avr/bin/avr-ar rcs /tmp/build1088502564841717068.tmp/core.a /tmp/build1088502564841717068.tmp/hooks.c.o
/opt/arduino-1.5.8/hardware/tools/avr/bin/avr-ar rcs /tmp/build1088502564841717068.tmp/core.a /tmp/build1088502564841717068.tmp/wiring_digital.c.o
/opt/arduino-1.5.8/hardware/tools/avr/bin/avr-ar rcs /tmp/build1088502564841717068.tmp/core.a /tmp/build1088502564841717068.tmp/wiring_pulse.c.o
/opt/arduino-1.5.8/hardware/tools/avr/bin/avr-ar rcs /tmp/build1088502564841717068.tmp/core.a /tmp/build1088502564841717068.tmp/WInterrupts.c.o
/opt/arduino-1.5.8/hardware/tools/avr/bin/avr-ar rcs /tmp/build1088502564841717068.tmp/core.a /tmp/build1088502564841717068.tmp/wiring_analog.c.o
/opt/arduino-1.5.8/hardware/tools/avr/bin/avr-ar rcs /tmp/build1088502564841717068.tmp/core.a /tmp/build1088502564841717068.tmp/wiring.c.o
/opt/arduino-1.5.8/hardware/tools/avr/bin/avr-ar rcs /tmp/build1088502564841717068.tmp/core.a /tmp/build1088502564841717068.tmp/Print.cpp.o
/opt/arduino-1.5.8/hardware/tools/avr/bin/avr-ar rcs /tmp/build1088502564841717068.tmp/core.a /tmp/build1088502564841717068.tmp/HardwareSerial.cpp.o
/opt/arduino-1.5.8/hardware/tools/avr/bin/avr-ar rcs /tmp/build1088502564841717068.tmp/core.a /tmp/build1088502564841717068.tmp/CDC.cpp.o
/opt/arduino-1.5.8/hardware/tools/avr/bin/avr-ar rcs /tmp/build1088502564841717068.tmp/core.a /tmp/build1088502564841717068.tmp/HardwareSerial1.cpp.o
/opt/arduino-1.5.8/hardware/tools/avr/bin/avr-ar rcs /tmp/build1088502564841717068.tmp/core.a /tmp/build1088502564841717068.tmp/USBCore.cpp.o
/opt/arduino-1.5.8/hardware/tools/avr/bin/avr-ar rcs /tmp/build1088502564841717068.tmp/core.a /tmp/build1088502564841717068.tmp/HID.cpp.o
/opt/arduino-1.5.8/hardware/tools/avr/bin/avr-ar rcs /tmp/build1088502564841717068.tmp/core.a /tmp/build1088502564841717068.tmp/Tone.cpp.o
/opt/arduino-1.5.8/hardware/tools/avr/bin/avr-ar rcs /tmp/build1088502564841717068.tmp/core.a /tmp/build1088502564841717068.tmp/HardwareSerial0.cpp.o
/opt/arduino-1.5.8/hardware/tools/avr/bin/avr-ar rcs /tmp/build1088502564841717068.tmp/core.a /tmp/build1088502564841717068.tmp/WMath.cpp.o
/opt/arduino-1.5.8/hardware/tools/avr/bin/avr-ar rcs /tmp/build1088502564841717068.tmp/core.a /tmp/build1088502564841717068.tmp/abi.cpp.o
/opt/arduino-1.5.8/hardware/tools/avr/bin/avr-ar rcs /tmp/build1088502564841717068.tmp/core.a /tmp/build1088502564841717068.tmp/HardwareSerial3.cpp.o
/opt/arduino-1.5.8/hardware/tools/avr/bin/avr-ar rcs /tmp/build1088502564841717068.tmp/core.a /tmp/build1088502564841717068.tmp/WString.cpp.o
/opt/arduino-1.5.8/hardware/tools/avr/bin/avr-ar rcs /tmp/build1088502564841717068.tmp/core.a /tmp/build1088502564841717068.tmp/main.cpp.o
/opt/arduino-1.5.8/hardware/tools/avr/bin/avr-ar rcs /tmp/build1088502564841717068.tmp/core.a /tmp/build1088502564841717068.tmp/new.cpp.o
/opt/arduino-1.5.8/hardware/tools/avr/bin/avr-ar rcs /tmp/build1088502564841717068.tmp/core.a /tmp/build1088502564841717068.tmp/HardwareSerial2.cpp.o
/opt/arduino-1.5.8/hardware/tools/avr/bin/avr-ar rcs /tmp/build1088502564841717068.tmp/core.a /tmp/build1088502564841717068.tmp/IPAddress.cpp.o
/opt/arduino-1.5.8/hardware/tools/avr/bin/avr-ar rcs /tmp/build1088502564841717068.tmp/core.a /tmp/build1088502564841717068.tmp/Stream.cpp.o
/opt/arduino-1.5.8/hardware/tools/avr/bin/avr-gcc -w -Os -Wl,--gc-sections -mmcu=atmega32u4 -o /tmp/build1088502564841717068.tmp/R11_Hello_User.cpp.elf /tmp/build1088502564841717068.tmp/R11_Hello_User.cpp.o /tmp/build1088502564841717068.tmp/Robot Control/glcdfont.c.o /tmp/build1088502564841717068.tmp/Robot Control/EEPROM_I2C.cpp.o /tmp/build1088502564841717068.tmp/Robot Control/communication.cpp.o /tmp/build1088502564841717068.tmp/Robot Control/ArduinoRobot.cpp.o /tmp/build1088502564841717068.tmp/Robot Control/Fat16.cpp.o /tmp/build1088502564841717068.tmp/Robot Control/Squawk.cpp.o /tmp/build1088502564841717068.tmp/Robot Control/RobotSdCard.cpp.o /tmp/build1088502564841717068.tmp/Robot Control/lcd.cpp.o /tmp/build1088502564841717068.tmp/Robot Control/Arduino_LCD.cpp.o /tmp/build1088502564841717068.tmp/Robot Control/information.cpp.o /tmp/build1088502564841717068.tmp/Robot Control/keyboard.cpp.o /tmp/build1088502564841717068.tmp/Robot Control/SdCard.cpp.o /tmp/build1088502564841717068.tmp/Robot Control/Multiplexer.cpp.o /tmp/build1088502564841717068.tmp/Robot Control/Compass.cpp.o /tmp/build1088502564841717068.tmp/Robot Control/Melody.cpp.o /tmp/build1088502564841717068.tmp/Robot Control/EasyTransfer2.cpp.o /tmp/build1088502564841717068.tmp/Robot Control/helper.cpp.o /tmp/build1088502564841717068.tmp/Robot Control/Sensors.cpp.o /tmp/build1088502564841717068.tmp/Robot Control/Motors.cpp.o /tmp/build1088502564841717068.tmp/Robot Control/SquawkSD.cpp.o /tmp/build1088502564841717068.tmp/Robot Control/utility/VirtualKeyboard.cpp.o /tmp/build1088502564841717068.tmp/Robot Control/utility/Adafruit_GFX.cpp.o /tmp/build1088502564841717068.tmp/Robot Control/utility/RobotTextManager.cpp.o /tmp/build1088502564841717068.tmp/Wire/Wire.cpp.o /tmp/build1088502564841717068.tmp/Wire/utility/twi.c.o /tmp/build1088502564841717068.tmp/SPI/SPI.cpp.o /tmp/build1088502564841717068.tmp/core.a -L/tmp/build1088502564841717068.tmp -lm
/opt/arduino-1.5.8/hardware/tools/avr/bin/avr-objcopy -O ihex -j .eeprom --set-section-flags=.eeprom=alloc,load --no-change-warnings --change-section-lma .eeprom=0 /tmp/build1088502564841717068.tmp/R11_Hello_User.cpp.elf /tmp/build1088502564841717068.tmp/R11_Hello_User.cpp.eep
/opt/arduino-1.5.8/hardware/tools/avr/bin/avr-objcopy -O ihex -R .eeprom /tmp/build1088502564841717068.tmp/R11_Hello_User.cpp.elf /tmp/build1088502564841717068.tmp/R11_Hello_User.cpp.hex
Sketch uses 26 560 bytes (92%) of program storage space. Maximum is 28 672 bytes.
Global variables use 2 011 bytes (78%) of dynamic memory, leaving 549 bytes for local variables. Maximum is 2 560 bytes.
Low memory available, stability problems may occur.
Forcing reset using 1200bps open/close on port /dev/ttyACM0
PORTS {/dev/ttyACM0, } / {} => {}
PORTS {} / {/dev/ttyACM0, } => {/dev/ttyACM0, }
Found upload port: /dev/ttyACM0
/opt/arduino-1.5.8/hardware/tools/avr/bin/avrdude -C/opt/arduino-1.5.8/hardware/tools/avr/etc/avrdude.conf -v -v -v -v -patmega32u4 -cavr109 -P/dev/ttyACM0 -b57600 -D -Uflash:w:/tmp/build1088502564841717068.tmp/R11_Hello_User.cpp.hex:i
avrdude: Version 6.0.1, compiled on Apr 3 2014 at 21:52:43
Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
Copyright (c) 2007-2009 Joerg Wunsch
System wide configuration file is "/opt/arduino-1.5.8/hardware/tools/avr/etc/avrdude.conf"
User configuration file is "/home/sl_promirianix/.avrduderc"
User configuration file does not exist or is not a regular file, skipping
Using Port : /dev/ttyACM0
Using Programmer : avr109
Overriding Baud Rate : 57600
AVR Part : ATmega32U4
Chip Erase delay : 9000 us
PAGEL : PD7
BS2 : PA0
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 9000 9000 0x00 0x00
Block Poll Page Polled
Memory Type Mode Delay Size Indx Paged Size Size #Pages MinW MaxW ReadBack
----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
flash 65 6 128 0 yes 32768 128 256 4500 4500 0x00 0x00
Block Poll Page Polled
Memory Type Mode Delay Size Indx Paged Size Size #Pages MinW MaxW ReadBack
----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
lfuse 0 0 0 0 no 1 0 0 9000 9000 0x00 0x00
Block Poll Page Polled
Memory Type Mode Delay Size Indx Paged Size Size #Pages MinW MaxW ReadBack
----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
hfuse 0 0 0 0 no 1 0 0 9000 9000 0x00 0x00
Block Poll Page Polled
Memory Type Mode Delay Size Indx Paged Size Size #Pages MinW MaxW ReadBack
----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
efuse 0 0 0 0 no 1 0 0 9000 9000 0x00 0x00
Block Poll Page Polled
Memory Type Mode Delay Size Indx Paged Size Size #Pages MinW MaxW ReadBack
----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
lock 0 0 0 0 no 1 0 0 9000 9000 0x00 0x00
Block Poll Page Polled
Memory Type Mode Delay Size Indx Paged Size Size #Pages MinW MaxW ReadBack
----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
calibration 0 0 0 0 no 1 0 0 0 0 0x00 0x00
Block Poll Page Polled
Memory Type Mode Delay Size Indx Paged Size Size #Pages MinW MaxW ReadBack
----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
signature 0 0 0 0 no 3 0 0 0 0 0x00 0x00
Programmer Type : butterfly
Description : Atmel AppNote AVR109 Boot Loader
Connecting to programmer: .avrdude: Send: . [1b]
avrdude: Send: S [53]
avrdude: ser_recv(): programmer is not responding
avrdude: butterfly_recv(): programmer is not responding
Проблема загрузки на плату. Для достижения дзен, курить http://www.arduino.cc/en/Guide/Troubleshooting#upload .
Т.е. вместо залитого я не могу загрузить никакой другой, и даже этот же.
Полагаю что проблема в нехватке памяти, а именно в том что залитый скетч захватил какую-то область памяти и не дает залить другой (за место себя).
Ну как то так (я не спец, новенький). Объясните Нубу, что и как это исправить.
Можно ли как то обнулить микроконтроллер.
Резет работает, но не помогает.
Уже курил, с английским не очень, переводил с помощью гугла.
Ничего внятного не узнал.
Русскоговорящие Help me Please!!!
Тогда заказываешь программатор usbasp и заливаешь через него. Только тогда загрузчик затрется, на чип прошьется. Но там на Win8/8.1 с дровами проблема, так что или линукс или Win7.
Или прошивать вторую ардуину как программатор и шить через нее. Такой программатор работает с железом, а не через загрузчик. Если плата исправна, то прошьет.
Вот черт.
А третьего не дано?
И как грамонтно прошить ардуину как программатор, дабы не возникло вопросов и по второй?
И да у мня Линукс
gcc-avr и дудка (avrdude) под линукс изначально.
В IDE в меню Tools/Programmer выбираешь usbasp для программатора или "Arduino as ISP" для прошитой соответствующим скетчем ардуины.
В случае с usbasp просто открываешь скетч, выбираешь тип платы и процессора, подключаешь программатор к плате (есть даже перходники 10-6 контактов) и прошиваешь скетч командой "File / Upload Using Programer".
Подключение прошитой ардуины есть в примере ArduinoISP.
В платах выбираешь прошиваему ардуину, т.е. если наной прошиваешь уну, то выбирать надо UNO и порт, на котором висит Nano.
Вроде всё.
Radiah
Спасибо за исчерпывающий ответ.
Очень подробненько, как только куплю USBasp-программатор буду пробовать.
Пока нет финансов, все карманные потратил на робота.
Еще раз спасибо большое за потраченное время.
А случаем нет схемы подключения Arduino UNO (c ArduinoISP) к плате Robot Control или может знаешь где поискать?
В просторах гугла не могу найти?
Всем СПАСИБО за участие.
Проблема решилась очень банально и просто.
Цитирую:
"...Одиночное нажатие кнопки сброса перезапустит вашу программу. После двойного нажатия кнопки сброса будет инициализирован загрузчик."
Я не просто НУБ, да еще и читать не умею!!! :)
Sorry ВСЕМ, за ФЛУД...
Единственное оправдание, может найдется еще такой же как я.
Ему пригодится, а так можно тему удалить.
Вобще говоря, это не совсем стандартное поведение загрузчика. По ресету должен делать паузу для работы загрузчика, а потом запускать что есть.
Ничего утверждать не могу, опыта нет.
Просто так написано в руководстве.
Адрес: http://amperka.ru/product/arduino-robot
В самом низу -> Сброс и инициализация загрузчика.
На UNO не проверял, но учту.
А резет всегда надо нажимать перед заливкой скетча?
вот это поворот...
просто немного нестандартная ардуинка и загрузчик там может быть какой угодно. вообще родные загрузчики далеко не самые оптимальные.
Тогда шить через ICSP.
#16
0
0
Всем СПАСИБО за участие.
Проблема решилась очень банально и просто.
Цитирую:
"...Одиночное нажатие кнопки сброса перезапустит вашу программу. После двойного нажатия кнопки сброса будет инициализирован загрузчик."
Я не просто НУБ, да еще и читать не умею!!! :)
Sorry ВСЕМ, за ФЛУД...
Единственное оправдание, может найдется еще такой же как я.
Нашелся , у меня такая же в точности проблема. Но мне двойной щелчон не помогает ЛЮДИ ПОМОГИТЕ
Люди получилось зашел в настроики Arduino IDE и обрал все галочки после трех четырех попыток нерного нажмания на ресет на робот контрол получилось скеч залился. Никогда не заливайте этот проклятый R04_Compass.
Наверное все таки настройки ни при чем.
Что касается скетча Compass, то я его потом заливал и неоднократно (так для проверки). Двойное нажатие на резет и заливай что угодно.
А что у тебя происходит при двойном нажатии ??
потомучто уменя он секунд 5-7 тормозил и перезагружался
После полной загрузки уже загруженного скетча, двойной рестарт и все - заливаю новый скетч.
Спасибло за информацию.
если не жалко может скинешь что интересного сделал с роботом .
После проб со встроенными скетчами забросил.
Нехватка времени. Работа, суета.
Но очень будет интересно следить за развитием этой платформы.
Предлагаю Вам создать Тему на форуме и выкладывать свои наработки.
Там же можно открыть обсуждение проблем и т.п.
Думаю это будет очень интересно многим, не только мне.
А вообще робот покупался для проекта "домашний питомец", который был бы оснащен веб камерой и управлялся бы через веб интерфейс. Плюс датчики для объезда препятствий, сигнализация на проникновение, голосовое упраление телевизором и медиа, ну и еще управление несколькими датчиками в квартире.
Управление светом уже реализовано, но на другой платформе - UNO.
Есть кое какие наработки с веб мордой (cеpвер организован на Raspberry Pi B+), но для показа все это негодится. Вдобавок Wi-Fi модуль на малинке никак не заводится, хотя все покупалось как комплект в Amperka.ru, так что пока все через провод.
С декодированием сигналов с пульта проблемы, у меня Samsung Smart TV, коды получаю, а протокол декодировать пока не удается, использовал ИК - VS1838B. Может частота не та?
Спасибо за отклик я думаю создать такую тему . Работаю над умным домом с применбота как получтся то что не стыдно показать выложу.
"с применбота" = с применением робота
Создашь тему!
Пригласи, сообщи если не трудно будет!