|
|
Результаты опроса: Нужен ли такой мод? | |||
Нужно |
![]() ![]() ![]() ![]() |
102 | 98.08% |
Не нужно |
![]() ![]() ![]() ![]() |
2 | 1.92% |
Голосовавшие: 104. Вы ещё не голосовали в этом опросе | Отменить свой голос |
![]() ![]() |
|
|
![]() ![]() ![]() ![]() |
|
Опции темы | Поиск в этой теме |
![]() |
![]() ![]() |
![]() Регистрация: 07.04.2013 Последняя активность: 13.06.2023 02:24
Сообщений: 5759
Сказал(а) спасибо: 340
Поблагодарили: 8162 раз(а) в 2385 сообщениях
|
![]()
Вот как у меня:
Код:
ldi R16, 0b10110100 ;BOD Sleep, Sleep, режим Power-down, BOD Sleep Enable out MCUCR, R16 ldi R16, 0b10110000 ;BOD Sleep, Sleep, режим Power-down out MCUCR, R16 SLEEP ;Ну наконец-то блин засыпаем! Код:
692: 85 b7 in r24, 0x35 ; 53 694: 84 68 ori r24, 0x84 ; 132 696: 98 2f mov r25, r24 698: 9b 7f andi r25, 0xFB ; 251 69a: 85 bf out 0x35, r24 ; 53 69c: 95 bf out 0x35, r25 ; 53 Код:
69e: 85 b7 in r24, 0x35 ; 53 6a0: 80 62 ori r24, 0x20 ; 32 6a2: 85 bf out 0x35, r24 ; 53 6a4: 78 94 sei 6a6: 88 95 sleep 6a8: 08 95 ret [Исправлено: INFERION, 29.08.2013 в 17:02] |
![]() |
![]() ![]() |
![]() ![]() |
![]() ![]() |
![]() |
![]() |
![]() |
![]() ![]() |
![]() |
![]() ![]() |
![]() Регистрация: 07.04.2013 Последняя активность: 13.06.2023 02:24
Сообщений: 5759
Сказал(а) спасибо: 340
Поблагодарили: 8162 раз(а) в 2385 сообщениях
|
![]()
Bit 7 – BODS: BOD Sleep
BOD disable functionality is available in some devices, only. See “Limitations” on page 37. In order to disable BOD during sleep (see Table 7-1 on page 35) the BODS bit must be written to logic one. This is controlled by a timed sequence and the enable bit, BODSE in MCUCR. First, both BODS and BODSE must be set to one. Second, within four clock cycles, BODS must be set to one and BODSE must be set to zero. The BODS bit is active three clock cycles after it is set. A sleep instruction must be executed while BODS is active in order to turn off the BOD for the actual sleep mode. The BODS bit is automatically cleared after three clock cycles. In devices where Sleeping BOD has not been implemented this bit is unused and will always read zero. Да, действительно. Так тем более... A sei и cli я вижу там лишним. Все лишние прерывания желательно отключить заранее или знать что вот прямо сейчас они не сработают (если код синхронизирован с таймерами, то это не проблема), подготовить внешнее прерывание и уйти спать. Если где-то сидит флаг прерывания, то после sei он и не заснёт. Потом вернётся после обработчика, заснёт, но уже без BOD. Если же в этот момент сработает внешнее прерывание - ничего страшного, ему всё равно надо просыпаться, ибо кнопка была нажата... ret тоже выглядит как-то... Разве нельзя расположить Sleep в главной функции, зачем выносить подпрограммой расходуя 4 байта и 7 тактов, засоряя при этом стек? И Си везде так делает, ибо он видит любую функцию как подпрограмму. На переходы и пересылку данных расходуя ресурсов чуть ли не столько же, сколько на полезную работу (а часто и гораздо больше, как в коротких прерываниях, к примеру)... [Исправлено: INFERION, 29.08.2013 в 17:20] |
![]() |
![]() ![]() |
![]() ![]() |
![]() ![]() |
![]() |
![]()
все функции так.
зато в отличии от страшного ![]() Код:
while(1) { process_batt_ind(); process_mode(); process_temperature(); process_voltage(); process_tc(); process_blink(); process_sleep(); } [Исправлено: Tamagotchi, 29.08.2013 в 17:32] |
![]() |
![]() ![]() |
![]() ![]() |
![]() ![]() |
![]() |
![]()
INFERION,
Вот, что нашел: Код:
Note that only the ATtinyX5 devices below have BOD disable * functionality implemented. With Vcc=5V, the BOD will draw 20-25µA, depending on temperature. ATtiny25, revision E, and newer ATtiny45, revision D, and newer ATtiny85, revision C, and newer ATtiny45V-10PU, Rev. G 7.4mA active, 0.1µA power-down. ATtiny85V-10PU, Rev. B 7.1mA active, 21µA power-down. |
![]() |
![]() ![]() |
![]() |
![]() ![]() |
|
Ветеран Фонарёвки
Регистрация: 08.10.2011 Последняя активность: 30.03.2024 21:54
Сообщений: 7998
Сказал(а) спасибо: 934
Поблагодарили: 5203 раз(а) в 2785 сообщениях
|
![]() Цитата:
У меня, в AVR Studio 5, ATtiny13 глубоко засыпает после такого: WDTCR |= (1<<WDCE) | (1<<WDE); WDTCR = 0x00; MCUCR=0x30; GIMSK=0x40; BODCR = 0x03; BODCR = 0x02; sei(); asm("sleep"); |
|
![]() |
![]() ![]() |
![]() ![]() |
![]() ![]() |
![]() |
![]() |
![]() |
![]() ![]() |
![]() ![]() |
![]() ![]() |
|
![]() |
![]() Цитата:
![]() |
|
![]() |
![]() ![]() |
![]() ![]() |
![]() ![]() |
![]() |
![]()
All
Строка для прошивки из дудки и USBASP. Годится для "медленных" тинек. "C ![]() Фусы шьются те, с которыми не трется EEPROM при перепрошивке. Если дудка ругается на Ваш программатор типа не могу установить частоту SCK - нужно обновить прошивку USBASP. Для этого требуется еще один такой программатор. Нужно соединить их стандартным кабелем, на программаторе, прошивка которого обновляется замыкаем перемычку J2 и заливаем новую прошивку. Брать здесь http://www.fischl.de/usbasp/. После прошивки размыкаем J2 и все - Ваш программатор поддерживает программную установку скорости. |
![]() |
![]() ![]() |
![]() ![]() |
![]() ![]() |
![]() |
![]()
Прошивка RC7 TB7135LD4_V1.0RC7.RAR
С поддержкой индикаторного светодиода на 7 ноге. Сажать через сопротивление на землю. Еще раз повторю, на стороне платы с МК - делитель отпаять, диод оставить. [Исправлено: Tamagotchi, 29.08.2013 в 21:10] |
![]() |
![]() ![]() |
![]() |
![]() ![]() |
|
![]() Регистрация: 06.06.2010 Последняя активность: 20.06.2025 14:30
Сообщений: 2012
Сказал(а) спасибо: 697
Поблагодарили: 859 раз(а) в 360 сообщениях
|
![]() Цитата:
Tamagotchi, а прошить через LPT как раньше (13 тиньку) при помощи понипрога можно ? в поддержке понипрога 85 есть, фузы как ставить ? |
|
![]() |
![]() ![]() |
![]() ![]() |
![]() ![]() |
![]() |
![]()
Почему нельзя? Можно.
Фусы вот lfuse:w:0x62:m -U hfuse:w:0xD3 L = 0x62 H = 0xD3 Или можно попробовать оставить как есть. В смысле по умолчанию. Частоту - делитель программа сама установит, боды... и так будет работать. |
![]() |
![]() ![]() |
![]() |
![]() ![]() |
![]() Регистрация: 06.06.2010 Последняя активность: 20.06.2025 14:30
Сообщений: 2012
Сказал(а) спасибо: 697
Поблагодарили: 859 раз(а) в 360 сообщениях
|
![]() |
![]() |
![]() ![]() |
![]() ![]() |
![]() ![]() |
![]() |
![]() |
![]() |
![]() ![]() |
![]() ![]() |
![]() ![]() |
![]() |
![]()
Все - последняя версия. Драйвер с ней уже в фонаре.
TB7135LD4.RAR Даже кнопка моргает. ЗЫЖ Вот бы кто информацию систематизировал... [Исправлено: Tamagotchi, 30.08.2013 в 14:53] |
![]() |
![]() ![]() |
![]() |
![]() ![]() |
![]() Регистрация: 07.04.2013 Последняя активность: 13.06.2023 02:24
Сообщений: 5759
Сказал(а) спасибо: 340
Поблагодарили: 8162 раз(а) в 2385 сообщениях
|
![]()
Кнопка не многовато жрать будет? Я у себя сделал всего 16мс вспышки, но думаю ещё в фоне постоянное свечение через подтяжку МК (30k) сделать. Несколько десятков микроампер будет жрать, зато проще в темноте найти...
|
![]() |
![]() ![]() |
![]() |
![]() ![]() |
сволочь фонарёвки
Регистрация: 27.05.2011 Последняя активность: Сегодня 19:06
Сообщений: 40181
Сказал(а) спасибо: 6608
Поблагодарили: 35783 раз(а) в 16533 сообщениях
|
![]()
а кстати, если подобрать R1, то тоже должна получиться фоновая подсветка
[Исправлено: galex, 30.08.2013 в 19:06] |
![]() |
![]() ![]() |
![]() |
![]() ![]() |
![]() Регистрация: 07.04.2013 Последняя активность: 13.06.2023 02:24
Сообщений: 5759
Сказал(а) спасибо: 340
Поблагодарили: 8162 раз(а) в 2385 сообщениях
|
![]()
Да её и тут можно программно подтяжкой сделать. Периодически короткие вспышки для грубой ориентации, а дальше уже и слабое фоновое свечение заметить не трудно будет...
|
![]() |
![]() ![]() |
![]() ![]() |
![]() ![]() |
![]() |
![]() |
![]() |
![]() ![]() |
![]() ![]() |
![]() ![]() |
![]() |
![]()
А что ты с Поней паришся? Вроде как и Дудка через LPT шьет (за 2 года слабо было программатор спаять?
![]() http://www.ladyada.net/lear... |
![]() |
![]() ![]() |