Jump to content
Scinar

LCD TIC55 подключение к AVR

Recommended Posts

Привет всем. Хочу собрать калькулятор на atmega 328p. Но не как не могу запустить LCD TIC55, основанный на сдвиговом регистре с чипом ML1001. Никогда не связывался с подобным дисплеем. Понравился очень экономичным потреблением тока и экономным количеством выводов управления - всего 3. Проблема в тактирование, как написать программу для вывода хотя б одного символа, документации мало нашел, так же есть библиотека для atmel studio 5, сам пользуюсь 7. Библиотку переделал под 7 но дисплей так ничего и не вывел. Подскажите как правильно написать программу, язык значения не имеет хоть assembler или С. Мне надо что б дисплей вывел хоть один символ корректно, дальше разберусь

IMG_20170719_214851.jpg

IMG_20170719_214907.jpg

TIC55 Display Module.pdf

Share this post


Link to post
Share on other sites
8 часов назад, Scinar сказал:

дисплей так ничего и не вывел.

Очевидно, что вы либо неверно его припаяли, либо неверно написали (прикорячили чужую) программу.

Цитата

The display data should be input in the sequence of SEG40, SEG39… SEG2, SEG1 for proper display of data.

Итого - дёргаете лапками данных и тактирования и т.о. вгоняете данные в чип. Сигналом LOAD, надо полагать, фиксируете оные.


Я не раздаю удочки. Я продаю рыбу.

Share this post


Link to post
Share on other sites

Что значит дергаете лапками?, как часто дергать?, нужна ли задержка?, что с начало идет тактирование или данные?. Еще в atmel studio 7 команда nop не работает, заменил на delay, но не знаю сколько должна быть по времени. Мне нужен кусок кода, а не дерганье за лапки 

Share this post


Link to post
Share on other sites

Время – деньги и наноамперы: применение часов реального времени Maxim Integrated

Зачем использовать внешнюю микросхему часов реального времени (RTC), а не внутренние RTC микроконтроллера? Хотя бы потому, что у RTC MAX31342 производства Maxim Integrated типовое потребление составляет 150 нА при 3 В и температуре 25°С, а у встроенных RTC одного из самых малопотребляющих микроконтроллеров при тех же условиях – примерно 370 нА.

Читать статью

3 часа назад, Scinar сказал:

Мне нужен кусок кода

В интернете просто море информации на этот индикатор. Есть даже статьи с исходными кодами.
В чём проблема потратить немного времени на поиск информации и написать "кусок кода, который Вам нужен" ?

А вот на эти все вопросы :

3 часа назад, Scinar сказал:

Что значит дергаете лапками?, как часто дергать?, нужна ли задержка?, что с начало идет тактирование или данные?

Достаточно даташита на чип.

Share this post


Link to post
Share on other sites
                     

Чип-резисторы Panasonic - технология мягких выводов и сертификация AEC-Q200

Технология мягких выводов чип-резисторов производства компании Panasonic. Обзор серий с оптимизированными параметрами: прецизионных тонкопленочных, токоизмерительных, антисерных, резисторов с повышенной стойкостью к статике и импульсным нагрузкам, резисторных сборок.

Читать статью

Что выложить ? То, что гуглится за несколько секунд ?

Share this post


Link to post
Share on other sites

ничего там не гуглится, про какой угодно дисплей но не про этот. Форум для чего нужен, что б всех в гугл посылать?, если б так все просто было, я б не создовал тему

смотрю тут не кто не подскажет, как удалить тему?

Share this post


Link to post
Share on other sites
2 часа назад, Scinar сказал:

Форум для чего нужен, что б всех в гугл посылать?

Но явно не для того, чтобы тут переписывать то, что можно найти в гугле.

Share this post


Link to post
Share on other sites
2 часа назад, Scinar сказал:

ничего там не гуглится

Смотреть надо даташит на контроллер, а не на дисплей.

