Страница 1 из 2

работа с ЖКИ 128х128 от RIM Blackberry R957(857)

Добавлено: Чт янв 20, 2011 10:22:12
Acinonyx
топик переименован
код на PIC и распиновка есть тут http://zaomiramax.ru/cgi-bin/forum/inde ... owtopic=43
даташит похожего дисплея тут http://www.stentor.no/Epson%20EG7504C-RS2.pdf (отличия в количество Page, Columns и, естественно, в распиновке)

Re: нужен перевод с PIC ASM на AVR ASM или C

Добавлено: Чт янв 20, 2011 10:34:13
Acinonyx
для затравки вот пик с этим жк и работающим кодом (из первого поста)
предвидя ваш вопрос отвечаю, что толковых даташитов именно на этот ЖК в природе не обнаружено
у жк паралельный интерфейс, D0-D7, RD, WR, A0, CS
Изображение

Re: нужен перевод с PIC ASM на AVR ASM или C

Добавлено: Чт янв 20, 2011 10:36:22
ploop
если поможете его расшифровать, я расскажу что это за дисплей
Его не нужно расшифровывать. Реверс-инженеринг тут незачем. Просто берёте даташит на дисплей и используете его.

Re: нужен перевод с PIC ASM на AVR ASM или C

Добавлено: Чт янв 20, 2011 10:39:33
Acinonyx
ploop писал(а):
если поможете его расшифровать, я расскажу что это за дисплей
Его не нужно расшифровывать. Реверс-инженеринг тут незачем. Просто берёте даташит на дисплей и используете его.
за секунду до вашего ответа отредактировал второе сообщение... даташита на него не обнаружено, штука проприетарная, а вы знаете что это значит для радиолюбителей

Re: нужен перевод с PIC ASM на AVR ASM или C

Добавлено: Чт янв 20, 2011 11:23:09
ploop
даташита на него не обнаружено, штука проприетарная, а вы знаете что это значит для радиолюбителей
А, ну это меняет дело. Тогда будем ждать пиководов.
Ну а что за дисплей то? Довольно интересная вещь, судя по фото

Re: нужен перевод с PIC ASM на AVR ASM или C

Добавлено: Чт янв 20, 2011 11:24:45
ploop
у жк паралельный интерфейс, D0-D7, RD, WR, A0, CS
Ну ведь методом тыка можно попробовать. День-другой и можно логику понять.

Re: нужен перевод с PIC ASM на AVR ASM или C

Добавлено: Чт янв 20, 2011 11:30:01
Rinon Ninqueon

Re: нужен перевод с PIC ASM на AVR ASM или C

Добавлено: Чт янв 20, 2011 14:28:09
Acinonyx
Rinon Ninqueon писал(а):http://zaomiramax.ru/cgi-bin/forum/index.php?showtopic=43
да, даташит очень похож, спасибо
и всеже ассемблер пика это просто извращение, в жизни не видел ничего хуже этого...

осталось разобраться с инвертированием/неинвертированием A0, CS, WR, RD
все остальное, в принципе, не так уж и сложно
будем пробовать

Re: нужен перевод с PIC ASM на AVR ASM или C

Добавлено: Чт янв 20, 2011 14:35:38
Acinonyx
а сам дисплей встречается в старых как мир RIM Blackberry R857 (R957), их продает один магазин в москве, раньше стоили по 90р, потом 130 (я по 130 и купил парочку), теперь стоят по 450р
этот блекбери сам по себе уже примечателен тем что имеет 386й процессор и полноценный COM порт с RS-232 уровнями

Re: нужен перевод с PIC ASM на AVR ASM или C

Добавлено: Чт янв 20, 2011 17:14:14
otest
и всеже ассемблер пика это просто извращение, в жизни не видел ничего хуже этого...
не нужно ругать то в чём не смыслиш. Во вложении коментарии по ним как начинающий можеш переложить на любимый AVR.

Re: нужен перевод с PIC ASM на AVR ASM или C

Добавлено: Пт янв 21, 2011 01:18:41
Jack_A
otest писал(а):
и всеже ассемблер пика это просто извращение, в жизни не видел ничего хуже этого...
не нужно ругать то в чём не смыслиш. Во вложении коментарии по ним как начинающий можеш переложить на любимый AVR.
Не критики ради, а в порядке реплики. ПИКовцы очень не любят, когда критикуют их любимца, хотя общепризнано, что невнятная мнемоника команд -- пожалуй, самая слабая сторона этого направления. Для меня она была одним из решающих факторов при выборе архитектуры для миграции с другого МК. Хотя, конечно, профи должен уметь "свободно летать на всем, что может летать, и с некоторым трудом -- на том, что, вообще говоря, летать не может". (С) М.Галай

