Форум очень выручает. Факт.
Много информации в интернете, но тут все обычным языком ясно и понятно.
Всем жму руку, угощаю чаем и печеньками шоколадными.
[uquote="evgeniu911",url="/forum/viewtopic.php?p=4135823#p4135823"]Форум очень выручает.[/uquote]
Задавать вопросы имеет смысл лишь тогда, когда сам процентов на СЕМЬДЕСЯТ уже в теме. Иначе объяснения в одно ухо влетят, а из другого вылетят.
Вы просто не понимаете язык объяснений...
Так что вы хотите познать про магнитное поле, о чем нельзя прочесть в обычном школьном учебнике физики, либо при любознательном характере в учебнике по электродинамике?
[uquote="mickbell",url="/forum/viewtopic.php?p=4135990#p4135990"]Таки Рихман. Ломоносову повезло.[/uquote]
Таки-да. просто щас мода на *манов звиняюсь
Добавлено after 14 minutes 22 seconds:
[uquote="Hand-Maker",url="/forum/viewtopic.php?p=4136290#p4136290"]что ты хочешь получить или узнать?[/uquote]
бесперспективность своего обучения
Кстати, очень интересует, какое направление науки вскорости получит такого высококлассного специалиста?
Шекспир сказал: Судить меня -дано лишь Богу, другим я укажу дорогу... https://natribu.org/
Я его полностью поддерживаю.
Программирую на Fuse AtmelAVR.
Решил проблему с засветами. Дело было в коде, а именно в следующем.
Изначально у меня было так:
1. выключение предыдущей строки
2. включение новой строки
3. выключение светодиодов предыдущей строки
4. включение светодиодов новой строки
Между 2 и 3 возникал засвет светодиодов от предыдущей строки. Теперь так
1. выключение предыдущей строки
2. выключение светодиодов предыдущей строки
3. включение светодиодов новой строки
4. включение новой строки
3 и 4 в первом примере у меня вызывались через функцию, поэтому, наверное, запутался.
Теперь микро-засветы возникают только на частоте разверстки 8Мгц, когда число для совпадения и делитель таймера не установлены. Это, скорее всего, происходит как-раз из-за насыщения транзистора, о чем тут кто-то писал.
Патамуха, ничерта не понятно... Если интермодуляционные искажения это комбинационные частоты тогда 7+11=18 и 11-7=4 мы должны смотреть стартово эти две частоты 4 и 18...
Тогда какова чорта самыми страшными считаются вторая и третья гармоники 14, 21 и 22, 33!? При чём гармоники а не комбинационные частоты!?
Lotzy,
во втором варианте тоже возникает засветка только она более короткая и посему менее заметная
правильнее гасить светодиоды на время переключения развертки:
1. гасим разряды светодиодов (неактивнй 0 (или ff) в весь порт)
2. переключаем развертку (новое положение бита или новая комбинация для декодера развертки)
3. засвечиваем разряды светодиодов (новая комбинация в порт)
или
1. гасим развертку (неактивные 0 (или ff) на всех существующих разрядах или пустая комбинация для декодера развертки если применяется декодер)
2. новая комбинация в порт светодиодов
3. активируем очередную комбинацию для развертки.
Последний раз редактировалось AlexS4 Пн дек 06, 2021 20:48:37, всего редактировалось 1 раз.
AlexS4, понял. Просто с точки зрения кода это немного некрасиво выйдет. У меня сейчас так. Это из функции разверстки. Аргумент в led_on_line - номер строки.
Кстати, а почему во втором варианте возникает засветка?
Lotzy, сори это я ошибся, 2й вроде ок если переключения происходят когда ничего не может светиться.
И да, конечно, превращать код в бред-колхоз в попытке добиться качества работы это странно, надо просто подумать как грамотно разбить алгоритм на процедуры, так чтоб было удобно писать остальное и например чтоб прерывания не могли повлиять на яркость ну итп.
AlexS4, вы были правы. Если делать наоборот, то есть
1. Гасим разряды
2. Гасим строку
3. Включаем строку
4. Включаем разряды
засветов даже на 8Мгц нет свосем! Но и я не ошибся: если делать как в моем втором варианте засветка происходит из-за того, что транзисторы, управляющие светодиодами предыдущей строки (2), не успевают выключится и накладываются на включение новой строки (3). В приведенном выше варианте такой проблемы нет, поскольку наложение 2 и 3 (а равно как 1 и 2, 2 и 3) не могут вызвать работу светодиодов.
Вспомнил про команду asm ("nop"). 16 команд между 2 и 3 пунктом моего варианта решили проблему. Чем чревато использование asm ("nop") в таких количествах?
Последний раз редактировалось Lotzy Пн дек 06, 2021 23:29:30, всего редактировалось 1 раз.