Страница 42 из 400
Re: Ассемблер (ASM) для AVR в вопросах и ответах
Добавлено: Ср июн 02, 2010 15:10:59
GP1
IM1 писал(а):... а тут ВЫ

...
Да тут, похоже, только я и раздаю нравоучения

.
Модераторы! Требую звания "Заслуженный зануда ASM'а"
Я лично привык расписывать каждый "пук", в противном случае через месяц (два-три) вспомнить, что я делал, хотел и почему именно так: практически невозможно

.
Стараюсь делать так же...
Как-то так вот! Нет, точно не слежу за Вами.
Я вовсе не обижаюсь, всегда открыт для критики, если она конструктивная.

Re: Ассемблер (ASM) для AVR в вопросах и ответах
Добавлено: Ср июн 02, 2010 15:56:38
day0l
IM1 писал(а): Я лично привык расписывать каждый "пук"
а вы немогли бы показать кусочки этих пуков????
Modest писал(а):а почему на асме, почему бы не попробовать на С.
ну тут какое-то личное предпочтение, хотя это дело времени, потренируюсь на асме перееду на Си....
2GP1 читаю динамическую индикацию....
Re: Ассемблер (ASM) для AVR в вопросах и ответах
Добавлено: Ср июн 02, 2010 23:29:53
IM1
day0l писал(а):а вы немогли бы показать кусочки этих пуков????
Да, не вопрос. Вот, к примеру, термометр на ds18b20 и индикаторе от ККМ,
я уже писал об этом индикаторе: см. стр.
http://radiokot.ru/forum/viewtopic.php? ... &start=800. Честно говоря, это моя первая конструкция на AVR (до этого пользовал исключительно MCS51) сделанная в целях познания самого AVR и может показаться искушенному программисту сыроватой, но что есть, то есть. Остальные конструкции, к сожалению, показать не могу. Да они и проще и не интересны широкой публике: очень узкоспециализированные, достаточно простые системы работающие в реальном масштабе времени и преобразующие некоторые входные импульсы в нужные выходные.
Re: Ассемблер (ASM) для AVR в вопросах и ответах
Добавлено: Ср июн 02, 2010 23:57:02
Jack_A
IM1 писал(а):Вот, к примеру, термометр на ds18b20 и индикаторе от ККМ
Посмотрел. Нормальный коммент. Но тут важно не переборщить .
Видел я :
LDI R16,0 ; Эдесь мы обнуляем регистр 16

Re: Ассемблер (ASM) для AVR в вопросах и ответах
Добавлено: Чт июн 03, 2010 09:06:34
GP1
IM1 писал(а):... Вот, к примеру, термометр на ds18b20 и индикаторе от ККМ,...
Какой шикарный материал для критики

Re: Ассемблер (ASM) для AVR в вопросах и ответах
Добавлено: Чт июн 03, 2010 09:52:24
Gudd-Head
Можно ли как-то помимо связки команд LDI и OUT менять значения бит старших РВВ, для которых не применимы команды CBI и SBI?
В частности, разрешать и запрещать внешние прерывания у 8-ой Меги (РВВ по адресу 0х3В).
Re: Ассемблер (ASM) для AVR в вопросах и ответах
Добавлено: Чт июн 03, 2010 11:38:48
IM1
GP1 писал(а):Какой шикарный материал для критики

Вот он час возмездия

, наконец-то наступил для Вас!
В ужасе жду разбора полетов

. Надо же было так проколоться

, а вроде не мальчик уже... Вот как бывает, однако...
Re: Ассемблер (ASM) для AVR в вопросах и ответах
Добавлено: Чт июн 03, 2010 11:42:49
GP1
IM1
Я не кровожаден
но программную задержку делаю по-другому, скажу честно не моя придумка - содрал у Ю.Ревича
Gudd-Head
так ведь и
OUT там не прокатит, только
STS.
Re: Ассемблер (ASM) для AVR в вопросах и ответах
Добавлено: Чт июн 03, 2010 12:00:19
IM1
GP1 писал(а):Я не кровожаден

но программную задержку делаю по-другому, скажу честно не моя придумка - содрал у Ю.Ревича

Тогда мир

.
Не помню как я ее делал, сейчас просто совсем не до "программной задержки", надо железо ставить на объект. А если по теме, что не так? В листинге есть немного кусков не моих программ, в том числе и задержки, которые не используются. Мои только микросекундные. Если хотите, могу выложить полный проект на AVR Studio 4, но это только вечером из дома.
Re: Ассемблер (ASM) для AVR в вопросах и ответах
Добавлено: Чт июн 03, 2010 12:08:33
Gudd-Head
GP1 писал(а):Gudd-Head
так ведь и OUT там не прокатит, только STS.
Как
OUT не прокатит???

