реклама на сайте
подробности

 
 
 
Reply to this topicStart new topic
> лог. уровень ног в sleep режиме. вопрос., на AVR Тiny2313
timex
сообщение Nov 20 2009, 18:40
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 16
Регистрация: 27-04-05
Из: Воронеж
Пользователь №: 4 541



сразу оговорюсь я не схемотехник, поэтому и задаю вопрос

по требованию к программе нужно при одевании перемычки на устройство держать две ноги в состоянии "вход с pull-up". это делать неограниченно долго, до отключения питания или сброса.

это по заданию. так нужно.


как я понимаю, для внешнего устройства они (ноги на вход с pullup) будут висеть как бы в воздухе.

можно ли загнать контроллер в спящий режим для останова программы? что в таком случае будет с пинами портов и почему? даташит на стр. 53 и 35 смотрел, но понял мало ((
понял только, что режим power_down отключает в том числе и тактирование i/o, а режим idle - только тактирование cpu и flash, остальное работает.


или правильнее сделать (как сейчас) бесконечный цикл, не усыпляя мк?

Сообщение отредактировал timex - Nov 20 2009, 18:43
Go to the top of the page
 
+Quote Post
zltigo
сообщение Nov 20 2009, 18:43
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244



Цитата(timex @ Nov 20 2009, 21:40) *
что в таком счучае будет с пинами портов

ничего не изменится
Цитата
и почему?

потому, что не было команды чего-либо менять.
Цитата
как я понимаю, для внешнего устройства они (ноги на вход с pullup) будут висеть как бы в воздухе.

они будут с pullup резисторами, а не в "воздухе", либо мы о чем это тут?


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
timex
сообщение Nov 21 2009, 15:11
Сообщение #3


Участник
*

Группа: Участник
Сообщений: 16
Регистрация: 27-04-05
Из: Воронеж
Пользователь №: 4 541



Цитата
ничего не изменится

а какова функция сигнала SLEEP в схеме управления пина порта? он же связан с командой sleep.
Прикрепленное изображение


Сообщение отредактировал timex - Nov 21 2009, 15:14
Go to the top of the page
 
+Quote Post
zltigo
сообщение Nov 21 2009, 15:55
Сообщение #4


Гуру
******

Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244



Цитата(timex @ Nov 21 2009, 18:11) *
а какова функция сигнала SLEEP в схеме управления пина порта?

С управлением пином он НИКАК не связан. Что, даже входы от выходов на схеме не умеете отличить sad.gif


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
V_G
сообщение Nov 22 2009, 02:21
Сообщение #5


Профессионал
*****

Группа: Свой
Сообщений: 1 818
Регистрация: 15-10-09
Из: Владивосток
Пользователь №: 52 955



Цитата(timex @ Nov 22 2009, 01:11) *
а какова функция сигнала SLEEP в схеме управления пина порта? он же связан с командой sleep.

Еще раз перечитайте даташит на с. 53, особенно подзаголовок "Digital Input Enable and Sleep Modes"
Вкратце - уменьшение энергопотребления при висящем в воздухе пине
Go to the top of the page
 
+Quote Post
timex
сообщение Nov 23 2009, 13:43
Сообщение #6


Участник
*

Группа: Участник
Сообщений: 16
Регистрация: 27-04-05
Из: Воронеж
Пользователь №: 4 541



согласен, проглядял unsure.gif

однако кажется нашёл ошибку в avr-libc

режимы сна по даташиту:

Прикрепленное изображение



a вот из WinAvr\avr\include\avr\sleep.h

Код
#elif defined(__AVR_ATtiny2313__)

    #define SLEEP_MODE_IDLE         0
    #define SLEEP_MODE_PWR_DOWN     (_BV(SM0) | _BV(SM1))
    #define SLEEP_MODE_STANDBY      _BV(SM1)

    #define set_sleep_mode(mode) \
    do { \
        _SLEEP_CONTROL_REG = ((_SLEEP_CONTROL_REG & ~(_BV(SM0) | _BV(SM1))) | (mode)); \
    } while(0)


в строке
Код
#define SLEEP_MODE_PWR_DOWN     (_BV(SM0) | _BV(SM1))

устанавливают в "1" оба бита, но это режим Standby. стало быть, следует поменять их местами. куда рекламацию слать? )

это в версии, поставляемой с последним WinAVR (1.6.6) и в последней на офф.сайте (1.6.7).

Сообщение отредактировал timex - Nov 23 2009, 14:03
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 18th July 2025 - 13:26
Рейтинг@Mail.ru


Страница сгенерированна за 0.01412 секунд с 7
ELECTRONIX ©2004-2016