Вопросы новичка

Тема в разделе "Arduino & Shields", создана пользователем ДеКодер, 15 дек 2018.

  1. timon

    timon Гик

    Я не знаю, как вы посчитали, но исходя из расчета того, что: каждая точка на экране кодируется одним битом - мы имеем 40 байт в строке и 240 подобных строк (всего 9600 байт на точки), плюс 40х30 цветных знакомест (под 8х8рх шрифт) кодируемых одним байтом, где три первых бита (111 - цвет точки), три вторых (111 - цвет фона), последние два (1 - повышенная яркость для точки, 1 - повышенная яркость для фона). Это дополнительно 1200 байт и 16 цветов на знакоместо. Всего, таким образом мы имеем массив из 10800 байт, позволяющий произвольно отображать на экране все что вздумается в любой момент времени, как угодно скроллить (целиком, кусками), отображать в произвольных координатах произвольные данные.
    Я считал так: 16MHz разделил на 10800 байт и еще раз разделил на 3 такта (ну какой нибудь дурацкий цикл попиксельного скроллинга всего экрана влево, учитывая то, что 99% команд выполняются за 1 такт). Получилось около 500фпс )) Не, вот тут я даже сам себе не верю! ))
     
    ДеКодер нравится это.
  2. 16 цветов одним битом? Фантастика!
     
  3. timon

    timon Гик

    Нет (
    Я возможно был не очень точен в формулировке ))
    Цвет точки (16 цветов) и цвет фона (16 цветов) кодируется одним байтом сразу для массива из 64 точек (8х8 пикселов). В одном таком квадрате может быть только два цвета - цвет точки и цвет фона, третий цвет туда добавить нельзя. Да и не нужно, с моей точки зрения.
    Код (Text):
    -- точки --
    00000000 - байт на экране отвечающий за 8 точек
    00111100 - тут 3-6 биты это включенные точки
    01000010 - тут включены 2 и 7 точка
    01111110 - включенные точки красятся цветом точки
    01000010 - а выключенные (нули) цветом фона
    00000000 - все просто )

    -- цвета --
    11100010 - ярко-белая точка на черном фоне,
               этим байтом кодируется сразу 64 пиксела на экране
     
    parovoZZ нравится это.
  4. DetSimen

    DetSimen Guest

  5. b707

    b707 Гуру

    вы когда спроектируете свой дисплей - тогда и будете рассказывать о кодировании 64 точек одним байтом :)
    А пока приходится работать с тем. что есть - на том экране. что у вас на картинке - 2 байта цвета НА КАЖДЫЙ ПИКСЕЛЬ. Путем несложных вычислений можно прикинуть, что размер одного кадра для такого диспа - порядка 150к, а вовсе не 10к, как в ваших фантазиях
    А что касается того, что у вас получился "телетайп" - так это у кого-то руки прямые, а кого-то нет :) Как верно указал дядяВитя - 4-5 FPS для этого экрана получатся должно - так что разбирайтесь с кодом
     
  6. Человек просто застрял в прошлом немного, и "графений" для него это дисплей спектрума, или еще чего такого, где вместо полноценной попиксельной отрисовки использовали всякие костыли.
     
  7. timon

    timon Гик

    b707, дядя Витя, да ладно вам, руки кривые, фантазии, речь разве об этом?

    Я как раз о том, что 2 байта на каждый пиксель при 4-5 фпс, да в гробу я видел такие «экраны», в белых тапках )) Чо сразу не три? )) Куча экранов (обычно ч/б) прекрасно до сих пор работает по битовой маске и никто не парится, что застрял в прошлом ))

    Я привел пример быстрого, относительно большого экрана, управляемого с проца напрямую. Это удобно и дешево. И да, это придумано давно.

    В итоге я вывожу то что мне надо и с нормальной скоростью (в том числе «волну» которую мне даже программить не нужно), за что спасибо инженерам КНР )) Но например отскроллить экран на срочку вверх без извращений тут не получится )) ну не заводить же 15 текстовых объектов-строк (для 40х15 текстового терминальчика) в самом деле ))) это же клиника, не?
     
    ДеКодер и parovoZZ нравится это.
  8. Airbus

    Airbus Радиохулиган Модератор

    А спор то о чем?
     
  9. timon

    timon Гик

    )) спора нет, я как новичок, открыв для себя ардуинку - малость оо.. удивился ))
     
  10. parovoZZ

    parovoZZ Гуру

    чему?
     
  11. b707

    b707 Гуру

    типичная реакция старпера, последний раз программировавшего во времена Z80 и с тех пор "не бравшего в руки шашек" :)
    таких на форум приходит по несколько в месяц... кто обижается. что его не принимают в серьез - уходит. Кто в состоянии еще чему-то учиться - остаются...
     
    timon нравится это.
  12. timon

    timon Гик

    Легкости вхождения в тему, благодаря куче материалов для почитать, куче примеров на все случаи жизни. Поразился огромной куче железяк на любой вкус и бюджет. Я уж было паяльник наточил, макетку пропылесосил, ан нет, не потребовались пока что ))

    И в то же время убило осознание того, что как хочешь но выкручивайся в 2кб озу. Мне прям зудит... 64К озу наверное дорого очень? Страничная переключалка озу сильно сложна? ))) Так и не врубился в логику почему у них такая полумера в реализации памяти получилась. Да, конечно можно и калинку-малинку, но душа к ней не лежит. Лежала бы - ее бы и взял. СТМ-ка, мега, дуо, выбрал в итоге леонардо и доволен весьма, ребят. Весьма ))
     
  13. b707

    b707 Гуру

    вы бы поделились, что вы такое собираете...
    Если брать типичные поделки ардуино, типа таймеров, термостатов. умных теплиц и тп - 2 Кб за глаза., у меня чаще и до 500 байт не доходит.
    Вот собрал, для примера, "умную форточку" - в зависимости от температуры открывает закрывает шаговым мотором и еще и отсылает свое состояние по радио - получилось 1700 байт кода и 126 байт ОЗУ. И куда в подобных задачах девать 2Кб? - я под такие, наоборот, беру контроллеры с маленькой памятью
     
    parovoZZ нравится это.
  14. timon

    timon Гик

    Собрались тут с младшей сделать WALL•E ))
    7B7D97A5-9789-4389-9D91-B63E0EC9A74F.jpeg
    Прикинул по железякам, все что надо есть и не дорого, корпус начерчу за недельку под 3d печать.

    Условием интересности проекта является оценка пространства и выстраивание карты местности через У/З дальномер и гироскоп, прием команд через датчик шума, пищалка и небольшой ч/б экран для всякой информации. Вот на оценке пространства я чот задумался, с дискретностью 10х10 см в 2 кб никак даже в битовом представлении, попытки разрубить все на ноды с подгрузкой с sd карты пока оставил )))

    Собрал сигналку пока что (гироскоп, датчик шума, 868 рк в клиенте и экран, пищалка, 868 рк на сервере). С нуля (мануалы ранее читал конечно), вечерами, за неделю ) тут да, памяти не надо, все помещается прекрасно.
     
    b707 и HEtort нравится это.
  15. Airbus

    Airbus Радиохулиган Модератор

    Папа в деццтве не наигрался.
     
  16. timon

    timon Гик

    Мда...
     
  17. b707

    b707 Гуру

    судя по увлечению Z80- скорее дедушка. А "младшая" - внучка :)
     
  18. KindMan

    KindMan Гуру

    А я вот всегда стараюсь ребенку что-то добавить электронного в поделку для сада/школы, хоть пару светодиодов, а деткам нравиться.
     
    timon нравится это.
  19. Airbus

    Airbus Радиохулиган Модератор

    А я не пытался.Хотел чтоб сын стал радиолюбителем и пилотом а он стал стилистом визажистом.Хотел чтоб дочка стала переводчиком а она стала Адвокатом.Так вот.А Баян что мои родители подарили сыну он торжественно сжег.Ардуино тогда еще не изобрели
     
    timon, b707 и KindMan нравится это.
  20. b707

    b707 Гуру

    я тоже никогда детям никаких светодиодиков не делал, потому что еще 2 года назад сам не знал, что это такое :) А сейчас обе уже взрослые и показывать светодиодики я смогу теперь только внукам - если их мамы разрешат :)
     
    timon нравится это.