Правда там не код на ассемблере, а временная диаграмма и описание словами, чуть думать надо, так что можете не читать, надуть губки и удалить тему.

Share this post


Link to post
Share on other sites

Добрый день.

Мне этот дисплей понравился, много где его использовал.

Работать с ним проще простого (код для PICов, но суть та же):

Скрытый текст

 

//переменные для ЖК дисплея
char d1, d2, d3, d4, d5, d6, d7, d8, dots, arrows;

void seg_out(char d) {
char acc;
din = 0;
switch (d) {
case 32 : acc = 0b00000000; break; //пустой сегмент
case 48 : acc = 0b01101111; break; //0
case 49 : acc = 0b00000011; break; //1
case 50 : acc = 0b01110110; break; //2
case 51 : acc = 0b01010111; break; //3
case 52 : acc = 0b00011011; break; //4
case 53 : acc = 0b01011101; break; //5
case 54 : acc = 0b01111101; break; //6
case 55 : acc = 0b00000111; break; //7
case 56 : acc = 0b01111111; break; //8
case 57 : acc = 0b01011111; break; //9
case 59 : acc = 0b00011110; break; //типа градус
case 65 : acc = 0b00111111; break; //A
case 66 : acc = 0b01111111; break; //B
case 67 : acc = 0b01101100; break; //C
case 68 : acc = 0b01101111; break; //D
case 69 : acc = 0b01111100; break; //E
case 70 : acc = 0b00111100; break; //F
case 71 : acc = 0b01101101; break; //G
case 72 : acc = 0b00111011; break; //H
case 73 : acc = 0b00101000; break; //I
case 74 : acc = 0b01100011; break; //J
case 75 : acc = 0b00111011; break; //K - доделать
case 76 : acc = 0b01101000; break; //L
case 77 : acc = 0b00101111; break; //M
case 78 : acc = 0b00110001; break; //N
case 79 : acc = 0b01101111; break; //O
case 80 : acc = 0b00111110; break; //P
case 81 : acc = 0b01101111; break; //Q
case 82 : acc = 0b00111111; break; //R
case 83 : acc = 0b01011101; break; //S
case 84 : acc = 0b01111000; break; //T
case 85 : acc = 0b01101011; break; //U
case 86 : acc = 0b01100001; break; //V
case 87 : acc = 0b01100001; break; //W
case 88 : acc = 0b00111011; break; //X
case 89 : acc = 0b01011011; break; //Y
case 90 : acc = 0b01110110; break; //Z
case 100 : acc = 0b01110011; break; //d
default: acc = 0b00010000; break;       }
//маска X DEGFABC
//     __ A
//   F|  | B
//     -- G
//   E|  |C
//     -- D
if (acc.F0) din = 1; //вывод сегмента С
else din = 0;
dclk = 1;
dclk = 0;
if (acc.F1) din = 1; //вывод сегмента В
else din = 0;
dclk = 1;
dclk = 0;
if (acc.F2) din = 1; //вывод сегмента A
else din = 0;
dclk = 1;
dclk = 0;
if (acc.F3) din = 1; //вывод сегмента F
else din = 0;
dclk = 1;
dclk = 0;
if (acc.F4) din = 1; //вывод сегмента G
else din = 0;
dclk = 1;
dclk = 0;
if (acc.F5) din = 1; //вывод сегмента E
else din = 0;
dclk = 1;
dclk = 0;
if (acc.F6) din = 1; //вывод сегмента D
else din = 0;
dclk = 1;
dclk = 0;}

