POV или механическая развертка
Объясните плз алгоритм, как только столбец светодиодов проходит через датчик ловится прерывание - это понятно, а вот далее как начинается развертка, нужно ли просто выводит столбцы с определенным интервалом или же выводить столбцы после каждого прерывания + задержка чтобы он отображался рядом, если так то как ее высчитать?
- Реклама
Считается интервал времени между срабатываниями датчика, этот интервал потом делится на кол-во столбцов. В результате получаем время отображения каждого столбца изображения.
А если этот интервал слишком мал(большая частота вращения), светодиод не успеет загореться - это как ШИМ. Или я не прав?
Насколько большая скорость вращения вашего вентилятора? 1000 об/сек?
Даже на 100 об/сек(100 срабатываний датчика) он может представлять большую опасность для окружающих.
И такие скорости вполне по зубам даже морально устаревшим контроллерам 80-90х годов. Если конечно вы не собрались выводить полноцветные(true color) картинки или изображения фотографического качества. Вот там да, скорость и ШИМ очень будет кстати.
Даже на 100 об/сек(100 срабатываний датчика) он может представлять большую опасность для окружающих.
И такие скорости вполне по зубам даже морально устаревшим контроллерам 80-90х годов. Если конечно вы не собрались выводить полноцветные(true color) картинки или изображения фотографического качества. Вот там да, скорость и ШИМ очень будет кстати.
- Сообщения: 1487
- Зарегистрирован: Вс май 13, 2012 00:01:54
Светодиод не успеет загореться ? Еще как успеет, только успевай зажигать. Там где используется механика, электроника всегда успеет.
Хочу такой вентилятор с картинками. С передачей данных на "крутяшку" по ИК. Сейчас пытаюсь сделать вращающийся трансформатор, чтоб бесконтактно питать систему. По-мне (для меня) - здесь главный заморок.
Хочу такой вентилятор с картинками. С передачей данных на "крутяшку" по ИК. Сейчас пытаюсь сделать вращающийся трансформатор, чтоб бесконтактно питать систему. По-мне (для меня) - здесь главный заморок.
- Реклама
я правильно понял алгоритм. настраиваем таймер сначала по захвату, считаем время между 2 прерываниями от датчика. Далее делим это время на колличество выводимых перманентно столбцов, получаем время паузы между столбцами, перенастраиваем таймер по совпадению в ОС1 заносим значение паузы и внутри обработчика прерывания по совпадению, ловим прерывание от датчика выводим столбец и обнуляем счетчик и так до тех пор пока не выведем все N столбцов. А потом все заново?
Трансформатор я намотал без проблем, на вход поставил диодную шотку с компа, 7805 и 2 кондюка. все довольно стабильно работает. Осталось прогу написать))
Трансформатор я намотал без проблем, на вход поставил диодную шотку с компа, 7805 и 2 кондюка. все довольно стабильно работает. Осталось прогу написать))
Если применительно к атмелу, то я делал так:
TIM1=захват, деление на N столбцов, вывод первого столбца, установка TIM0 TOP, запуск TIM0
TIM0=вывод каждого последующего столбца
Алгоритм учитывал ошибки: захват слишком рано - возможный дребезг датчика, переполнение счётчика - недостаточная скорость вращения вентилятора.
Было в картинках 256 столцов, поэтому деление быстрым сдвигом на 8 разрядов.
TIM1=захват, деление на N столбцов, вывод первого столбца, установка TIM0 TOP, запуск TIM0
TIM0=вывод каждого последующего столбца
Алгоритм учитывал ошибки: захват слишком рано - возможный дребезг датчика, переполнение счётчика - недостаточная скорость вращения вентилятора.
Было в картинках 256 столцов, поэтому деление быстрым сдвигом на 8 разрядов.
Ну приблизительно так я себе это и представлял, я вот только думаю. что для точности отображения не плохо было бы поставить 2 оптодатчика под углом к центру скажем 10 градусов? Но возможно это не понадобится. Для начала я хочу выводить картинку 8 условных пикселей, а длина будет равна длина полукруга/ширину светодиода. А в перспективе сделать знакогенератор в энергонезависимой памяти и реализовать бегущуу строку. Все это собираюсь делать на ATTINY 2313 с внешним кварцом на 8MHZ. в качестве мотора кулер от БП компа. В перспективе хочу Сделать знакоместо на 32 светодиода, и с диаметром около метра, но вместо штанги использовать пластиковый цилиндр, ну а мотор от какого нибудь пылесоса.
По поводу опасности, я не думаю, что это опасно, что может случиться с оптодатчиком?
По поводу опасности, я не думаю, что это опасно, что может случиться с оптодатчиком?
Вместо ТИНИ2313 рекомендую брать что-либо побольше памятью. Все эти картинки, буковки, строки занимают ее довольно много, если не будете делать какой-нибудь интерфейс связи с компом. Однако, это тоже заморочки.
Про два датчика - это скорее лишнее. У меня все работало и вообще без датчиков, даже без мотора. Я тупо рукой за провода крутил плату со светодиодами.
Набаловался и мне стало не интересно.
Про два датчика - это скорее лишнее. У меня все работало и вообще без датчиков, даже без мотора. Я тупо рукой за провода крутил плату со светодиодами.
Набаловался и мне стало не интересно.
Станислав
Думаю не стоит из пушки да по воробьям
, предусмотрю сразу внешнюю память на 24С, там до 128Кб можно на 1 микрухе, а это ого го, с учетом того, что 1 символ занимает максимум 2 байта. Даже томик войны и мира поместится 
Фотодатчику вобщем-то безразлично, а вот разлетевшаяся метровая фиговина на таких оборотах может покалечить зрителей и самого изобретателя. Так что поосторожней там.rxstart1 писал(а):, я не думаю, что это опасно, что может случиться с оптодатчиком?
Вот поэтому вместо штанги я хочу использовать пластиковый цилиндр.