Re: нужен перевод с PIC ASM на AVR ASM или C

Добавлено: Пт янв 21, 2011 07:39:57
КРАМ
Jack_A писал(а):
otest писал(а): не нужно ругать то в чём не смыслиш. Во вложении коментарии по ним как начинающий можеш переложить на любимый AVR.
Не критики ради, а в порядке реплики. ПИКовцы очень не любят, когда критикуют их любимца, хотя общепризнано, что невнятная мнемоника команд -- пожалуй, самая слабая сторона этого направления. Для меня она была одним из решающих факторов при выборе архитектуры для миграции с другого МК. Хотя, конечно, профи должен уметь "свободно летать на всем, что может летать, и с некоторым трудом -- на том, что, вообще говоря, летать не может". (С) М.Галай
Я практически свободно владею АСМом и младших (10...18) пиков и 16-разрядных PIC24/dsPIC33(30) И с большим недоумением прочел сие...
У меня такое ощущение, что автор цитаты не делает разницы между архитектурой МК и мнемоникой ассемблера....
Хотелось бы ради интереса услышать от него хотя бы одну команду АСМа из младших пиков, мнемоника которой была бы невнятной?

Должен сказать, что архитектура 24-х пиков весьма напоминает архитектуру АТМеги, если опустить разницу в разрядности....

Так жду убедительного примера...

Re: нужен перевод с PIC ASM на AVR ASM или C

Добавлено: Пт янв 21, 2011 09:38:02
ploop
Мнемоника у них действительно непривычна, AVR в этом плане проще в освоении. Хотя тоже молодцы. Взять хотя бы группу условных переходов BR** Нафига? Есть же десятилетиями устоявшиеся мнемоники типа JR**

Холивар начинается. Давайте прекращать, тема то про дисплей :)

Re: нужен перевод с PIC ASM на AVR ASM или C

Добавлено: Пт янв 21, 2011 10:31:29
КРАМ
Вот как раз о том, чтобы не разводить холивар я и толкую.
"Привычность" англоязычных аббревиатур определится знанием хотя бы минимального количества английских слов.
Тогда не будет никаких проблем с аббревиатурами ЛЮБЫХ контроллеров и процессоров.
От интела до 10-го пика.
А BR* - это Branch - ветвление, ответвляться
Ничем не лучше и не хуже JUMP...
Автора вопроса смутило скорее всего не это, а наличие при основном названии команды суффиксов: -lw , -f , -wf
Это как раз отражает архитектуру АЛУ данного семейства МК. Но архитектуру нужно по-любому знать, прежде чем разбирать или писать код на АСМе.
И это независимо от фирмы-производителя.

Re: нужен перевод с PIC ASM на AVR ASM или C

Добавлено: Пт янв 21, 2011 10:43:17
Acinonyx
не будем холиварить. я абсолютно не имею ничего против ассемблера пика
просто лично меня смутили следующие 2 строки
movlw D'20'
movwf r1
1 действие, 2 строки
но не суть, просто я никогда не изучал пики, поэтому все эти конструкции для меня все равно что немецкий язык, буквы те-же, вроде даже знакомые слова есть, но нифига понять не могу

Re: нужен перевод с PIC ASM на AVR ASM или C

Добавлено: Пт янв 21, 2011 11:47:11
КРАМ
Смутило совершенно справедливо.
Это смущение произошло из-за совпадения ДВУХ причин.
Первая. Неудачный выбор имени ячейки ОЗУ (r1)
Вторая. Вы не знаете (не вспомнили) о том, что НИ В КАКИХ обсуждаемых контроллерах записать константу в произвольную ячейку ОЗУ ОДНОЙ командой невозможно. Ни в ПИКах, ни в АВРах, ни в 51-х... Просто элементарно не хватает разрядности команды...
Первая строка - это запись константы в РОН АЛУ (сверхоперативная память/рабочий регистр или аккумулятор)
Вторая строка - перезапись из рабочего регистра в прямоадресуемое ОЗУ.
Вот и вся проблема... :)

Re: нужен перевод с PIC ASM на AVR ASM или C

Добавлено: Пт янв 21, 2011 12:02:58
otest
не нужно ему ничего объяснять для этого есть другие ветки. что лучше познаётся в сравнении. а так как старт топик
я начинающий АВРовец,
то похоже он даже по моим коментариям не может написать программу для АВР.

Re: нужен перевод с PIC ASM на AVR ASM или C