void tic_out() {

if (dots.F0) din = 1;     //8 символ
else din = 0;
dclk = 1;
dclk = 0;
if (arrows.F0) din = 1;
else din = 0;
dclk = 1;
dclk = 0;
seg_out(d8);

if (dots.F1) din = 1;     //7 символ
else din = 0;
dclk = 1;
dclk = 0;
if (arrows.F1) din = 1;
else din = 0;
dclk = 1;
dclk = 0;
seg_out(d7);

if (dots.F2) din = 1;     //6 символ
else din = 0;
dclk = 1;
dclk = 0;
if (arrows.F2) din = 1;
else din = 0;
dclk = 1;
dclk = 0;
seg_out(d6);

if (dots.F3) din = 1;     //5 символ
else din = 0;
dclk = 1;
dclk = 0;
if (arrows.F3) din = 1;
else din = 0;
dclk = 1;
dclk = 0;
seg_out(d5);

if (dots.F4) din = 1;     //4 символ
else din = 0;
dclk = 1;
dclk = 0;
if (arrows.F4) din = 1;
else din = 0;
dclk = 1;
dclk = 0;
seg_out(d4);

if (dots.F5) din = 1;     //3 символ
else din = 0;
dclk = 1;
dclk = 0;
if (arrows.F5) din = 1;
else din = 0;
dclk = 1;
dclk = 0;
seg_out(d3);

if (dots.F6) din = 1;     //2 символ
else din = 0;
dclk = 1;
dclk = 0;
if (arrows.F6) din = 1;
else din = 0;
dclk = 1;
dclk = 0;
seg_out(d2);

if (dots.F7) din = 1;     //1 символ
else din = 0;
dclk = 1;
dclk = 0;
if (arrows.F7) din = 1;
else din = 0;
dclk = 1;
dclk = 0;
seg_out(d1);

load = 1;
load = 0;}

 

 

