Pull to refresh
54
0
Сергей Труш @HWman

Techn0man1ac(техноманьяк)

Send message
ATtiny13 бывает достаточно порой.
Хм… спустя некоторое время батарейка разрядилась, но ведь так не должно было быть, ток потребления в режиме сна замерить обычным мультиметром не возможно… Просто мистика какая-то.
UPD 03.12.2014:

Вышла новая версия «ядра» для ATtiny13 core13_19. Почему то опять с некоторыми недочётами в функциях analogWrite() и pulseIn(), вот ядро ссылка с исправленными недочётами:

Скачать.

Список поддерживаемых Arduino'вских функций взятый из официальной страница проекта:

map()
random()
randomSeed()
millis()
micros()
delay()
delayMicroseconds() *
analogRead()
analogWrite()
pinMode()
digitalRead()
digitalWrite()
pulseIn() (Untested)
shiftIn() (Untested)
shiftOut() (Untested)


Собственно официальная страница проекта:

http://forum.arduino.cc/index.php/topic,89781.0.html.

При обнаружении каких либо багов пишите сюда, но всё же лучше ветку русскоязычного форума Arduino.
А можно сделать чтобы ШИМ был не 8-ми битным а к примеру 7 битным? Тогда полагаю можно выиграть в частоте ШИМ.
Собственно это мне сейчас и нужно.
Я обычно «прижимаю» Reset к +5В при помощи резистора на 10 кОм чтобы избежать невольных перегрузок микроконтроллера.
А ещё можно подцепить керамику на 0.1 мкФ(100 нФ).

image

А то микроконтроллер будет чуть что сразу «ловить» ресет, слегка коснулся чем-то порт Reset и перезагрузка МК гарантирована.
Странно? Но почему тогда микроконтроллер потреблял около 400 мкА в режиме сна до момента пока руками не прописал отключение?
UPD по совету одного человека, я добавил в функцию system_sleep() отключение аналогового компаратора для ещё большей экономии заряда батарейки. Файлы в низу статьи перезалито.
А кстати интересно как будет этот девайс вести себя под ЛЭП. Надо будет на днях катнуть на велике по окрестностям…
Мультиметр показывает что схема потребляет 0.75 мА когда горит зелёный светодиод и 1.50 мА когда красный. Может батарейка малость подсела.
Ток в работе 1.5-2 мА, но всё же просто «прижимать» пин ресет на землю — думаю в таком случае ток будет проходить через кнопку значительно меньше.
Боюсь что так кнопка быстро выгорит.
У меня микроконтроллер после свечения переходит в спящий режим, в котором микроконтроллер потребляет по даташиту:

image

Всего 0.2 мкА. Чтобы микроконтроллер разрядил батарею нужно наверное тысячи лет, скорей батарейка сама по себе разрядится за такое время.
На ATtiny13 порты по умолчанию находятся в высокоимпедансном состоянии, то есть Hi-Z состоянии, это как бы и не логическая 1 и не лог. 0, к тому же порт установлен как вход.
За счёт этого можно ничего не изменяя состояния на порту как говорил один человек «нарубить случайных чисел».
Дело в том что мы питаемся считать значение на «висящем в воздухе» пине, он работает как антенна в радиоприемнике, включи не настроений радиоприемник и услышишь шум, такой же шум и «слышит» микроконтроллер.

image

На скриншонте показано как микроконтроллер видит белый шум.
А как подсчитать процент потерь данных?
Я бы со вздутыми не пробовал даже что-то делать, их сразу можно нести в пункт приёма аккумуляторов и батареек.

Information

Rating
Does not participate
Date of birth
Registered
Activity