Добавлено: Пт янв 21, 2011 12:16:55
BIB
Acinonyx писал(а):просто лично меня смутили следующие 2 строки
movlw D'20'
movwf r1
1 действие, 2 строки
но не суть, просто я никогда не изучал пики, поэтому все эти конструкции для меня все равно что немецкий язык, буквы те-же, вроде даже знакомые слова есть, но нифига понять не могу
Это два действия. movlw D'20' - это запись десятичного числа 20 в аккумулятор, а movwf r1 - это пересылка содержимого аккумулятора в регистр r1. Прямая запись чего-либо в регистры в ПИКах не осуществляется.

Re: работа с ЖКИ 128х128 от RIM Blackberry R957(857)

Добавлено: Пт янв 21, 2011 15:36:12
BOB51
КРАМ
"что НИ В КАКИХ обсуждаемых контроллерах записать константу в произвольную ячейку ОЗУ ОДНОЙ командой невозможно. Ни в ПИКах, ни в АВРах, ни в 51-х..."
одним байтом - нет, а вот насчет "одной командой" - весьма смелое утверждение :)))
для I8080:
mvi m,#d8
для Z80:
LD (hl),#d8
LD (индекс+смещение),#d8
правда это индексная адресация и адрес ячейки предварительно помещается в соответствующий регистр
для MCS51:
mov ad,#d8 (подставляется адрес регистра рон/рсф - к примеру MOV 0x30,#56d загрузит в РОН с адресом 30h константу 56d)
mov @r0,#d8
mov @r1,#d8
вот у AVRок действительно проблемка, непосредственная загрузка данных возможна только в любой из старших 16 регистров РОН (ldi rn,$d), а далее -только пересылки "память-память" (группа LD... ) или межрегистровые в пределах РОН (mov rn,rm / movw ...)
ну а PIC - это конечно "нечто" не то акумуляторная модель - не то регистровая (касательно младшего семейства pic12/pic16) :shock:

Re: нужен перевод с PIC ASM на AVR ASM или C

Добавлено: Пт янв 21, 2011 17:05:57
КРАМ
BOB51.
Давайте читать ПО СЛОГАМ.
Итак, самоцитата:
КРАМ писал(а):Смутило совершенно справедливо.
Это смущение произошло из-за совпадения ДВУХ причин.
Первая. Неудачный выбор имени ячейки ОЗУ (r1)
Вторая. Вы не знаете (не вспомнили) о том, что НИ В КАКИХ обсуждаемых контроллерах записать константу в произвольную ячейку ОЗУ ОДНОЙ командой невозможно. Ни в ПИКах, ни в АВРах, ни в 51-х... Просто элементарно не хватает разрядности команды...
Первая строка - это запись константы в РОН АЛУ (сверхоперативная память/рабочий регистр или аккумулятор)
Вторая строка - перезапись из рабочего регистра в прямоадресуемое ОЗУ.
Вот и вся проблема... :)
По пунктам.
1. Какие контроллеры тут обсуждались? Правильно, PIC, AVR и 51-ый. Про Интел тут ничего не говорилось.
Почему не говорилось? Правильно, у других контроллеров формат команды ДЛИННЕЕ. А значит проблем с реализациией обсуждаемой однокомандной пересылкой константа - прямоадресуемое ОЗУ не будет.
2. При относительном типе адресации необходимо, как Вы совершенно справедливо и не в тему отметили ПРЕДВАРИТЕЛЬНО загрузить ТОЖЕ КОНСТАНТОЙ регистр косвенной адресации (сиречь указатель ОЗУ, пойнтер- по аглицки). Т.е. тоже НЕ ОДНОЙ КОМАНДОЙ.

Прежде чем постить возражения, любезный БОБ51, сделайте великое отдолжение собеседнику. Прочтите его пост ПО СЛОГАМ. Вдумчиво и без фантазий. Может и пост писать не потребуется - все уже сказано с избытком...
Сенкс.

ЗЫ. Вопрос о недостатках архитектуры ПИКов младшейго семейства - секрет Полишинеля. Не нравится писать для них - пишите для 18-х. Не нарвится для 18-х - пишите для 24-х
Уж последние "по-любасику" на порядок удобнее АТМеги и на столько же мощнее при идентичной (а порой и меньшей) цене...
Вообще, реализовывать задачу нужно на том контроллере, который доступен в покупке, на котором задача в принципе реализуема и , наконец, на который есть ИНСТРУМЕНТАРИЙ. Среда-Программатор, а лучше Дебаггер. Попытки смеятся над простыми контроллерами напоминают плохого клоуна. В нашей любимой отчизне даже таких не делают. А Микрочип их сваял почти 15 лет назад.