Реклама на сайте English version  DatasheetsDatasheets

KAZUS.RU - Электронный портал. Принципиальные схемы, Datasheets, Форум по электронике

Новости электроники Новости Литература, электронные книги Литература Документация, даташиты Документация Поиск даташитов (datasheets)Поиск PDF
  От производителей
Новости поставщиков
В мире электроники

  Сборник статей
Электронные книги
FAQ по электронике

  Datasheets
Поиск SMD
Он-лайн справочник

Принципиальные схемы Схемы Каталоги программ, сайтов Каталоги Общение, форум Общение Ваш аккаунтАккаунт
  Каталог схем
Избранные схемы
FAQ по электронике
  Программы
Каталог сайтов
Производители электроники
  Форумы по электронике
Помощь проекту

Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей...

 
Опции темы
Непрочитано 12.02.2009, 12:06  
FedorChek
Прописка
 
Регистрация: 24.07.2008
Сообщений: 151
Сказал спасибо: 1
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
FedorChek на пути к лучшему
По умолчанию ассемблер и ARV (посмотрите код)

Добрый день. С ассемблером и основными приемами программирования на нем под микроконтроллеры я сталкивался редко. Сейчас пытаюсь заполнить этот пробел крупицами знания. А заполняю я их с помощью готовых рабочих кодов выполняя какие-то задания, переход с Меги8 на Мегу88 у меня затянулся с Си кодом разобрался осталось разобраться с «асм» вставками ну ладно хватит флудить. Перейду к вопросам, вот малая часть кода написанная под мегу8.
Пожалуйста добавти комментарии к строкам и как его переделать под Мегу88 (если есть разница) куда «смотреть» и на что обращать внимание, с портами все просто а вот что такое регистры понять не могу. Да и если есть книга по асму для АВР киньте ссылочку.
Код:
.equ  PORTB     =$18
   .equ  PIND        =$10
   .def  out_prep    =r16
   .def  out_noprep  =r17
   .def  prep        =r4
   .def  inc_buf_lo =r6
   .def  inc_buf_hi =r7
   .def  sum_lo      =r18
   .def  sum_hi      =r19
   .def  timeout1    =r5
   .def  i           =r20
Реклама:
FedorChek вне форума  
Непрочитано 12.02.2009, 12:20  
avr123-nm-ru
Почётный гражданин KAZUS.RU
 
Регистрация: 13.05.2006
Адрес: Москва
Сообщений: 3,559
Сказал спасибо: 76
Сказали Спасибо 326 раз(а) в 230 сообщении(ях)
avr123-nm-ru на пути к лучшему
По умолчанию

ARV - это чувачило такой КРУТОЙ с РадиоКота !
__________________
Обучалка AVR PIC ARM начинающим программирование курс самоучитель шаг за шагом с нуля, CVAVR, PROTEUS, MPLAB, WinAVR, IAR, KEIL электроника - http://proavr.narod.ru
avr123-nm-ru вне форума  
Непрочитано 12.02.2009, 12:22  
avr123-nm-ru
Почётный гражданин KAZUS.RU
 
Регистрация: 13.05.2006
Адрес: Москва
Сообщений: 3,559
Сказал спасибо: 76
Сказали Спасибо 326 раз(а) в 230 сообщении(ях)
avr123-nm-ru на пути к лучшему
По умолчанию Re: ассемблер и ARV (посмотрите код)

Сообщение от FedorChek
с портами все просто а вот что такое регистры понять не могу.
Регистр - такой "ящичек" в котором 8 бит обычно - т.е. регистр это 1 байт обычно.

У "ящичка"-регистра есть адрес. Эти адреса в таблице в конце даташита.

Подробно "Устройство AVR" - http://avr123.nm.ru/02.htm
__________________
Обучалка AVR PIC ARM начинающим программирование курс самоучитель шаг за шагом с нуля, CVAVR, PROTEUS, MPLAB, WinAVR, IAR, KEIL электроника - http://proavr.narod.ru
avr123-nm-ru вне форума  
Непрочитано 12.02.2009, 12:24  
Vov123
Вид на жительство
 
Регистрация: 03.06.2007
Сообщений: 368
Сказал спасибо: 3
Сказали Спасибо 59 раз(а) в 52 сообщении(ях)
Vov123 на пути к лучшему
По умолчанию

Это команды препроцессора,можно обойтись и без них,но если возникла необходимость модификации программы,то можно много ошибок понаделать.
.equ - по каковски "это"
Значит-слово "PORTB" это то ,что находится в регистре ввода-вывода под шестнадцатеричным адресом-18.
.def - слово,которым именуем конкретный регистр общего назначения,т.е.РОН r16 в этой программе будем называть "out_prep"
Vov123 вне форума  
Непрочитано 12.02.2009, 12:25  
avr123-nm-ru
Почётный гражданин KAZUS.RU
 