(прокатывает)
А
STS — это вообще запись РОН в память данных!!!
Re: Ассемблер (ASM) для AVR в вопросах и ответах
Добавлено: Чт июн 03, 2010 12:19:23
GP1
Вот, блин, опять ступил

(со мной частенько бывает)
действительно:
sbi/cbi - до 0х31
in/out - до 0х63
а вот все что свыше

-
sts/lds, в том числе и ОЗУ
да и все равно простая связка ldi-out при изменении 1 бита не поможет
если интересно я делаю так:
Код: Выделить всё
;установка бита
in(lds) <порт>,tmp
ori tmp,0bxxxxxxxx ; нужные биты в 1 остальное - 0
out(sts) <порт>,tmp
; для сброса бита тоже самое только нужный бит в 0 и меняем ori на andi
Re: Ассемблер (ASM) для AVR в вопросах и ответах
Добавлено: Чт июн 03, 2010 12:30:43
GP1
IM1 писал(а):Если хотите, могу выложить полный проект на AVR Studio 4, но это только вечером из дома.
О'K, будем посмотреть, как говорится, в спорах рождается истина (если конечно это не тупой мордобой

)
Re: Ассемблер (ASM) для AVR в вопросах и ответах
Добавлено: Чт июн 03, 2010 12:38:14
IM1
GP1 писал(а):;установка бита
in(lds) <порт>,tmp
Осмелюсь спросить, может быть все-таки:
in(lds) tmp,<порт> ?
Re: Ассемблер (ASM) для AVR в вопросах и ответах
Добавлено: Чт июн 03, 2010 12:45:30
GP1
само-собой!
я же написал - "частенько глючу"
так что "доверяй, но проверяй"
Re: Ассемблер (ASM) для AVR в вопросах и ответах
Добавлено: Чт июн 03, 2010 12:45:59
Gudd-Head
GP1 писал(а):да и все равно простая связка ldi-out при изменении 1 бита не поможет
Да я понимаю, что когда только
LDI и
OUT, получается присвоение, а не изменения одного бита. Понятно, придётся геморроиться.
В любом случае, спасибо

Re: Ассемблер (ASM) для AVR в вопросах и ответах
Добавлено: Чт июн 03, 2010 13:08:02
IM1
Gudd-Head писал(а):Да я понимаю, что когда только LDI и OUT, получается присвоение, а не изменения одного бита. Понятно, придётся геморроиться.
Не переживайте, уж такая вот на AVR тупая система команд и ее придется принять, какая есть. Я тоже "дурел", когда переходил от MCS-51 к AVR, там это делается легко и элегатно: clr ex0, что означает запретить внешнее прерывание int0. Вот что значит шикарный битовый процессор

!
Re: Ассемблер (ASM) для AVR в вопросах и ответах
Добавлено: Чт июн 03, 2010 13:13:44
Gudd-Head
IM1 писал(а):уж такая вот на AVR тупая система команд
Не то, что тупая система команд... просто всё делается через РОН и нельзя напрямую плясать от порта, например (вроде в ПИКах можно, но я не уверен).
А между тем я подумал нафига запрещать одно прерывание, когда можно сделать общее запрещение/разрешение прерываний CLI/SEI. Слава кошачим яйцам, на это есть отдельная команда

Re: Ассемблер (ASM) для AVR в вопросах и ответах
Добавлено: Чт июн 03, 2010 13:15:55
GP1
зато у м51 регистры по банкам разложены, и все через ж.., пардон, аккумулятор делается.
у каждого мк свои плюсы и минусы.
по битовым операциям - вопросов нет, 51-е рулят.
Re: Ассемблер (ASM) для AVR в вопросах и ответах
Добавлено: Чт июн 03, 2010 19:25:09
IM1
GP1 писал(а):IM1 писал(а):Если хотите, могу выложить полный проект на AVR Studio 4, но это только вечером из дома.
О'K, будем посмотреть, как говорится, в спорах рождается истина (если конечно это не тупой мордобой

)
Вот и полный проект:
Что-то мне подсказывает, что кроме Вас, ув. GP1 вряд ли это кого-нибудь заинтересует

.
Re: Ассемблер (ASM) для AVR в вопросах и ответах
Добавлено: Чт июн 03, 2010 19:52:36
GP1
Ну, наконец-то
Вы поняли что здесь занудствую только я
