РАДИОСХЕМЫ



СТАРЫЙ ФОРУМ

Форум на ЭЛВО


РАДИОФОРУМЫ


СХЕМЫ И СТАТЬИ



  • Страница 1 из 1
  • 1
Архив - только для чтения
Подбор нужного МК
Сообщение # 1        
Abramovich
аватар
  Постов: 2   U 
Добрый день, форумчане. Такая задача. Хочу создать несколько устройств на светодиодах. Задача каждого в том, чтобы от движения (датчик вибрации, наклона) светодиод начинал моргать, переливаться и т.д. Подпитывается всё от батарейки, конечно же как можно меньших размеров (таблетка).
Собственно я уже реализовал такое пробное устройство на ATtiny13, вибродатчике 18015 и батарейке CR1220. Всё работает, но хотелось бы это дело и удешевить и уменьшить в размерах, если это конечно же возможно. Особо в параметрах МК я не разбираюсь, но могу сказать что мне от неё точно нужно:
1) Маленький размер
2) Как минимум 1 канал ШИМ (а лучше 3, для переливания трёх светодиодов RGB)
3) Память на 1Кб (программу для одного такого устройства приложу ниже, может её можно и сократить, но не факт что такую же, но на три диода получится ужать)
4) Низкое потребление или возможность подключения режимов с низким потреблением.
5) Работа от 3В. (от таблетки)
6) Возможность программирования через Arduino UNO (но другие варианты тоже рассматриваю, просто Arduino уже есть)

Повторюсь пока что нашел и использовал только ATtiny13, который меня вполне устроил, но он достаточно дорогой и в корпусе SOIC его найти достаточно проблематично. К тому же как мне показалось, он слишком хорош для такого проекта. Повторюсь, я чайник, и может есть какие-то более дешевые аналоги.

Очень надеюсь на Вашу помощь. Заранее большое Вам спасибо!
Прикладываю обещанный мною код:
Код
int vib = 4;
int led = 0;
long loopTime = 5000;

void setup() {
pinMode(led, OUTPUT);
pinMode(vib, INPUT);
}
void loop()
{
if (digitalRead(vib)){
unsigned long currentMillis = millis();
while(millis()-currentMillis<=loopTime)
{
for(int fadeValue = 0; fadeValue <=255; fadeValue+=5){
analogWrite(led,fadeValue);
delay(2);
}
for(int fadeValue = 255; fadeValue >=0; fadeValue-=5){
analogWrite(led,fadeValue);
delay(2);
}
for(int fadeValue = 0; fadeValue <=255; fadeValue+=5){
analogWrite(led,fadeValue);
delay(2);
}
for(int fadeValue = 255; fadeValue >=0; fadeValue-=5){
analogWrite(led,fadeValue);
delay(2);
}
digitalWrite(led, LOW);
delay(600);
}
}
}
Сообщение # 2        
булат
аватар
  Постов: 554   Друзья 
Цитата Abramovich ()
но он достаточно дорогой

59 руб дорого???
Цитата Abramovich ()
в корпусе SOIC его найти достаточно проблематично

,если в профиле у вас город правильный
Все пункты 1-6 соответствуют,а потребление-надо правильно использовать режимы энергосбережения,у вас в коде нет даже попыток использовать режимы сна,и фузы с умом,о них писано-переписано море информации в интернете!
Жаль в ардуино дуб,подсказать что-то по коду не могу
Сообщение # 3        
Abramovich
аватар
  Постов: 2   U 
Цитата булат ()
59 руб дорого???

странно, заходил на сайт, она там 110 была, видимо не видел.
Спасибо огромное за ссылку.
Цитата булат ()
опыток использовать режимы сна,и фузы с умом,

Окей, понял, я обязательно посмотрю и изучу эту тему поглубже. Спасибо большое, Вы мне очень помогли!
Сообщение # 4        
булат
аватар
  Постов: 554   Друзья 
Аттини в глубокий сон,датчик на прерывание PCINTх,потребление аттини в деж режиме будет почти 0
  • Страница 1 из 1
  • 1
Поиск:

Внимание! Форум переехал на Tehnodium.ru



© 2010-2022 "Форум Радиосхемы". All Rights Reserved  Почта  PDA