Качественное и безопасное устройство, работающее от аккумулятора, должно учитывать его физические и химические свойства, профили заряда и разряда, их изменение во времени и под влиянием различных условий, таких как температура и ток нагрузки. Мы расскажем о литий-ионных аккумуляторных батареях EVE и нескольких решениях от различных китайских компаний, рекомендуемых для разработок приложений с использованием этих АКБ. Представленные в статье китайские аналоги помогут заменить продукцию западных брендов с оптимизацией цены без потери качества.
Я так понимаю из прочтения параграфа в даташите, что писать WDCE надо только когда вы хотите выключить таймер. Да и в AVR132 написано:
To disable the WDT System Reset Mode, the Watchdog Change Enable bit must be set within four CPU clock cycles prior to the disabling. If not, the WDT System Reset Mode will stay enabled. If the WDTON fuse is programmed the WDT System Reset Mode is always enabled.
To change the timeout period, the Watchdog Change Enable bit must be set within four CPU clock cycles prior to changing the timeout value. It is however not recommended to change the timeout period during normal operation. This should be done once in the initialization code.
If the WDTON fuse is unprogrammed on ATtiny13 and ATtiny2313, it is possible to change the WDT timeout period without following the timed sequence.
Changing the WDT Interrupt Mode setting or enabling the WDT System Reset Mode needs no special considerations.
_________________ Разница между теорией и практикой на практике гораздо больше, чем в теории.
Компания EVE выпустила новый аккумулятор серии PLM, сочетающий в себе высокую безопасность, длительный срок службы, широкий температурный диапазон и высокую токоотдачу даже при отрицательной температуре.
Эти аккумуляторы поддерживают заряд при температуре от -40/-20°С (сниженным значением тока), безопасны (не воспламеняются и не взрываются) при механическом повреждении (протыкание и сдавливание), устойчивы к вибрации. Они могут применяться как для автотранспорта (трекеры, маячки, сигнализация), так и для промышленных устройств мониторинга, IoT-устройств.
To disable an enabled Watchdog Timer and/or changing the Watchdog Time-out, the following procedure must be followed: 1. In the same operation, write a logic one to WDCE and WDE. A logic one must be written to WDE regardless of the previous value of the WDE bit. 2. Within the next four clock cycles, in the same operation, write the WDE and WDP bits as desired, but with the WDCE bit cleared.
в связи с этими указаниями я сделал:
ldi R16, 0b00011000 out WDTCR, R16 ldi R16, 0b00001111 out WDTCR, R16
первая запись - в соответствие пункту 1, вторая запись - в соответствие пункту 2. все равно не работает.
_________________ Мудрость приходит вместе с импотенцией... Когда на русском форуме переходят на Вы, в реальной жизни начинают бить морду.
меняю в отладчике на ATtiny13 - собака работает прекрасно. возвращаю ATmega8 - перестает работать. биты у них совпадают.
Добавлено after 1 hour 48 minutes 32 seconds: бля... уже пошел на то, чтобы проверить собаку на реальном устройстве. и этот код прекрасно РАБОТАЕТ!!! проявились баги АВР Студио...
_________________ Мудрость приходит вместе с импотенцией... Когда на русском форуме переходят на Вы, в реальной жизни начинают бить морду.
А AVR Studio какой версии? Но вообще да, симуляторы - они такие... Можно почитать раздел device limitations в документации на симулятор, может быть там чего написано.
_________________ Разница между теорией и практикой на практике гораздо больше, чем в теории.
У меня стоит 4.14, но я зашел в Help -> AVR Tools User Guide, Simulator -> Known Issues -> ATmega8 и там написано следующее:
The USART's UBRRH and UCSRC registers share the same I/O address. Writing to one of the registers will cause both registers to contain the new value, regardless of the value of URSEL. Reading these registers do not work as described in the datasheet.
The ADC noise reduction function is not supported. Setting the ADIF flag will not wake the CPU from sleep mode.
The Watchdog is not simulated.
Так что да, это правда ограничение симулятора. Причем, как видно, есть еще пара особенностей. Кроме того, есть ограничения, общие для всех контроллеров (перечислены на первой странице раздела Known Issues) - например, не работает бит SPI2X, не симулируется выключение периферии при установке соответствующих битов в PRR (в контроллерах, в которых он есть) и т.д.
_________________ Разница между теорией и практикой на практике гораздо больше, чем в теории.
----Пытаюсь разобраться с вачдогом, работая в Atmel studio 6. Включаю так : wdt_enable(WDTO_4S). Если хоть раз выдать wdt_reset(), то далее вачдог отключается и больше не сбрасывает. Так и должно быть ? Он же должен только таймер сбрасывать, а не отключать его ? ----Такой же эффект наблюдается, если в коде выдать еще раз wdt_enable(WDTO_4S), то вачдог сного отключается и не ребутит МК.
Здравствуйте! столкнулся вот с такой проблемой : Контроллер Mega168P настраиваю ватчдог на 2 секунды времени, но почему то прерывание происходит значительно чаще (несколько раз в секунду) Какое бы значение предделителя я не выставил,все отдно и тоже. Светодиод мигает с одинаковой скоростью при любых значениях предделителя,кроме самых быстрых. Если в теле функции задержки писать asm("wdr"); , то таймер сбрасывается раньше,и прерывание вообще не происходит,как и должно быть. но мне нужно получить временные интервала в 2 сек. Я уже перепробывал все варианты,ничего не помогает. Может все дело в китайском контроллере?
Огромное вам спасибо! ваш код на ассемблере работает так : 2 сек на линии 1, 2 сек 0. Получается контроллер исправен. Я перенес то что было написано на ассемблере в си, но все равно светодиод на PB0 мигает раз 5 в секунду,ничего не изменилось. Что может быть не так? Открыл окно отладчика, IO/view,выбрал WDT и вижу, что все биты кроме WDPn устанавливаются, а нужные биты WDPn отладчик предлагает выбрать из выпадающего списка. Это нормально?
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 36
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения