Pull to refresh

Comments 16

Сразу дам тебе подсказку, так как тоже занимался подобными вещами.
1) Таблицу знакогенератора лучше всего формировать через специальное ПО для LCD дисплеев, например:GLCD FontCreator так в дальнейшем проще править алфавит.
2) Лучше сразу работать с юникодом
3) Вывод в К176ИЕ8 сделать через аппаратный SPI
176-я серия фигово работает на 5 вольтах, она вообще рассчитана исключительно на 9 вольт. Тут бы лучше применить 561ИЕ8, которая и является более близким аналогом импортной микросхемы.
И счётчик ИЕ8 — это так называемый счётчик джонсона — не совсем полноценный счетчик а весьма хитрая схема из 5-ти триггеров которая работает своеобразно(зато сэкономили на количестве транзисторов и соответственно площади кристалла). И из-за своей сути обладает неприятными спецэффектами — если его не сбрасывать при подаче питания состояние выходов может быть неадекватным. В какой-то момент времени сигнал может появится на 2-х и более выходах одновременно.
И кстати, пока пишете программу на ардуине медленность переключения счётчика остаётся незаметной, а как только будете выводить данные аппаратно надо будет учитывать ещё и время переключения этого счетчика.
В целом не плохо, но это пока не строка, а чуть больше одного знакоместа, надо подумать как ее удлинить, хотя бы до 50x8.
Можно повернуть на бок, шрифт высотой 8 точек отлично читается, тогда будет 10 точек по горизонтали, а это уже 2 буквы одновременно.
А вообще у автора это курсовой проект, поэтому мне кажется развития не будет.
Все же 5x8 мало (буквы Д, Щ например плохо влезут, еще пиксель на разделитель), надо 6x8, тогда получается 48x8, по 8 символов в строке. Может курсач перерастет в диплом и тогда все получится.
Можно динамическую ширину символа, некоторые по 5 столбцов, другие по 6, 7 и 8. Я так делал в одном из своих проектов. Просто после каждой буквы добавляется пустой столбец для разделения. Получается, что знак "!" занимает в ширину 3 столбца + 1 столбец разделителя, а буква «Щ» — 8 столбцов + столбец разделителя.
Да, это называется пропорциональный шрифт.
Не совсем, пропорциональный шрифт может еще и по высоте изменяться.
Думаю следующим шагом надо заказать у китайцев мешочек SMD светодиодов и сделать длинную строку-часы.
Приятно видеть отечественную микросхему в проекте.

Заметил одну особенность на видео — два крайних левых столбца дублируют зажженые светодиоды зажиганием в пол силы светодиодов над ними. Это баг или фича?
кажется я понял в чем проблема: счетчик не успевает переключиться на следующий выход и первые два бита слоя(строки) выводятся на короткое время не в тот слой, потом счетчик все-таки переключается и остальные биты выводятся сразу в свой слой.
решение

   				digitalWrite(clock,HIGH);
    				delayMicroseconds(5); // нужно поставить хотя бы 7
     				digitalWrite(clock,LOW);
Спасибо за совет, попробую исправить.
если не сложно по результатам отпишитесь, мне интересно
Со ссылочкой на видео. Посмотреть тоже интересно
Хо-хо-хо, светодиодные матрицы это всегда классно) Я в начале года развлекался такими делами — часы до сих пор стоят на столе и показывают время/температуру/влажность. Кстати, 80 отдельных светодиодов вместо готовой светодиодной сборки, но 8*8 — требования курсовика или у вас какие-то личные мотивы?
Sign up to leave a comment.

Articles

Change theme settings