Ассемблер (ASM) для AVR в вопросах и ответах

Обсуждаем контроллеры компании Atmel.
Аватара пользователя
Gudd-Head
Друг Кота
Сообщения: 20092
Зарегистрирован: Чт сен 18, 2008 12:27:21
Откуда: Столица Мира Санкт-Петербург

Re: Ассемблер (ASM) для AVR в вопросах и ответах

Сообщение Gudd-Head »

Engineer_Keen писал(а):Что ж вы сразу издеваться, может у человека с английским плохо

Обсуждалось уже. 1. КАК тогда он будет дальше программить??? 2. В конце концов, есть много переводчиков.
[ Всё дело не столько в вашей глупости, сколько в моей гениальности ] [ Правильно заданный вопрос содержит в себе половину ответа ]
Аватара пользователя
pyzhman
Друг Кота
Сообщения: 7016
Зарегистрирован: Вс июл 12, 2009 19:15:29
Откуда: Ижевск
Контактная информация:

Re: Ассемблер (ASM) для AVR в вопросах и ответах

Сообщение pyzhman »

Gudd-Head писал(а):1. КАК тогда он будет дальше программить???

Прямо скажем - никак. Переболеет и пройдет.
Gudd-Head писал(а):2. В конце концов, есть много переводчиков.

Их же еще понять надо.
Docendo discimus
Аватара пользователя
GP1
Поставщик валерьянки для Кота
Сообщения: 2401
Зарегистрирован: Пт май 23, 2008 19:32:22
Откуда: Россия, Волгоград
Контактная информация:

Re: Ассемблер (ASM) для AVR в вопросах и ответах

Сообщение GP1 »

Gudd-Head писал(а): В конце концов, есть много переводчиков.

ну и Евстифеев уже постарался, для тех у кого с аглицким (как у меня) напряг ("читаю и перевожу со словарем", ну можно еще с гуглем :) :) :) )
Чем дальше, тем больше становлюсь занудой...
Изображение
lag1
Первый раз сказал Мяу!
Сообщения: 26
Зарегистрирован: Пн июн 09, 2008 23:40:31

Re: Ассемблер (ASM) для AVR в вопросах и ответах

Сообщение lag1 »

pyzh_man писал(а):GICR= 0x40 MCUCR= 0x03


Спасибо!
sergy1976
Родился
Сообщения: 8
Зарегистрирован: Пт июл 09, 2010 10:55:13

Re: Ассемблер (ASM) для AVR в вопросах и ответах

Сообщение sergy1976 »

затупил
как инвертировать значение в РОН? например, r16?
sergy1976
Родился
Сообщения: 8
Зарегистрирован: Пт июл 09, 2010 10:55:13

Re: Ассемблер (ASM) для AVR в вопросах и ответах

Сообщение sergy1976 »

исключающее или с 0xFF?
Аватара пользователя
ploop
Модератор
Сообщения: 13490
Зарегистрирован: Ср ноя 26, 2008 16:34:25
Откуда: Тамбовская обл.

Re: Ассемблер (ASM) для AVR в вопросах и ответах

Сообщение ploop »

А даташит на что?

Изображение
sergy1976
Родился
Сообщения: 8
Зарегистрирован: Пт июл 09, 2010 10:55:13

Re: Ассемблер (ASM) для AVR в вопросах и ответах

Сообщение sergy1976 »

А даташит на что?


спасибо
не просек сразу логику, что инвертировать, тоже самое 0xFF - R
В принципе, уже сделал в студии с исключающим или

Код: Выделить всё

        ldi r16, 0b11101100
   ldi r17, 0b11111111
   eor r16, r17
Аватара пользователя
ploop
Модератор
Сообщения: 13490
Зарегистрирован: Ср ноя 26, 2008 16:34:25
Откуда: Тамбовская обл.

Re: Ассемблер (ASM) для AVR в вопросах и ответах

Сообщение ploop »

6 байт флеша вместо двух, 3 такта вместо одного :)
chezetmobile
Первый раз сказал Мяу!
Сообщения: 26
Зарегистрирован: Ср сен 22, 2010 23:17:40
Контактная информация:

Re: Ассемблер (ASM) для AVR в вопросах и ответах

Сообщение chezetmobile »

привет любителям помяукать. при компиляции такая ошибка, что не так у меня? подскажите плз
Вложения
ошибка.png
(26.68 КБ) 311 скачиваний
akl
Друг Кота
Сообщения: 4444
Зарегистрирован: Пт мар 07, 2008 06:54:43
Откуда: Ижевск

Re: Ассемблер (ASM) для AVR в вопросах и ответах

Сообщение akl »

OR не может быть ничем, кроме команды
Аватара пользователя
GP1
Поставщик валерьянки для Кота
Сообщения: 2401
Зарегистрирован: Пт май 23, 2008 19:32:22
Откуда: Россия, Волгоград
Контактная информация:

Re: Ассемблер (ASM) для AVR в вопросах и ответах

Сообщение GP1 »

в файле m8def.inc закоментируй строку:

Код: Выделить всё

.def    OR   =3

и полегчает :)
Чем дальше, тем больше становлюсь занудой...
Изображение
Аватара пользователя
GP1
Поставщик валерьянки для Кота
Сообщения: 2401
Зарегистрирован: Пт май 23, 2008 19:32:22
Откуда: Россия, Волгоград
Контактная информация:

Re: Ассемблер (ASM) для AVR в вопросах и ответах

Сообщение GP1 »

akl писал(а):OR не может быть ничем, кроме команды

это не его вина, я тоже с таким сталкивался, когда в комплекте с прогой идут *.inc с такой вот фигней, зачем это сделано - хз. :dont_know:
Чем дальше, тем больше становлюсь занудой...
Изображение
chezetmobile
Первый раз сказал Мяу!
Сообщения: 26
Зарегистрирован: Ср сен 22, 2010 23:17:40
Контактная информация:

Re: Ассемблер (ASM) для AVR в вопросах и ответах

Сообщение chezetmobile »

мне, по идее, все три порта необходимо настроить на вывод, (светодиоды висят) при за комментировании или замене or на or0 ошибка пропадает, но тогда мега работать отказывается, горит один светодиод и все.
Аватара пользователя
GP1
Поставщик валерьянки для Кота
Сообщения: 2401
Зарегистрирован: Пт май 23, 2008 19:32:22
Откуда: Россия, Волгоград
Контактная информация:

Re: Ассемблер (ASM) для AVR в вопросах и ответах

Сообщение GP1 »

:shock:
причем здесь m8def.inc и твой код :dont_know:
chezetmobile писал(а):мне, по идее, все три порта необходимо настроить на вывод, (светодиоды висят) при за комментировании или замене or на or0 ошибка пропадает, но тогда мега работать отказывается, горит один светодиод и все.

а если не коментить OR, ты как проверяешь что работает, если компиляция не проходит.
ищи косяк в своем коде.
ну или хотя бы сюда его выложи, кто-нибудь да подскажет.

зы: это принципиально использовать tavrasm? есть же авр-студия, там же и отладчик в куче.
Чем дальше, тем больше становлюсь занудой...
Изображение
chezetmobile
Первый раз сказал Мяу!
Сообщения: 26
Зарегистрирован: Ср сен 22, 2010 23:17:40
Контактная информация:

Re: Ассемблер (ASM) для AVR в вопросах и ответах

Сообщение chezetmobile »

я в этом деле новичек. учился из обучалки сайта, поэтому tavrasm, ток с ним получается работать.

вот примерный код



.include "D:\avr\avrasm\appnotes\m8def.inc"

.def Temp=R16
.def Temp1=R17
.def Temp2=R18
.def Temp3=R19
.def Temp4=R20

.def Temp5=R21
.def Temp6=R22
.def Temp7=R23
.def Temp8=R24
.def Temp9=R25

.cseg
.org 0

ldi Temp,low(RamEnd) ;инициализация стека
out SPL,Temp

ldi Temp,0b11111111 ;настройка портов
out DDRB,Temp

