Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей... |
09.11.2007, 11:01
|
|
Прописка
Регистрация: 03.02.2005
Адрес: между степью и рекой
Сообщений: 163
Сказал спасибо: 10
Сказали Спасибо 81 раз(а) в 42 сообщении(ях)
|
Если уж очень хочется поизвращаться, есть алгоритм Брезенхема. В общем виде он не только отрезки на экране рисует ![Прикольно](images/smilies/icon_wink3.gif) , но и позволяет получать точные значения различных функций используя только целочисленные операции. Для микроконтроллеров -- самое ТО задача!
__________________
Паяю помаленьку...
|
|
|
|
09.11.2007, 11:40
|
|
Почётный гражданин KAZUS.RU
Регистрация: 10.01.2007
Сообщений: 3,412
Сказал спасибо: 65
Сказали Спасибо 664 раз(а) в 443 сообщении(ях)
|
Сообщение от YurkaM
|
Кстати, в AVRках сейчас ШИМ позволяет менять разрядность "одним движением", ... просто на каждое значение яркости надо будет менять два параметра: Tимп и Tшим.
|
Эээ, брат, в том-то и закавыка, что там одновременно пять каналов ШИМ нужно поиметь. Это помимо того, что свободный счетчик/таймер остался всего один.
|
|
|
|
09.11.2007, 11:46
|
|
Почётный гражданин KAZUS.RU
Регистрация: 10.01.2007
Сообщений: 3,412
Сказал спасибо: 65
Сказали Спасибо 664 раз(а) в 443 сообщении(ях)
|
Сообщение от GrayCatt
|
Если уж очень хочется поизвращаться, есть алгоритм Брезенхема. Для микроконтроллеров -- самое ТО задача!
|
То есть, вместо того, чтобы посчитать всё каким-нить экселем, запихнуть всё в табличку и на каждом проходе доставать оттуда готовое, предлагаешь всякий раз заново считать это алгоритмом Брезенхема? Вот уж действительно - поизвращаться... 8O
|
|
|
|
20.04.2008, 23:45
|
|
Прохожий
Регистрация: 08.05.2007
Сообщений: 8
Сказал спасибо: 0
Сказали Спасибо 1 раз в 1 сообщении
|
Товарищ tempora,вы проверили представленные вам алгоритмы? Интересен результат.
|
|
|
|
21.04.2008, 14:16
|
|
Почётный гражданин KAZUS.RU
Регистрация: 10.01.2007
Сообщений: 3,412
Сказал спасибо: 65
Сказали Спасибо 664 раз(а) в 443 сообщении(ях)
|
Сообщение от CoolHammer
|
Товарищ tempora,вы проверили представленные вам алгоритмы? Интересен результат.
|
Результат был довольно прозаический. Когда пришли платы и я спаял первый девайс, оказалось, что светодиод безо всяких ухищрений меняет яркость линейно. Сначала я не понял, что же изменилось-то? Кинулся смотреть макетку, да на ней уже другое было собрано. Но кое-какие деталюхи остались от предыдущего макета и я стал прикидывать по памяти, в чем мог быть фокус. Думаю, что бяка была в том, что в базе ключевого транзистора торчал кондерчик на землю - ну, не заметил я его сразу, он от другого куска оставался, - меня в макетке вовсе не светодиоды интересовали, вот я за этим местом и не проследил, как следует, а он, чертяка, вплоть до некоторой скважности, не давал транзистору закрыться. ![Смешно](images/smilies/icon_lol.gif)
То есть, теоретически все, канешна, были правы - характеристика чувствительности у глаза (снова добавлю - не только у глаза) логарифмическая, ага... но в обычном, повседневном диапазоне освещенностей обнаружить разницу между этим "логарифмом" и прямой на глаз - невозможно. Скажем, на приведенном графике десятичного логарифма [1..100] для x из [32..100] разница составляет всего 0.146% - одна шестая процента! ![Прикольно](images/smilies/icon_wink3.gif)
При этом нужно иметь ввиду, что чувствительность глаза такова, что он способен различать единичные фотоны - уж всяко, диапазон обыкновенных освещенностей занимает небольшую часть такой широкой шкалы. ![Прикольно](images/smilies/icon_wink3.gif)
_______________________________________
Я с самого начала подозревал, что там что-то не так, оттого и просил не начинать "от печки" - теории в таких случаях не помогают, ибо излагаются они "в целом", без учета "мелких, несущественных деталей".
-- Прилагается рисунок: --
|
|
|
|
21.04.2008, 16:03
|
|
Гражданин KAZUS.RU
Регистрация: 13.07.2005
Сообщений: 602
Сказал спасибо: 14
Сказали Спасибо 40 раз(а) в 19 сообщении(ях)
|
А меня устроили табличные значения функции Y=10^(X/106). Светодиод RGB, ключевого транзистора нет, аноды на +5В, катоды через резисторы 430 Ом на выводы МК. Сравнивал и на одном светодиоде. Разница ощутима, особенно на начальном участке горения.
Пришёл к выводу: Если интересует небольшой диапазон изменения яркости светодиода - можно делать линейный ШИМ, если же полный диапазон надо вводить коррекцию.
|
|
|
|
21.04.2008, 16:23
|
|
Почётный гражданин KAZUS.RU
Регистрация: 10.01.2007
Сообщений: 3,412
Сказал спасибо: 65
Сказали Спасибо 664 раз(а) в 443 сообщении(ях)
|
Сообщение от smg123
|
А меня устроили табличные значения функции...
|
Возможно, и меня устроили бы какие-нибудь кривые, если бы не 8-битный ШИМ, напомню - в разных предлагаемых вариантах кривых количество отличных друг от друга значений оказывалось существенно меньше 255. Помнится, в каком-то варианте их оказалось всего 44 штуки! Я решил, что улучшение линейности, которое достается за счет существенной потери плавности, не стоит выделки.
Но при 12-разрядной ШИМ, возможно, это будет оченно-даже недурно.
|
|
|
|
21.04.2008, 16:40
|
|
Почётный гражданин KAZUS.RU
Регистрация: 10.01.2007
Сообщений: 3,412
Сказал спасибо: 65
Сказали Спасибо 664 раз(а) в 443 сообщении(ях)
|
Кстати, смотрел-смотрел на график вверху - там явно в самой середине "линзы" расхождение м-ду прямой и логарифмом - единицы процента. Нашел, где ошибся - в экселе нужно было не MAX(...) а MAX(ABS(...)) брать. Даже для данного случая получилось немного - 3.9%, на глаз врядли заметишь - ну, а уж для обычных-то задач... ![Улыбка](images/smilies/icon_smile.gif)
Но вот, в акустике это уже не так - ДД уха значительно уже, чем ДД глаза.
|
|
|
|
21.04.2008, 17:12
|
|
Гражданин KAZUS.RU
Регистрация: 13.07.2005
Сообщений: 602
Сказал спасибо: 14
Сказали Спасибо 40 раз(а) в 19 сообщении(ях)
|
Сообщение от tempora
|
ДД уха значительно уже, чем ДД глаза
|
Позвольте поинтересоваться - во сколько раз или на сколько дБ?
|
|
|
|
21.04.2008, 17:43
|
|
Почётный гражданин KAZUS.RU
Регистрация: 10.01.2007
Сообщений: 3,412
Сказал спасибо: 65
Сказали Спасибо 664 раз(а) в 443 сообщении(ях)
|
Сообщение от smg123
|
Позвольте поинтересоваться - во сколько раз или на сколько дБ?
|
Ничего, если я сам подсчитывать не буду? ![Смешно](images/smilies/icon_lol.gif)
А оценить (если действительно интересно) можно так - весь ДД уха - 130дБ (для среднестатистического уха), так как 0дБ - это порог слышимости, а 130дБ - болевой порог.
Теперь остается подсчитать количество фотонов в самом сильном свете, который может вынести глаз. Для начала, скорее всего, будет достаточно и более обыденного значения - 1КВт/кв.м. (световой поток в солнечный день); а поскольку на втором конце ДД - единичные фотоны, то остаётся попросту выразить в децибелах полученное число фотонов (делим энергию того потока на энергию одного фотона /постоянную Планка помнишь?/ и приводим к площади сетчатки). В общем, с помощью калькулятора и такой-то матери вполне можно получить оценку.
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Тема |
Автор |
Раздел |
Ответов |
Последнее сообщение |
Делитель из Fast PWM в AVR
|
uk8amk |
Микроконтроллеры, АЦП, память и т.д |
1 |
05.01.2009 15:50 |
Расчет частоты ШИМ (PWM)
|
day177 |
Микроконтроллеры, АЦП, память и т.д |
2 |
02.10.2008 08:53 |
Помогите справится с Альтерой (PWM глючит)
|
kovkaa |
Микроконтроллеры, АЦП, память и т.д |
5 |
17.01.2008 14:03 |
ATtiny25 как запустить PWM от внутреннего умножителя частоты
|
dima777 |
Микроконтроллеры, АЦП, память и т.д |
7 |
25.11.2007 22:56 |
Программирование AVR - Fase Correct PWM Mode и флаг TOV2
|
pinokio3000 |
Микроконтроллеры, АЦП, память и т.д |
2 |
12.07.2005 12:44 |
Часовой пояс GMT +4, время: 23:55.
|
|