Программирование МК на ассемблере ASM-51 и AVR Pascal. Китаев Ю.В. - 60 стр.

UptoLike

Составители: 

60
Два макроса для вывода байта с символическим именем “ch” достаточно
прокомментированы.
#############################################################
ВНИМАНИЕ: В макроопределении “LCDinit” четыре указанных
управляющих байта ДОЛЖНЫ быть вами ПЕРЕСЧИТАНЫ, в
соответствии с таблицей 3, которая была приведена ранее.
#############################################################
Например, для расчета управляющего байта автоинкремента позиции
курсора находим внизу таблицы строчку “ID автоинкрементирование
позиции курсора”. Далее находим третью строку
в таблице, в которой
встречается бит ID: 0 0 0 0 0 1 ID S - где S бит смещения изображения. В
нашей задачебит S=0, поэтому легко вычисляем значение этого
управляющего байта 6h (или просто 6). Это рассчитанное значение,
должно быть записано в макросе, вместо неправильного значения 0f9h.
Таким же образом найдите 3 оставшихся управляющих байта
(команды) ЖКД, принимая во внимание, что
:
разрядность данных ЖКД – 8 бит
число строк в дисплее – 2
матрица точек – 5x8
мерцание курсора во-первых отключено
а во-вторых его использование запрещено
Рассчитанные значения запишите вместо неправильных. И последний
штрихвведите последние на данном этапе строчки кода.
Две ненужных теперь команды закомментируйте или лучше всего
удалите. Первый аргумент макроса Delay вы уже рассчитали. Макрос
LCDinit полезно поместить в подпрограмму инициализации всего и вся
“InitALL”, в которую по мереобрастаниябудем добавлять и другие
компоненты. В настоящий момент текст программы должен иметь
следующий вид.