Перейти к контенту
МОРСКОЙ АКВАРИУМ - форум Аква Лого

Аква Лого / мы на связи
Аква Лого в VK
Аква Лого в Телеграмм
Аква Лого в соцсетях

На танцующих утят быть похожими хотят

Жемчуг из песчинки

Жаба на питоне

Kiraso

Моряки
  • Число публикаций

    483
  • Регистрация

  • Последнее посещение

  • Дней в топе

    2

Весь контент пользователя Kiraso

  1. Kiraso

    Матрица из 16 XM-L U2

    2karen: пишу с мобильного (щас на даче) и не скажу точно. надо смотреть в даташитах. но по памяти, простые и дешевые мега16 и мега32 вроде как содержат 3 таймера (два 8ми разрядных и один 16ти разрядный), тогда ШИМов там должно быть 7 штук (если внутренняя схема их аналогичная со старшими мегами, 16ти разрядный ШИМ может и 2 регистра содержать вместо 3)
  2. Kiraso

    Матрица из 16 XM-L U2

    по поводу многоканальных ШИМ влезу (ибо, тема у меня актуальная была) 2yury88: у ARM 12 ШИМ, говоришь... и скорей всего они содержат несколько регистров сравнения, а значит там уже не 12 а 24...36 ШИМ. в том же atMega2560 16 аппаратных ШИМ (правда наружу вытащить можно не более 15) если делать многоканальный ШИМ софтверно (я себе сделал так: с помощью аппаратных ШИМ задаю скважность, а софтверно выполнен мультиплексор каналов/подключений пинов. аппаратные ШИМы могут работать как непосредственно на свой пин, так и на софтверный ШИМ, shared). Так вот в моей реализации приходиться мириться с 1-3% начальным уровнем диммирования (зависит от разрядности, частоты и т.п.), как защита от некого "джиттера". Лично считаю это не такой уж страшной платой за мультиШИМ. Но предупредить стоит
  3. да не вопрос , хотя эта firmata меня не впечатлила.
  4. не очень понятно зачем она, вкл/выкл 5 пинов авр.... зачем? имхо, пользы ни какой. кроме того, может я конечно и не увидел, но в Jarduino_v1_1 не нашел работы с Serial, а значит эта штука работать не должна. эта штука работает с http://www.thepenguincult.com/descargas/pr...delphi_leds.pde
  5. ну а кто мешает ввести процедуру калибровки в сам скетч? это просто не нужно для DIY, ибо не стоит задача запускать в производство.
  6. не надо ULN2002, он для pmos! в данном случае нужет ULN2003 только учтите, что максимум что может рассеить такой корпус, это около ватта а вообще, если не будет ШИМ на вентиляторах, зачем такие сложности?
  7. Kiraso

    LED Kit на 500 литров

    вентиляторы разные бывают если брать 120 мм, то большинство (включая низкопрофильные, они обычно более прожорливые) подпадает в диапазон 0,1...0,25 А т.е. при 12 вольт до 3 ватт
  8. я не смотрел досконально скетч, поэтому на 100% не скажу, скажу на 99%, что можно. придется переопределить пины и таймеры (тут могут быть проблемы с совместимостью у 8 и 16ти разрядных таймеров, в т.ч. и по кол-ву каналов, режиму, частоты и т.п.) в конце концов, кто мешает данную платку подключить шлейфом как надо
  9. уломали а вот одно из упоминаний, на счет граничных значений и эффектов с ними (с чем скорей всего и столкнулся mixzt)
  10. я не спорю, что так может быть, НО в документации об этом молчат. более того, всё говорит об обратном. ну ладно сделали так, хорошо но в любом случае это экстрим. зы: в апноуте по зерокроссу атмеловцы предлагают использовать в качестве ограничительных диодов, встроенные в чип. и типа работает. но опять таки я лично так делать НЕ стал бы.
  11. упс, впервые такое слышу... пойду посмотрю.
  12. а мы вообще об одном говорим? я имел в виду ножку микроконтроллера... если на ней лог.1 (ака Vcc) и ее коротнуть на GND, ни чего ХОРОШЕГО от этой затеи НЕ БУДЕТ... и нет там ничего ограничивающего ток. вот если речь была о выходе драйвера.... но проблема то в контроллере
  13. а чё его ковырять? вот щас глянул... оказывается также и делается, (имхо, только более затратно по ресурсам): if (val == 0) { digitalWrite(pin, LOW); } else if (val == 255) { digitalWrite(pin, HIGH); } else { switch(digitalPinToTimer(pin)) { #if defined(TCCR0A) && defined(COM0A1) case TIMER0A: // connect pwm to pin on timer 0, channel A sbi(TCCR0A, COM0A1); OCR0A = val; // set pwm duty break; #endif ................ и так далее
  14. ну так и пожечь можно , там ведь и лог.1 может быть oala а вообще если пин не отключается от таймера при нуле, то как вариант: сначала сменить режим таймера на простой и проверить как так будет работать. и еще, щас уже не помню, НО вроде и в даташите было сказано про "паразитный" эффект (типа аппаратная схема даже при нуле устанавливает On и сразу сбрасывает в Off), поэтому рекомендуется отключать вывод таймера от пина авр если нуль (с подтяжкой резистором разумеется, я лично всегда использую внешнюю подтяжку, ибо при сбросе контроллера всегда будет что-то неопределенное на входе драйвера) еще короче, я всегда делаю так (и проблем нет): // При выключенном ШИМ, // чтобы убрать короткий паразитный импульс, отключаем pin от схемы // (/\) при OFF, PIN подтянут к GND! // (\/) при OFF, PIN подтянут к VCC! if ( ledB ) { sbi( DDR_MOON_B, PIN_MOON_B ); } else { cbi( DDR_MOON_B, PIN_MOON_B ); } ps: да sbi и cbi (аля асм) в ардуине не что иное как (это всяко лучше, чем жуткие digitalWrite, pinMode и т.п.): #ifndef cbi #define cbi(sfr, bit) (_SFR_BYTE(sfr) &= ~_BV(bit)) #endif #ifndef sbi #define sbi(sfr, bit) (_SFR_BYTE(sfr) |= _BV(bit)) #endif либо использовать это: #define bitRead(value, bit) (((value) >> (bit)) & 0x01) #define bitSet(value, bit) ((value) |= (1UL << (bit))) #define bitClear(value, bit) ((value) &= ~(1UL << (bit))) #define bitWrite(value, bit, bitvalue) (bitvalue ? bitSet(value, bit) : bitClear(value, bit)) зызы: соответственно, если необходимо программно привязать пин к земле, то необходимо немного усложнить и отрубать таймер от ножки, а потом уже можно выставлять на пин что хошь.... (по мне так лучше резистор снаружи....) пример (для прямого (неинверсного) ШИМа): в init: cbi( PORT_PWM_XX, PIN_PWM_XX ); sbi( DDR_PWM_XX, PIN_PWM_XX ); сама функция для 16-ти разрядного таймера (по простому, без изысков, но должно работать): void mysetpwmXXX(unsigned int aLevel) { if ( aLevel ) sbi(TCCR_PWM_XX_A, COM_PWM_XX_1); else cbi(TCCR_PWM_XX_A, COM_PWM_XX_1); TIMER_OCR_PWM_XX = aLevel; } ну а в хеадере ставим что хотим (пример для Т5В и меги 2560||1280): #define TIMER_OCR_PWM_XX OCR5B #define TCCR_PWM_XX_A TCCR5A #define COM_PWM_XX_1 COM5B1 #define PORT_PWM_XX PORTL #define DDR_PWM_XX DDRL #define PIN_PWM_XX 4
  15. ну это совсем не просто, ибо .... ибо и так всем понятно. а вот сделать некую имитацию облаков, имхо, вполне реально. причем с практической точки зрения, это может быть полезно когда живности в акве желательна различная яркость (статичный и частично статичный режим). кстати, а никто не думал о лунной дорожке? типа неяркое синее освещение и последовательно и медленно от одного края к другому плавно включаем и выключаем холодные белые светодиоды (на очень малой мощности). будет эффект какой нить при 60 градусных линзах? есно, это все только радовать глаз (а зачем вообще аквы заводят).
  16. наверное все таки не 8 интервалов, а 4 (раз по 15 минут), да и по скриншотам это получается так. ну допустим (в общем это не так принципиально). другой вопрос: а что происходит с диммированием по каналам в течении этого промежутка времени (15 минут)? стоит на месте или меняется по какому нить алгоритму?
  17. а там что так все жестко запрограммированно?
  18. легко, в меге вообще 70 портов по максимуму выведено (на чипе реально еще больше), есно часть используется под определенные задачи (имеется в виду данный проект). кроме того имеется 16 аналоговых входов (входят в эти 70), а на них можно "повесить" и не по одной кнопке (причем можно сделать схему с одновременным детектированием онных) зы: все упрется в программирование, если с этим у Вас все просто, то проблем не будет
  19. в параллель с резистором на Vcc да с wd есть проблема, причем именно программный даже не применить (вроде как есть сторонние бутлоадеры работающие с ним) если мы говорим об одном и том же, то там кроме часов да десятка резисторов ни чего больше не поставить.... щас гляну что там... ну да: линейка резисторов откуда-то и усё зы: и еще один момент с этой платкой (http://iteadstudio.com/store/index.php?main_page=product_info&cPath=17&products_id=236), если верить фото, то по разъемам ерунда какая-то, смотрите: для основных дают только гребенки "папа", чтоб воткнуть в контроллер, по торцевому наоборот только "мама" и не родное место, и это при том, что ПП платы расчитанна везде на СКВОЗНЫЕ разъемы (с удленненными контактами, таких, кстати я ни где не нашел в продаже), т.е. светху поставить еще что-то стандартное уже не получится.... возможно эта плата заточена именно под тачскрин....
  20. как быстро сработали , пуркуа па но разницы не почувствуете
  21. при беглом просмотре сей дивайс без небольшой переделки НЕ встанет на Мегу, он расчитан на простые ардуины по распиновке. это небольшая проблема, но все же отличия в SPI младшие ардуины: MISO - 12 pin MOSI - 11 pin SCK - 13 pin -SS - 10 pin меги: MISO - 50 pin (PB3) MOSI - 51 pin (PB2) SCK - 52 pin (PB1) -SS - 53 pin (PB0) (тут некоторые производители пошли на хитрость: на всех ардуинах 6-ти пиновый разъем SPI для программирования размещен в одном месте и если шилд идет первым над контроллером в бутерброде, то можно spi сигналы брать прям оттуда, вне зависимости от того какая плата, но "злополучного" -SS там все равно нет) кроме того используются дополнительные -SS пины, для расшаривания девайсов подключенных к ардуине. к примеру, в изернет шилде на SPI сидит и SD кардридер (его -SS - 4 pin), я не один час провел в поисках почему у меня то работает то нет, пока не разобрался что куда и когда подавать. зы: не смотрел, но если тачскрин со своим кардридером также сидят на SPI, то с вайфаем уже будет 3 устройства на одном интерфейсе
  22. диод поставили никакого, просто когда я покупал, то мелкого, готового и доступного на ds1307 (по необъяснимым причинам) не было, взял на таком мелкочипе... проблем нет, есть подозрение, что они совместимы (там еще бонусом маленькое eeprom с 1 млн.циклов... пока без дела), в варианте за 5.5 долларов мне не очень нравится габарит (здоровенная плата и одни часы по сути), НО это исключительно личное
  23. нет, так и не поставили, причем гнаться за 3 ревизией чистокровной и дорогой ардуины (если нет дешевых китайско-российских аналогов), имхо не стоит (то что поменяли чип-мост usb, для 99,99999% пользователей не принципиально вообще, актуально только для тех, кто еще и на эту авр что-то свое ставит). можно купить часы на маленькой платке(и не обязательно на ds1307, к примеру можно найти на MCP794xx), не обязательно такой, только дешевле врятли будет
  24. ну я себе вообще такой блок поставил http://www.ebay.com/itm/New-16-Channel-12V...=item27c1368732 и в принципе почти всем реле нашел работу по поводу макетки со штырьками как прототайп плата, там есть, пускай и маленький, но всеж подводный камень: расстояние между двумя разъемами сделано НЕстандартным. не знаю для чего. может от некого пиратства, другого объяснения этому факту я не нахожу. имхо по деньгам не дороже купить нормальный прототайп (а то и два, прозапас) типа такого http://www.ebay.com/itm/Prototype-Shield-P...=item4164bb236a (бонусом макетка небольшая) и собрать все что надо, для себя
  25. ну для собственного успокоения я бы подключил через токоограничивающий резистор и все (можно пойти дальше и поставить диоды для защиты от перенапряжения ардуины, я так и сделал у себя, НО это уже больше на "шизу" похоже ). кстати, считается что последовательно подключенные резисторы к ножкам контроллеров выполняют не только защитную функцию от КЗ, но и частично улучшают ЭМС. именно поэтому так лучше (для примера, led оптрона): pin - r - led - vcc нежели так: pin - led - r - vcc
×
×
  • Создать...

Политика обработки персональных данных