Как проверю - так и выложу (набросок выше по теме был).
Пока замечание "по упаковке" - запихнул я вначале линейку и подложку в прозрачную термоусадку... При подаче питания светики дружно все включились белым светить ... а через пяток минут пробую - весьма тепленькие... Пришлось над самими светиками термоусадку убрать - после чего нагрев перестал быть особо ощутим. Следовательно вентиляция таки должна иметь место...
Старый прототип прожки рассчитывался под АВРку с тактированием в 16 МГц (присматривалась трансляция из-под АТтини25/45/85). А куды реально макет установлю... Бум думать/кащеевы яшшички смотреть...
а что У ВАС за индюки ЧЕМ они хороши? кстати BOB51 к вам вапрос LСD 7сегментники 8р от касс, на плате 5104222 273Т0 управление LCD от HT1621b шлейф 6 жил не приходилось примнять? Спойлерочерередные 2 касы 2102 на 80c32 утилизировал http://kassa-apparat.ru/wp-content/uplo ... r2102k.tif (кстати ROM BIOS прикрыта крышкой под пломбой!-нахрена?)-плата по умолчанию выводит календарь без времени....жаль что не все сразу может можно чтото там чуток изменить в выxодной части прошивки... и вышлиб часы -календарь -RTC ds1307 батарея Li3v on board! по сравнению с тем что выходит из микроволновых таймеров -НАПОРЯДОК КРУЧЕ жал БП родной там не применишь-огромный с трансом50гц http://sxemakass.narod.ru/ekr/BP/5.087.222.zip да каса была тип2102ф
Добавлено after 19 minutes 17 seconds: кстати а не пробовал такие дисплеи к котуине приделать? нверно куто былоб-можно какой нить макет измерителя делать
_________________ ZМудрость(Опыт и выдержка) приходит с годами. Все Ваши беды и проблемы, от недостатка знаний. Умный и у дурака научится, а дураку и .. Алберт Ейнштейн не поможет и ВВП не спасет.и МЧС опаздает
А вот насчет раскладки сегментов... Для каждого вида надо предварительно тест делать. По принципу номер позиции в ОЗУ и соответствующий сегмент на самом индикаторе с такой скоростью, чтоб отметку в трафарете сделать можно было. Касательно шлейфа - ищем доку на кассу или высматриваем дорожки от кристалла согласно даташита.
У КОТУИНКи конечно можно такой дисплей приспособить. Только воть дисплей там уже и так есть - консоль терминала в ПК. Зачем излишества?
А вот тест подобного дисплея соорудить - весьма уместное дело!
Обязательным условием долгой и стабильной работы Li-FePO4-аккумуляторов, в том числе и производства EVE Energy, является применение специализированных BMS-микросхем. Литий-железофосфатные АКБ отличаются такими характеристиками, как высокая многократность циклов заряда-разряда, безопасность, возможность быстрой зарядки, устойчивость к буферному режиму работы и приемлемая стоимость. Но для этих АКБ очень важен контроль процесса заряда и разряда для избегания воздействия внешнего зарядного напряжения после достижения 100% заряда. Инженеры КОМПЭЛ подготовили список таких решений от разных производителей.
Воть... Второй заход на "написание учебного проекта" под ардуинку с дисплейчиком... Собственно вывел "лишнее" в отдельный файлик "библиотеки" (но расположено все в одной папке и видится на вкладках редактора IDE).
Компания EVE выпустила новый аккумулятор серии PLM, сочетающий в себе высокую безопасность, длительный срок службы, широкий температурный диапазон и высокую токоотдачу даже при отрицательной температуре.
Эти аккумуляторы поддерживают заряд при температуре от -40/-20°С (сниженным значением тока), безопасны (не воспламеняются и не взрываются) при механическом повреждении (протыкание и сдавливание), устойчивы к вибрации. Они могут применяться как для автотранспорта (трекеры, маячки, сигнализация), так и для промышленных устройств мониторинга, IoT-устройств.
ОБЛОМ... Это насчет переноса знакогенератора в область ПЗУ... Вернее перенос и последующая компиляция проходят без замечаний, но в макете вместо моих цифирек... полный ЧУШШ...
Оставлю на дальнюю перспективу с соответствующими тестами. Ну и более приятны табличные обработчики все же под ассемблером. Второе замечание - константные значения таки жруть ОЗУ аналогично переменным. В ассемблере константа подставляется компилятором непосредственно в команду. Потреблять можно и нужно, но с учетом замечаний. При том, что отстается весьма большая область и за ассемблером.
Так перепроверить у Вас нечем - индикатор весьма специфический. Заготовлю на HT1621B - та вроде почаще попадается... Тогда и повторимость будет возможна...
та же прожка, что и в этом месте viewtopic.php?p=3191541#p3191541 (постом выше) имена папок и файлов одинаковые - отличается только некоторое содержимое относительно знакогенератора: знакогенератор перенесен в ПЗУ, и дополнительно byte заменен на unsigned char ибо в перечнях pgmspace.h byte не упоминается. На макете замена byte на unsigned char при размещении знакогенератора в ОЗУ на работе теста не отражается - индикация соответствует заданию. А вот переброс в ПЗУ при всех остальных неизменных приводит к "выдаче кракозябр".
Еще один вариант тренировочного эксперимента над ардуинкиным скетчем... Поскольку при обработке перед пересылкой данные в буфере портятся (специфика транспортного протокола ИС дисплея) добавился второй буфер. К тому и массив знакогенератора перебрался в месте с ним в отдельный файл. А сам тест - заполнение дисплея справа налево цифирьками-буковками 0-F.
Жаль, что приемы с "массивами в ПЗУ" в этом варианте неудачны... Придется для Сишных прожек немного иной подход применять - специфика "опоры на ОЗУ" и соглашения о неприменении специфики привязки к конкретному семейству(кроссплатформенности)...
как успехи с тестом протокола диспа на холтек ht1821? у вас касовый? если да думаю протокол и разводка должны быть стандартизованы я так и не понял формат посылок протокола обмена апаратное SPI или какоето свое?
Добавлено after 2 minutes 13 seconds: очень жаль что ни имею снифера шины можно былоб пробовать расшифровать протокол сама плата от касы от которой он работает жива
_________________ ZМудрость(Опыт и выдержка) приходит с годами. Все Ваши беды и проблемы, от недостатка знаний. Умный и у дурака научится, а дураку и .. Алберт Ейнштейн не поможет и ВВП не спасет.и МЧС опаздает
Пока ht1821 "было в отлежке" (как и линейка WS2812) - экспериментировал с вариантами для ардуинкина Си дабы немного сообразить в отличиях/приемах работы и правила синтаксиса на начальном уровне. Некоторые нюансы скорее подтверждают мои предположения о необходимости работ как с ассемблером так и с "высокоуровневыми" в соответствии с прикладной задачей, а не с "требованиями моды". Результаты вполне утраивают.
Далее по мере настроения. Базовые устройства для тестов/сравнительных тестов - КОТУИНКО и из ранее заявленных макеток (включая последнюю под 8-лапку для тини13/25/45 и ардуино-нано). У моего подопытного дисплейчика аппаратно установлен режим "только запись" - штука грюстная, ибо нельзя использовать в полном объёме его родное ОЗУ - потребуется выделение буфера в ОЗУ МК, благо там хоть предобработка как у NJU не нужна. Протокол... разновидность синхронного последовательного канала. Поскольку древняя, то с аппаратным SPI может быть не совсем совместима. Остальное по даташиту.
В планах "зависла" еще тема АЦП - как последний из не проработанных на сегодня "стандартных аппаратных блоков" (за невостребованностью)...
Испекся тест для HT1621B на основе КОТУИНКО. Суть теста - проводится вывод в ОЗУ дисплея массива со "скользящей 1" по всем позициям бит ОЗУ последовательно. Одновременно на терминале на 1,5-3 секунды выдается строка с указанием номера активного на данный момент бита в ОЗУ. Далее записываем номер бита у соответствующего сегмента на распечатке трафарета индикатора и анализируем результат. Поскольку в каждом отдельном случае стекла могут быть с различным размещением сегмента относительно конкретного бита ОЗУ. Для проведения теста загружаем в КОТУИНКО файлик u52w.hex и смотрим на табло терминала и на то, что на стекле индикатора отобразится. В самой прожке закоментированы все возможные варианты режима отображения, кроме заявленного в заставке 1/3bias & 3common ... В принципе на моем стекле что 3, что 4 common разницы не дают. Программа теста для уменьшения заморочек выполнена надстройкой к базовому b52b бутлоадеру в режиме 3 - бутлоадер и программа пользователя в ВПД/ВПП. Папка проекта:
На моем экземпляре индикатора раскладка сегментов вот такая получилась: http://img.radiokot.ru/files/20529/1edaogl2lf.JPG вот исходя из того и требуется тест соответствия бит ОЗУ сегментам индикатора...
Решил я нашкрябать тест-прожку для ардуинки-нано и моего экземпляра дисплейчика HT1621B... Аналогично того, что ранее было — беглое смещение ряда цифирек: 0-9,A,b,C,d,E,F на дисплейчике. Соорудил схемку http://img.radiokot.ru/files/20529/1ehtn59s86.GIF нашкрябал прожку...
При том, что к прожке предъявляется существенное ограничение- работать исключительно набором тех директив/функций, которые официально объявлены на этом ресурсе https://www.arduino.cc/en/Reference/HomePage без всяких «аппаратно-зависимых вставок» на ассемблере и/или специализированном Си для отдельного семейства МК.
Весьма нормально цифирки побежали.
ОДНАКО... При попытке оптимизации алгоритма попалась пакостна ОСОБЕННОСТЬ. Измененный вариант функции ht1621::trs_com() (в исходнике закомментирован) привел к работе макета после перезаливки скетча (но без отключения питания перед перезаливкой). Что вызвало преждевременную радость... При том что после отключения питания индикация больше уже не запускалась.
А возвращение к «упрощенному» варианту снимало все непредвиденные «зависания». Понятно, что суть вопроса в увеличении задержек при варианте обработки в цикле относительно «линейного примитива». Но в последней из редакций даташита на HT1621B максимальная длительность полупериода clk оговорена аж в 250 микросекунд... Вобшшем... 1. при работе с внешними устройствами имеющими собственный асинхронный сброс по включении питания надо быть весьма осторожным... 2. Ежли после перезаливки «на ходу» устройство продолжает работу то это еще не означает, что это же усторйство запустится при последующем отключении и новой подаче питания.
в моем варианте платыLCD на Ht1621b бузер не разведен, всего 8 разрядов правда есть лишние сегменты (не входящие в8 типа ),но развели лишню 6 ногу скоре всего это переключение R/W памяти Спойлернашел еще плату слегка коканую плату где ране стоял бузер и диот но его выдрали драли вместе с шлейфом и некоторыми дорожками это принципиално меняет работу с чипом или просто надо ее заземлить и забыть про чтение? ятак понял что если кварц не впаян то он ненужен и работает внутрений такт?без какогото програмирования чипа?
_________________ ZМудрость(Опыт и выдержка) приходит с годами. Все Ваши беды и проблемы, от недостатка знаний. Умный и у дурака научится, а дураку и .. Алберт Ейнштейн не поможет и ВВП не спасет.и МЧС опаздает
Не на "корпус", а на + незадействованная лапка ставится (ежли на ней при подключенном питании нет +... соединяем через 4,7-6,8к резистор). Тут основным указателем являются лапки микросхемы согласно даташита и конкретика разводки платы индикатора. В большинстве "кассовых" используется внутренний генератор. "Обратное чтение" как максимальная опция при желании сэкономить память в ОЗУ МК. Ежли используем буфер видеопамяти сегментов - такое решение избыточно. Найти 10 байт ОЗУ как-то в современных условиях ... и не сильно накладно...
А вот "раскладка" сегментов относительно бит в ОЗУ ИНДИВИДУАЛЬНА для каждого из стекол...
Та прожка для ардуинки, что у меня выше выложена, учитывает данные от теста с КОТУИНКО для моей версии стекла. Для конкретного иного надо поменять раскладку сегментов в файлике sketch_oct11a.h на ту, который у Вас должна быть. В остальном режим "только запись" (примененный в библиотечке ht1621.h и ht1621.cpp) подойдет к любому дисплею. Для изменения режима работы драйвера управления сегментами нужно привести в соответствие с собственным экземпляром значения в строчке 141 файла ht1621.cpp :
УФФ... Наконец таки после недельки осене-сонно-мухового настроения приложил лапы к клавиатуре... Доработал тест планки с 8 светиками WS2812 (по тому теоретическому прототипу протокола загрузки полуторагодичной давности). Вот такая общая схемка макета теста: http://img.radiokot.ru/files/20529/1ezsbgk2t8.GIF Для проверки поставил веселенький хаос-генератор - светики весьма симпатично перемигиваются всеми минимально возможными цветами.
С использованием УАРТ или иного аппаратного (I2C/SPI) уже давненько их применяют. Только там предобработка данных больше времени занимает и выводы МК фиксированы соответственно применяемому аппаратному блоку. Это всего лишь вариант программного решения под ассемблером с практической проверкой того, что раньше тут viewtopic.php?f=2&t=99060&start=80 и в других темах форума теоретически обговаривалось.
Да и соотношение затраты/результат или attiny25/45/85 или навороченный STM32/ARM ДЛЯ ПРОСТЕЙШИХ ПОМИГАЛОК.
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 25
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения