продолжите его для нескольких проходов развертки. Вы увидите, что точки в узлах - образуют "вспышки" светодиодов, отпечаток их в нашем глазу. То есть мы должны увидеть наклонные светлые полосы, состоящие в горизонтальном сечении из нескольких (1..4) рядов точек. Это то, что надо получить. Реально же в один момент времени засвечивается только один из светодиодов. Интервал времени между засветками одинаков, соответствует периоду развертки деленному на n, деленному на количество светодиодов в подстроке. Чтобы соблюсти условие непрерывности, чтоль, одним словом, чтобы произошла такая засветка светодиодов, порядок засветки в первом приближении есть пила -те линии, соединяющие точки. Линия по горизонтали инкременируется на один шаг, по вертикали соответствует светодиоду, который надо засвечивать, т.е активной в данный момент времени строке.Это Вы поняли. Но т.к нужные нам для реализации полосы-наклонные, есть моменты, когда развертка, линия на рисунке, соединяющая точки, должна "скакнуть", обратиться к засвечиванию соседней по отношению к отображаемой полосы, затем вернуться назад для отображения текущей полосы.
.____///__///_
.___///__///_
.__///__///_
._///__///_
.///__///_
______!_____
______!______
Вот так набросал примерчик, когда посередке графика, надо обращаться за один шаг развертки как к экранной памяти основного, так и соседнего столбца.
Посмотрите мой код.
Display_line_mode - задает кратность развертки
DisplayLineCode -текущая отображаемая строка
run_start_bit;run_start_bYte-указатель на начало
downmove- указывает текущее направление развертки приращение/уменьшение номера строки