Регистрация: 13.05.2006
Адрес: Москва
Сообщений: 3,559
Сказал спасибо: 76
Сказали Спасибо 326 раз(а) в 230 сообщении(ях)
avr123-nm-ru на пути к лучшему
По умолчанию

Сообщение от FedorChek
если есть книга по асму для АВР киньте ссылочку.
Качайте КНИГИ в библиотеке по той же
ссылке выше и читайте.
__________________
Обучалка AVR PIC ARM начинающим программирование курс самоучитель шаг за шагом с нуля, CVAVR, PROTEUS, MPLAB, WinAVR, IAR, KEIL электроника - http://proavr.narod.ru
avr123-nm-ru вне форума  
Непрочитано 12.02.2009, 12:35  
Vov123
Вид на жительство
 
Регистрация: 03.06.2007
Сообщений: 368
Сказал спасибо: 3
Сказали Спасибо 59 раз(а) в 52 сообщении(ях)
Vov123 на пути к лучшему
По умолчанию

Ну,после уважаемого avr123-nm-ru мне добавить нечего,только что дерективой .equ именуют константы
Vov123 вне форума  
Непрочитано 12.02.2009, 12:39  
Halex07
Супер-модератор
 
Аватар для Halex07
 
Регистрация: 03.05.2007
Сообщений: 2,695
Сказал спасибо: 28
Сказали Спасибо 4,508 раз(а) в 956 сообщении(ях)
Halex07 на пути к лучшему
По умолчанию

Вот тебе прямая ссылка на книжку Ю.Ревича "Практическое программирование микроконтроллеров
Atmel AVR на языке ассемблера" на Рапиде, если лень глаза поднять на тему книги. Только-что проверил - оно там лежит. Главу 2 - читать срочно!!!
http://rapidshare.com/files/19078847..._pr_mk_avr.rar
Halex07 вне форума  
Непрочитано 12.02.2009, 13:09  
FedorChek
Прописка
 
Регистрация: 24.07.2008
Сообщений: 151
Сказал спасибо: 1
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
FedorChek на пути к лучшему
По умолчанию

Спасибо. В названии я ошибся, извиняюсь. Спасибо!!!
FedorChek вне форума  
Непрочитано 12.02.2009, 13:45  
FedorChek
Прописка
 
Регистрация: 24.07.2008
Сообщений: 151
Сказал спасибо: 1
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
FedorChek на пути к лучшему
По умолчанию

Ёёёёё..... классно кажется начинаю понимать. Согласно "даташиту" Мега8 (PORTB 0x18 (0x3) Мега88 (PORTB 0x05 (0x25)) значит меняем equ PORTB =$18 на equ PORTB =$05 и т.д. Осталось понять что такое r6 (есть ли отличия) в строке .def inc_buf_lo =r6
FedorChek вне форума  
Непрочитано 12.02.2009, 13:52  
avr123-nm-ru
Почётный гражданин KAZUS.RU
 
Регистрация: 13.05.2006
Адрес: Москва
Сообщений: 3,559
Сказал спасибо: 76
Сказали Спасибо 326 раз(а) в 230 сообщении(ях)
avr123-nm-ru на пути к лучшему
По умолчанию

Сообщение от FedorChek
Осталось понять что такое r6 (есть ли отличия) в строке .def inc_buf_lo =r6
Это РОН - регистры их 32 с 0 до 31

Щас ты просто присваиваешь ЧЕЛОВЕЧЕСКИЕ имена адресам регистра.

Имена могут быть какие тебе нравятся. Но приянто назначать имена из даташите.

Это не обязательно, просто удобно писать PORTD а не помнить его адрес и писать адрес.

Ты задаешь обычные текстовые подстановки -
"Считать такой-то текст вот таким".

в Си это #define
__________________
Обучалка AVR PIC ARM начинающим программирование курс самоучитель шаг за шагом с нуля, CVAVR, PROTEUS, MPLAB, WinAVR, IAR, KEIL электроника - http://proavr.narod.ru
avr123-nm-ru вне форума  
 

Закладки
Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Ассемблер для AVR. Andrewg Микроконтроллеры, АЦП, память и т.д 46 26.09.2011 16:55
Код Грея, алгоритм ассемблер? picavr Микроконтроллеры, АЦП, память и т.д 8 27.03.2009 04:39
преобразователь код-код zazan111 TTL и CMOS логика 18 05.01.2009 06:11
Ассемблер PIC AnB Микроконтроллеры, АЦП, память и т.д 12 01.07.2005 03:07


Часовой пояс GMT +4, время: 14:12.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot