Я перевел все в шестнадцатиричный. А для хранения чисел я использую массив. В конечном счете подготовительный код будет выглядеть так.
Для начала нам надо перевести наборы нулей и единиц в удобоваримый шестнадцатиричный вид, хотя можно оставить и двоичный, добавив перед этим 0b, чтобы компилятор понял формат.
В реале контроллер работает на стандартной частоте в 8мгц с делителем на 8, так что вам не надо трогать фьюзы. Реальная частота - 1мгц.
Для симуляции же схема будет упрощенной и туда добавился еще один индикатор с общим анодом, т.к. не у всех есть точно такой же индикатор, как у автора какой-то схемы, а прошивку подправить не могут. После прочтения этого поста, каждый сможет подправить под себя.
Для начала надо подключить индикатор к контроллеру.
Сегменты обозначаются буквами от a до h, причем последняя обозначает точку (в данном случае это буква р). Порядок букв идет справа налево. Если надо зажечь сегмент, то под буквой ставим 1. Как видно, сегмент h во всех цифрах выключен. Однако в процессе мы разсмотрим, как его включить в нужный момент.
В последнее время на форумах видел много тем по подключению светодиодных индикаторов к контроллеру, но не все знают, как управлять индикатором. Типичная ошибка - это непонимание принципа организации сегментов. На самом деле не надо конвертировать десятичные числа в формат bcd и не надо цеплять внешние декодеры. Контроллер много умнее. Чтобы зажигать цифры, надо представить, что мы подключили к контроллеру обычные светодиоды. В определенные моменты нам надо одновременно зажигать определенные светодиоды. Для этого есть некая договоренность, как распологать эти диоды.
альтернативно одаренный технобложик
Комментариев нет:
Отправить комментарий