Например TDA7294

Форум РадиоКот :: Просмотр темы - Как войти в режим Sleep для атмега128
Форум РадиоКот
https://radiokot.ru/forum/

Как войти в режим Sleep для атмега128
https://radiokot.ru/forum/viewtopic.php?f=66&t=179693
Страница 1 из 1

Автор:  fktif7 [ Вт ноя 16, 2021 09:41:23 ]
Заголовок сообщения:  Как войти в режим Sleep для атмега128

Добрый день.
В Ардуино IDE подключением менеджера плат МеgаCore, организована поддержка микроконтроллера Атмега128.
В моем скетче есть участок входа микроконтроллера в сон. При попытки компиляции возникает ошибка указывающая на проблему с библиотекой <LowPower.h> . Смена версий среды Ардуино, а также подключаемых других библиотек энергосбережения не приводит к положительному результату. Это как мне кажется означает отсутствие поддержки библиотеками контроллера Атмега128.
Просьба, помогите как решить данную проблему.
Если отключить энергосберегающую библиотеку то Ардуино компилирует скетч и прошивает контроллер который выполняет проектируемую задачу.

Автор:  pyzhman [ Вт ноя 16, 2021 11:55:04 ]
Заголовок сообщения:  Re: Как войти в режим Sleep для атмега128

...означает отсутствие поддержки библиотеками контроллера Атмега128...

Совершенно верно.
Решается задача написанием своей утилиты лапками.

Автор:  fktif7 [ Вт ноя 16, 2021 12:27:14 ]
Заголовок сообщения:  Re: Как войти в режим Sleep для атмега128

pyzhman лапками для меня не понятно пока как.
Я так же из Ижевска

Автор:  pyzhman [ Вт ноя 16, 2021 13:44:41 ]
Заголовок сообщения:  Re: Как войти в режим Sleep для атмега128

Раздел Power Management and Sleep Modes в даташите.

Автор:  fktif7 [ Вт ноя 16, 2021 22:35:18 ]
Заголовок сообщения:  Re: Как войти в режим Sleep для атмега128

Все оказалось просто и разжевано на сайте разработчика MegaCore.
в сон Атмега128 и несколько других контроллеров которые не поддерживает библиотека <LowPower.h>
входит так (проверил работает)

void setup()
{
SleepMode(SLEEP_IDLE); // задаете один из 6 режимов сна, синтаксис обезателен
//режим
//SLEEP_IDLE
//SLEEP_ADC
//SLEEP_POWER_DOWN
//SLEEP_POWER_SAVE
//SLEEP_STANDBY
//SLEEP_EXTENDED_STANDBY
}
void loop()
{
IF( переменная==истина)
{sleep ();}
else
{noSleep ();}
{

Выход из сна происходит разными методами, в основном по прерыванию(смотреть датшит) поэтому перед сном надо разрешить прерывания а после выхода запретить.

Заметил что при установки MegaCore в среду Ардуино IDE, необходимость в платах Ардуино отпадает, Достаточно к практическому любому микроконтроллеру подпаять кварц, и разъем для программатора или UART и из среды Ардуино IDE редактировать свой скетч, компилировать и прошивать микроконтроллер не задумываясь об фьюзах. Если применять для этих целей UART, то предварительно прошить программатором загрузчик в микроконтроллер из среды IDE

Автор:  BOB51 [ Ср ноя 17, 2021 09:23:06 ]
Заголовок сообщения:  Re: Как войти в режим Sleep для атмега128

...
Заметил что при установки MegaCore в среду Ардуино IDE, необходимость в платах Ардуино отпадает, Достаточно к практическому любому микроконтроллеру подпаять кварц, и разъем для программатора или UART и из среды Ардуино IDE редактировать свой скетч, компилировать и прошивать микроконтроллер не задумываясь об фьюзах. Если применять для этих целей UART, то предварительно прошить программатором загрузчик в микроконтроллер из среды IDE

Ошибочное мнение.
1. В случае, когда из группы mcudude установлена только платформа MegaCore будут обслуживаться только МК из перечня данной платформы. (и те, что установлены "по умолчанию" или ранее дополнительно установлены).
2. Фузы в любом случае придется записывать для конкретной комбинации в списке настроек выбранного МК.
Только делается это через ардуиноISP программатор командой "записать бутлоадер" (даже если такового в платформе не предусмотрено). А уже после того можно и сам скотч загружать.

Самодельные платки ардуино на основе АВР в любом случае можно делать самостоятельно - это базовая особенность данной системы.
Однако для расширения номенклатуры МК потребуется добавлять соответствующие платформы, которые данные МК поддерживают.
8)

Автор:  fktif7 [ Ср ноя 17, 2021 14:02:27 ]
Заголовок сообщения:  Re: Как войти в режим Sleep для атмега128

Да я указывал только микроконтроллеры относящиеся к платформе MegaCore , но аналогично подключается платформа MiniCore, MightyCore и еще все Attiny и практически со средой IDE работает любая Атмега. В инструментах для выбранного MK устанавливаете фьюзы и заливайте загрузчик.

Автор:  Ariadna-on-Line [ Вс дек 19, 2021 21:42:07 ]
Заголовок сообщения:  Re: Как войти в режим Sleep для атмега128

Не подскажете как заставить компилятор Ардуино организовать стек во внешней памяти по нужному адресу. То есть служебные байты таймеров, библиотек, прерываний и тд. должны быть там, а не в конце несчастных внутренних 4х килобайт. ДШ проца - позволяет.

Страница 1 из 1 Часовой пояс: UTC + 3 часа
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/