Подбор нужного МК
|
|
| Пн, 16.03.2020, 20:25 | Сообщение # 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); } } }
|
|
| Пн, 16.03.2020, 21:13 | Сообщение # 2
|
булат
Постов: 554
Друзья |
Цитата Abramovich ( ) но он достаточно дорогой 59 руб дорого???
Цитата Abramovich ( ) в корпусе SOIC его найти достаточно проблематично ,если в профиле у вас город правильный Все пункты 1-6 соответствуют,а потребление-надо правильно использовать режимы энергосбережения,у вас в коде нет даже попыток использовать режимы сна,и фузы с умом,о них писано-переписано море информации в интернете! Жаль в ардуино дуб,подсказать что-то по коду не могу
|
|
| Вт, 17.03.2020, 20:14 | Сообщение # 3
|
Abramovich
Постов: 2
U |
Цитата булат ( ) 59 руб дорого??? странно, заходил на сайт, она там 110 была, видимо не видел. Спасибо огромное за ссылку.
Цитата булат ( ) опыток использовать режимы сна,и фузы с умом, Окей, понял, я обязательно посмотрю и изучу эту тему поглубже. Спасибо большое, Вы мне очень помогли!
|
|
| Вт, 17.03.2020, 21:21 | Сообщение # 4
|
булат
Постов: 554
Друзья |
Аттини в глубокий сон,датчик на прерывание PCINTх,потребление аттини в деж режиме будет почти 0
|
|