Edited by Borodach

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...

  • Сообщения

    • Приветствую всех! Хочу сделать хороший измеритель глубины на Ардуино. Покупные стоят дорого.  В Интернете не могу найти ни схемы, ни тип датчика, использующиеся для Ардуино. Может кто такое встречал!  Заранее спасибо за ответ. Буду рад каждой ссылке и любой свежей мысли!
    • Приветствую всех! Столкнулся с проблемой ,в камере есть только выход HDMI, нужно какое то устройство, со входом HDMI и раздачей видео по Bluetooth или Wi Fi на смартфон. Может кто то сталкивался, есть такие в продаже устройства, как они называются? Может есть ссылка на такой. Заранее огромное спасибо за ответ.
    • а что еще осталось сделать? Говори ....
    • что хочется сделать.... по теме Тимвала сварочник на 1 транзисторе....   сделать блок питания на ETD39 или 49 .... такие есть сердечники...сделал все шикарно работало..но в один момент при подключении лампы  24 вольта 100 ват..... вылет транзистора...причем 10 раз нормально......... а тут ......никогда не было  и вот опять...опять же трансформатор етд39...если он работает как дроссель...(как влияет... выход на вход)так получается его без нагрузки не включать...запутался я тут..кто что пишет ......... по напряжению стоят супрессоры..вылет по току(единственно что изменил резистор на 100кОМ)..расчет Старичковый..размагничевание есть..судя по осцилограмме работат ..запутался короче   ЭКСПЕРИМЕНТЫ С транзисторами от 900 вольт..на 600 это уже смотрю в сторону "касога моста" жалко их палить... такие красивые   как медик добавлю...... пейте кампоты...из яблок... кураги ...овса ...кукурузы  ..осина кора.......ни когда и ни как вы не вылечите вирус.... его надо МЫТЬ......так нас учили ..не малышевы и мясниковы....... а реальные Старички     ixys ixgh48n60c3 без диода gw39c60vd fga25n120 gp14nc60kp  интересный малыш..заявленный как с зашитой от кз мосфеты..w9nk90z// 840 ну эт не интересно
    • Короче, нашёл мосфет на одном из блоков питания с разборки, ещё раз купил Lm'ку. Заменил, теперь вентилятор пашет. Спасибо, что помогли определить микросхему, дальше сам как-нибудь разберусь
    • Моё мнение, что звук в роликах наложен. Я знаю, как звучат эти динамики.
  • Similar Content

    • By Владислав Семёнов
      Доброго дня!
      Много дней бьюсь со схемой, разводил сам, делаю автополивалку на ESP32 для комнатных растений.
      Суть загвоздки. Без нагрузки всё работает идеально, регистры переключаются, всё короче чудно. Но как только подключаешь хотя бы один движок - всё, финита. В момент запуска открытый(т.е. низкий. Т.к. транзы P-канальные, низкий уровень=открытый транзистор. Буду далее называть низкий уровень на регистре открытым) разряд регистра закрывается, при этом может самопроизвольно открыться более высокий разряд(а может самый низкий. Или даже возможно ещё какой, не ловил - не знаю). При этом программа на МК продолжает исполняться штатно. Если принудительно постоянно писать в регистр нужное состояние, движки кое-как крутят, но это лютый костыль и вообще не дело. На картинке уже вторая итерация платы, в ней добавлено раздельное питание для силовой и логической части. Т.е. регистр потребляет свои +5В, а исток транзисторов подключён к своим +5. Это вроде как решает проблему, но ровно до того момента, пока я не подключаю питание датчика (датчик влажности почвы, простой, резистивный, питание на все датчики разом открывает ещё один транзистор, подключенный к 0-му разряду регистра) - после этого схема снова начинает чудить. Перебросил питание датчиков с 3.3 на +5(придётся городить делитель для сигнальной линии, но пусть так, чёрт с ним), чудеса более-менее прекращаются. Но всё равно, нет-нет да откроется ненужный разряд. Чую, что где-то порылся какой-то косяк, но найти его не могу.
       


    • By Mag Dan
      Всем здоровья!
      Направьте пожалуйста куда копать дальше ,ситуация следующая тв " витязь 32 LCD 821-5DC ".
      Матрица T315XW03 V.3
      БП MEGMEET MP116A REV 1.0
      Мат плата cv308h-d-10 
      Инвертор T731041.03 HF
      MP116 NCP1606_L6599_OB2263_AP4407M.pdf
      Тв моргает после включения,у бп на выходе 24в 12в и 5 в.На 12 в момент моргания напряжение скачет по 11,8 до 3 , на 24  до нуля. 5в  стабильные, если отключить шлейф инвертора напряжение нормализуется по (11,8). 24,2 . 5,1 и тв работает стабильно не выключается подсвечивал фонарем. 
      поменял электролиты на инверторе были 270uf 35v поставил 330uf 35v (нужных в магазине не было)так же отпаял и проверил мосфеты D4184 все показывают одинаковое значение (сверял с новым из магазина).На бп поменял все электролиты и керамические конденсаторы выпаивал проверял диоды в одну сторону передают в другую нет, esr метра нету ,есть ещё вариант купить бп на авито в моем городе есть такой,но не хочу выкинуть деньги на ветер если вдруг проблема не в нем.
      за колхоз извиняюсь) опыта в электронике не много только учусь буду рад советам с годным контентом по диагностике)

      13 мая 2020 г. (1).mp4



    • By RIMUS1989i
      Здравствуйте. Затеялся собрать анализатор спектра на светодиодах, 20x20 светодиодов, МК ATMEGA328P. 
      Долго ломал голову, как переключать столбцы без использования МК, дабы его не загружать.И вот что у меня получилось. Набросал тестовую прошивку для теста в протеусе. 
      При инилизации подается импульс на вторую ножку U4a, и на предпоследнем столбце.
      Думал сетку сделать на 5 сдвиговых регистрах (как раз 40 сигнальных линий), но боюсь мощности МК не хватит для обработки FFT и вывода на матрицу, будет подвисать.
      Кто что думает по поводу схемы?
      бегущая строка.pdsprj Natali_2012_program.hex
    • By Arvalon
      Буквы плохо читаются, что-то вроде XYD -BQFGQ-XXD-18AB-20190320. Поиск по сети не ответов не дал.


    • By artos5
      Добрый день уважаемые! У кого есть схема подключения дисплея такого и библиотека ? Очень надо!
×
×
  • Create New...