Уважаемые посетители! Форум CQHAM.RU существует исключительно за счет показа рекламы. Мы будем благодарны, если Вы не будете блокировать рекламу на нашем Форуме. Просим внести cqham.ru в список исключений для Вашего блокировщика рекламы.
Страница 2 из 2 ПерваяПервая 12
Показано с 11 по 12 из 12

Тема: Градусник на ds18s20

  1. #11

    Регистрация
    14.06.2018
    Адрес
    Санкт-Петербург
    Сообщений
    529
    Мысли переключились на пиксели. У ssd1306 ведь минимальный объект позицирования это байт. Тогда да, нужно сначала в регистрах или оперативной памяти подготовить растянутый глиф фонта и затем выводить дважды. Сейчас проверил вышеупомянутый алгоритм "растягивания" одного байта на avr-gcc и сравнил с "обычным".

    Новый:
    35 команд / 47 тактов

    Обычный:
    20 команд / 105 тактов

    Когда есть место на флэше, лучше "новый" алгоритм
    Когда не хватает 10-15 байт, то может спасти "обычный".
    Для аттини13 актуально.


  2. #12

    Регистрация
    14.06.2018
    Адрес
    Санкт-Петербург
    Сообщений
    529
    Забыл проверить решение "в лоб" на ассемблере. (=
    Код:
    ; glyph expansion
    ldi r1, 0b10101010 ; source byte    1
    ldi r2, 0b00000000   ; L dest word    1
    ldi r3, 0b00000000   ; H dest word        1
    sbrс r1, 0 ; skip if bit 0 reset    1/2
    ori r2, 0b00000011            1
    sbrс r1, 1 ; skip if bit 1 reset    1/2
    ori r2, 0b00001100            1
    sbrс r1, 2 ; skip if bit 2 reset    1/2
    ori r2, 0b00110000            1
    sbrс r1, 3 ; skip if bit 3 reset    1/2
    ori r2, 0b11000000            1
    sbrс r1, 4 ; skip if bit 4 reset    1/2
    ori r3, 0b00000011            1
    sbrс r1, 5 ; skip if bit 5 reset    1/2
    ori r3, 0b00001100            1
    sbrс r1, 6 ; skip if bit 6 reset    1/2
    ori r3, 0b00110000            1
    sbrс r1, 7 ; skip if bit 7 reset    1/2
    ori r3, 0b11000000            1
    ; result in r3:r2
    ; 19 commands (20-27 cycles)
    Однако.

Страница 2 из 2 ПерваяПервая 12

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •