Официальный сайт компании Arduino по адресу arduino.cc
Не запоминается скетч во флеш памяти
- Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии
Пнд, 23/01/2012 - 15:42
Подскажите пожалуйста, в чем может быть причина такой проблемы: после отключения от USB порта и повторного включения ардуино Duemilanove скетч перестает выполнятся, хотя, по логике он должен хранится во флеш памяти и никуда не сбрасываться при отключении питания. После перезаливки программы все работает как и должно было.
1. Любой скетч не выполняется после отключения/включения, даже Blink (File/Examples/Basics/Blink)?
2. А если во время выполнения скетча нажать и отпустить кнопку reset (она одна на плате), что происходит?
Подскажите пожалуйста, в чем может быть причина такой проблемы: после отключения от USB порта и повторного включения ардуино Duemilanove скетч перестает выполнятся, хотя, по логике он должен хранится во флеш памяти и никуда не сбрасываться при отключении питания. После перезаливки программы все работает как и должно было.
залей этот код oтключи от usb, а потом опять подключи к usb и смотри что пишет Serial Monitor. Если все OK, то скорее всего села твоя батарейка.
Нет, Blink работает. Мой скетч занимает около 6 кбайт, что сильно больше Блинка, может быть в этом дело?
При нажатии Reset начались проблемы с взаимодействующей программой на компьютере, которая принимает от ардуино некую информацию и потом обрабатывает (похоже где-то циклит, даже вижу уже где), но после перезапуска программы на компе без выдергивания USB и перезаливки скетча все продолжает работать как надо.
А вот вопрос еще возникает: после отключения питания и запуска снова ардуино начинает выполнять программы с самого начала, с Setup() и потом Loop() или с той точки, где она была прервана при отключении питания(что, по моему весьма не логично)?
залей этот код oтключи от usb, а потом опять подключи к usb и смотри что пишет Serial Monitor. Если все OK, то скорее всего села твоя батарейка.
Каждый раз когда включаю Serial monitor, не вынимая USB, начинает со start и отсчитывает по 100 мс. После отключения от USB начинает снова со start и т.д.
А вот вопрос еще возникает: после отключения питания и запуска снова ардуино начинает выполнять программы с самого начала, с Setup() и потом Loop() или с той точки, где она была прервана при отключении питания(что, по моему весьма не логично)?
с самого начала
Каждый раз когда включаю Serial monitor, не вынимая USB, начинает со start и отсчитывает по 100 мс. После отключения от USB начинает снова со start и т.д.
скорее всего села твоя батарейка, или для кода не хватает SRAM (2kb)
Немного не понял, у ардуино есть встроенная батарейка для поддержания ОЗУ? Вроде ж не должно быть. А я, т.к. ардуино должна работать только в связке с компом, не подключал внешнее питание от батареи.
По поводу SRAM. Я правильно понимаю, что скетч после заливки должен обязательно хранится во флеш памяти или это не всегда так? Если так, то на выполнения кода 2 кбайт ОЗУ вполне хватает, т.к. прога вполне рабоает. Но веси скетч около 6 кбайт.
Боюсь, что мои наговоры на флеш память оказались ложными. Прошу прощения и спасибо большое за советы, они натолкнули меня на одну изощренную проверку, которая показала, что ошибка была в коде программы принимающей от ардуино данные.
Немного не понял, у ардуино есть встроенная батарейка для поддержания ОЗУ? Вроде ж не должно быть. А я, т.к. ардуино должна работать только в связке с компом, не подключал внешнее питание от батареи.
По поводу SRAM. Я правильно понимаю, что скетч после заливки должен обязательно хранится во флеш памяти или это не всегда так? Если так, то на выполнения кода 2 кбайт ОЗУ вполне хватает, т.к. прога вполне рабоает. Но веси скетч около 6 кбайт.
я имел в виду если arduino не подключина к PC. для ее работы нужна энергия или от батарейки или ещё откуда нибудь...