• РУС / ENG
(495) 662-44-14 Многоканальный телефон Не дозвонились?
Главная / Форум
Форумы >>ЖК индикаторы >>RE: движение курсора для МТ-10S1
Ответить
RE: движение курсора для МТ-10S1

Александр
Гости

Сообщений:
Регистрация:

Настроенный курсор не хочет перемещаться в ячейки с адресом 40h и 41h
вот код программы:

RESET:
ldi temp,high(ramend)
out sph,temp
ldi temp,low(ramend)
out spl,temp
ldi temp,0xFF
out DDRB,temp
ldi temp,0xF3
out DDRD,temp
call init
ldi temp,0x0F
call setaddress

ldi temp,0x7
call setaddress
clr count
metka2:
ldi temp,0x14
call setaddress
inc count
cpi count,9
breq metka3
jmp metka2
metka3:
jmp metka3

если count инкрементировать до 7, то в 8ом секторе ЖКИ будет мигающий курсор - подчёркивание, соответственно если инк. до 9 или 8 то в последних 2ух секторах не будет ничего.

Ответить на это сообщение Цитировать

Петухов_Дмитрий
Пользователи

Сообщений: 473
Регистрация: 25.11.2009

Во-первых, непонятно что делает процедура setaddress, Вы её не привели. Если она посылает команду индикатору, на что очень похоже, то смотрите распределение памяти на стр.5. PDF.
Во-вторых, почему Вы думаете, что сдвиг вправо передвинет курсор с адреса 7 на адрес 40h?! Не будет такого, сдвиг будет идти с адреса 7 на адрес 8h, потом 9h, потом Ah и т.д. до адреса 27h и только с него курсор перескочит на адрес 40h и появится в 9-й позиции индикатора. Т.е. при сдвиге вправо адреса перебираются 0x0, 0x1, 0x2, ... 0x26, 0x27, 0x40, 0x41, 0x42, 0x43, ... 0x66, 0x67, 0x0, 0x1, ... При сдвиге влево - строго в обратном порядке.

Имя Ответить на это сообщение Цитировать

Александр
Гости

Сообщений:
Регистрация:

Спасибо помогло
да вы правы setaddress - именно то
насчёт адреса 40h было подозрение пытался так и записать в count 64, но не получилось - возникла путаница с перводом в 16-ную систему

Ответить на это сообщение Цитировать
Ответить
Сейчас на форуме (гостей: 11, пользователей: 1 , из них : 0 )