ldi Temp5,0b11111111 ;настройка портов
out DDRD,Temp5


ldi Temp8,0b1111111 ;настройка портов
out DDRC,Temp5

LOOP:


ldi Temp,0b00000001 ;загрузка для B
ldi Temp5,0b10000000 ;загрузка для D
ldi Temp8,0b1010101 ;загрузка для c
rcall Delay ;вызов подпрограммы задержки

ldi Temp,0b10000000 ;загрузка для B
ldi Temp5,0b00000001 ;загрузка для D
ldi Temp8,0b1010101 ;загрузка для c
rcall Delay ;вызов подпрограммы задержки

ldi Temp,0b10000000 ;загрузка для B
ldi Temp5,0b00000100 ;загрузка для D
ldi Temp8,0b1010101 ;загрузка для c
rcall Delay ;вызов подпрограммы задержки

ldi Temp,0b00111000 ;загрузка для B
ldi Temp5,0b00101110 ;загрузка для D
ldi Temp8,0b1010101 ;загрузка для c
rcall Delay ;вызов подпрограммы задержки

ldi Temp,0b01000110 ;загрузка для B
ldi Temp5,0b00110000 ;загрузка для D
ldi Temp8,0b1010101 ;загрузка для c
rcall Delay ;вызов подпрограммы задержки






RJMP LOOP


Delay:
out PortB,Temp
out PortD,Temp5
out Portc,Temp8


ldi Temp1,10
ldi Temp2,10
ldi Temp3,4

Loop2: dec Temp1
brne Loop2

dec Temp2
brne Loop2

dec Temp3
brne Loop2
RET




ret
Аватара пользователя
GP1
Поставщик валерьянки для Кота
Сообщения: 2401
Зарегистрирован: Пт май 23, 2008 19:32:22
Откуда: Россия, Волгоград
Контактная информация:

Re: Ассемблер (ASM) для AVR в вопросах и ответах

Сообщение GP1 »

начнем с того что у тебя лишний RET в конце.
остальное ща гляну.

1. инициализация стека! у М8 SPH:SPL ты инициализируешь только мл.байт
поэтому после первого же вызова п/п ты попадаешь в служебную область мк.

2. такой стиль написания программ носит имя - БЫДЛОКОД, как новичку тебе простительно, но если хочешь научиться чем-нибудь, а не просто светиками поморгать, следует себя сразу приучать к правилам хорошего тона
http://easyelectronics.ru/category/avr-uchebnyj-kurs
http://arv.radioliga.com/content/section/6/49/

в местной обучалке много косяков об этом уже не раз писали.
Чем дальше, тем больше становлюсь занудой...
Изображение
chezetmobile
Первый раз сказал Мяу!
Сообщения: 26
Зарегистрирован: Ср сен 22, 2010 23:17:40
Контактная информация:

Re: Ассемблер (ASM) для AVR в вопросах и ответах

Сообщение chezetmobile »

Спасибо за рекомендации. Исправил, все работает. буду учить "правила хорошего тона"

зы: не хватает кнопочки, типа спасибо. нужно как то людей благодарить
Аватара пользователя
GP1
Поставщик валерьянки для Кота
Сообщения: 2401
Зарегистрирован: Пт май 23, 2008 19:32:22
Откуда: Россия, Волгоград
Контактная информация:

Re: Ассемблер (ASM) для AVR в вопросах и ответах

Сообщение GP1 »

Обращайся если что, тут народ в основном доброжелательный.
(ко мне это не относится :wink: )
Чем дальше, тем больше становлюсь занудой...
Изображение
Аватара пользователя
ploop
Модератор
Сообщения: 13490
Зарегистрирован: Ср ноя 26, 2008 16:34:25
Откуда: Тамбовская обл.

Re: Ассемблер (ASM) для AVR в вопросах и ответах

Сообщение ploop »

ldi Temp8,0b1111111 ;настройка портов
out DDRC,Temp5

Внимательнее надо быть при копипасте!
Ответить

Вернуться в «AVR»