Сфоткайте Посмотрел на али - все с замазанными логотипами. Может быть внутри нет кристалла.
Добавлено after 2 minutes 30 seconds: Из отзывов:
Дополненные отзывы Не покупайте. Обещается маркировка AU на конце. Мне пришли из 10шт - 7 с маркировкой ATmega328PU-PH, 2 с маркировкой ATmega328PU-AU и 1 с маркировкой ATmega328PU-TW. PH не прошиваются. Деньги коту под хвост.
Поделитесь пожалуйста опытом, какая должна быть частота динамической индикации , чтобы можно было организовать режим плавной смены цифр (эффект наложения) ?
Лучше делать частоту не меньше 250 Гц. Не знаю, как на ИН, а на светодиодах 128 Гц отчётливо мелькает, особенно если не смотреть прямо на часы, а быстро провести взглядом мимо них.
_________________ Иногда мой питомец уходит в такую спячку, что разбудить его можно только щелчком по первой ноге...
лампы 6 штучек ИН18 , применил 155ид1 - 2 штучки . получилось две динамические индикации 2x3 . Для эффекта " плавного наложения цифр" применил 1 милисекунду на анод, полный период 3 x1 =3 мс (333 Гц) . 120 Гц маловато смена цифры старой на текущию у меня происходит за 300 мс и 30 циклов - от длительного просмотра в глазах почувствовал усталость, скорее все неправильно
120Гц полный цикл, 4 лампы => 480Гц смена разряда. Но каждый разряд у меня отображается 16 раз, поэтому частота загрузки данных в регистры 7680 Гц. 16 раз - это 16 градаций яркости для исчезающего и появляющегося символа. У меня всё это делается в ОЗУ, так как из ОЗУ в порты вывод идёт через DMA без нагрузки на процессор. Как-то так...
_________________ А люди посмотрят и скажут: "Собаки летят. Вот и осень."
Заголовок сообщения: Re: Часы на газоразрядных индикаторах
Добавлено: Вт авг 04, 2020 16:55:29
Друг Кота
Карма: 46
Рейтинг сообщений: 977
Зарегистрирован: Ср май 28, 2008 00:32:54 Сообщений: 7615 Откуда: г. Россия
Рейтинг сообщения:0
Лучше доработай - поставь по катодам 12 транзисторы с резисторами, новую прошивку и стабилитрон поставь на 62в. http://moemesto.ru/SLvik/file/15152766/ ... %20inv.rar Цифры будут намного чётче. Если конечно делать будешь.
Лучше доработай - поставь по катодам 12 транзисторы с резисторами, новую прошивку и стабилитрон поставь на 62в. http://moemesto.ru/SLvik/file/15152766/ ... %20inv.rar Цифры будут намного чётче. Если конечно делать будешь.
Если ответ был мне, то доработать не могу. Руки кривые. А вот спаять готовое всегда могу.
120Гц полный цикл, 4 лампы => 480Гц смена разряда. Но каждый разряд у меня отображается 16 раз, поэтому частота загрузки данных в регистры 7680 Гц. 16 раз - это 16 градаций яркости для исчезающего и появляющегося символа. У меня всё это делается в ОЗУ, так как из ОЗУ в порты вывод идёт через DMA без нагрузки на процессор. Как-то так...
Кодом не поделитесь? Или хотя бы алгоритмом, можно в личку. Я взял за основу плату от @mss_ja (6 ИН-18 в две группы по 3 индикатора) и пытаюсь на малинке (Pi 3B+) её поднять. Если использовать только вкл/выкл анодов, то ещё более/менее получается ~3 ms индикатор включен, ~6 ms выключен. Но так нельзя регулировать яркость, надо ШИМ. Но с ШИМ мерцает вообще жесть. Или малинка не годится для этих целей и я зря теряю время?
Fred1, вы бы хоть рассказали, как сами делаете и откуда ваши цифры берутся. Чтобы было от чего оттолкнуться. Что-то у вас очень долго все, в миллисекундах. Так просто адски мерцать будет и без шима.
Кода мне не жалко, да вот только толку с него? Эта штука реализована была в этих часах и там во всю используются аппаратные возможности микроконтроллера stm32f103, который налеплен на "синей таблетке". Да и что там исходник - надо выкладывать тогда уж весь проект, так как часть сделана в CubeMX (для USB интерфейса - я сам с нуля такое написать еще/уже не могу). Но он не закончен. Я как застрял с командным интерфейсом так меня там и заклинило. Хотя сейчас у меня есть сделан (для роботов) командный интерфейс по типу Форт-интерпретатора и я мог бы его быстро приспособить, завершить этот проект и опубликовать. Но, надо еще продумать словарь фортовских слов, чтобы с часами было удобно работать. На роботах я уже добавил кучу команда, которые я почувствовал, что они мне пригодятся.
Кхе... начал искать исходники и мне показалось, что я их потерял. Но нет - нашел на нетбуке. Вот только выложить... проект занимает 93 мегабайта.
Поэтому, попробую объяснить просто словами. Формально у меня делается отображение не 4 знаков, а 64. Просто у каждой группы из 16 знаков сигнал выбора анода лампы одинаковый. И если сигнал выбора катода в этой группе тоже одинаковый, получается, что всё это время горит одна цифра, как в простой обычной динамике. Если же в одном знаке (из тех 16) я меняю сигнал выбора катода, то получится, что 1/16 времени у меня будет гореть одна цифра, а 15/16 - другая. Ясно что яркость второй цифры будет больше, чем первой. Через некоторе время будет подменена вторая из тех 16 и пропорция изменится до тех пор, пока новая цифра не вытеснит из массива старую и не займёт все 16 ячеек. Тогда будет гореть только новая цифра.
Теоретически, этот фокус можно провернуть и в обычной системе, где динамика делается через прерывания, но, боюсь, что накладные расходы на обслуживание прерывания (вход, сохранение контекста .. восстановление контекста и выход) могут не позволить так часто делать прерывания. При прямом доступе к памяти, конечно, процессор тоже подтормаживается, но только на время занятости шины чтобы передать одно 32-х битное значение в регистр и всё. Т.е. можно считать, что практически временных ресурсов не ест.
Можно ли на Raspberri это сделать - я не знаю. Я максимум, что сумел поставить распбиан на него, глянуть на этот типа линукс и всё. А, еще был поставивши андроид - ну и тормозила! Но, если вы пытаетесь сделать на питоне под распбианом - думаю у вас ничего не получится. Надо лезть более глубоко в аппаратные дела процессора. Но под линуксом - линукс юзерлэнду это не позволит. Так что работать нужно будет на уровне драйверов... Или используя какой из стандартных интерфейсов, например, i2c - подключить что-нибудь аппаратное, что будет шустро выполнять глобальные команды.
Вложения:
Комментарий к файлу: Отображение. Transition type 1 - перебор цифр, 2 - плавная смена цифр. 0 и 3 - просто отображение без эффектов. nixie_display.zip [2.69 KiB]
Скачиваний: 206
_________________ А люди посмотрят и скажут: "Собаки летят. Вот и осень."
uldemir, у @mss_ja изначально и построено на stm32... но мы же лёгких путей не ищем, надо малину в дело пустить, а то чего она валяется-то. Но так и есть, слишком большие накладные расходы на малиновый ШИМ. А аппаратных там всего два канала. Так что вы опять правы, надо будет ставить что-то типа pca9685 и по i2c им рулить. Надеюсь проц будет успевать отправлять команды. Спасибо большое вам за алгоритм и мысли. Пойду думать над своим поведением. ps. питон - фу, бяка, это не для нас. Только pure C!
Шина i2c слишком медленная, а pcaXXXX слишком тупая(мне кажется. я подобную использовал для подключения кнопок к роботу, когда портов стало не хватать), так что ногодрыг снова не получится. Я бы сделал отображение на простеньком микроконтроллере в который малинка по i2c или UART засылала бы инфу, что и как отображать. С другой стороны, а как малинка будет хранить время, например, при отсутствии электричества в доме? Да даже если и оно не пропадает, то, например, надо перенести в другую комнату или переткнуть в другую розетку?
_________________ А люди посмотрят и скажут: "Собаки летят. Вот и осень."
uldemir, хм... у малины в даташите вот так: "The Broadcom Serial Control (BSC) controller is a master, fast-mode (400Kb/s) BSC controller. The Broadcom Serial Control bus is a proprietary bus compliant with the Philips® I2C bus/interface version 2.1 January 2000." У pca9685 и вовсе 1 мГц максимально. Вроде должно хватить... Впрочем, зависит от кол-ва передаваемой информации. Надо разбираться.
По другому вопросу - малина не будет хранить время, у неё там интернет есть и ntpd.
Fred1, у тебя так ничего не выйдет в принципе. Ты вообще в курсе, как ведро планирует потоки? Что там у твоего распбиана в /proc/sys/kernel/sched_min_granularity_ns написано? Прочти и ужаснись, если еще не. Это целая вечность в контексте твоей задачи. Оно тебе просто не позволит успевать так бегать по циферкам, как ты хочешь, даже если бы I2C это и позволяла делать. Да и, в конце концов, ты больше вообще ничего делать этой малиной не собираешься? Тебе ведь еще минимум сеть нужна. Я уж не говорю, что, перебирая лампы по GPIO напрямую, ты лишаешься интерфейсов, которые разведены на эти пины. На малинкин DMA можешь не смотреть - там реквестов по таймеру не предусмотрено. Кстати, если у тебя ИН-18, тебе и питать малину желательно бы от часовой платы, наверное, а не наоборот.
Так что остается только в ведре ковыряться модулями, больше вариантов не видно, если ты все же не хочешь периферийный контроллер ставить. Хотя у отдельного контроллера плюсов масса - и пины свободны, и время малинки, и еще можно на нем же сделать RTC для самой малины (тоже через ведро, но это должно быть уже проще, можно за основу взять существующий драйвер для ds1307). С другой стороны, с таким контроллером задача вообще вырождается в элементарщину, так можно вообще любые часы по I2C к малине подключить и просто сказать, что у тебя часы на малине.
Сейчас этот форум просматривают: Majestic-12 [Bot] и гости: 227
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения