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

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

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

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

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

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

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

Закрытая тема
Опции темы
Непрочитано 12.02.2009, 16:09   #21
picavr
Почётный гражданин KAZUS.RU
 
Аватар для picavr
 
Регистрация: 07.10.2007
Адрес: Луганск
Сообщений: 1,816
Сказал спасибо: 13
Сказали Спасибо 399 раз(а) в 214 сообщении(ях)
picavr на пути к лучшему
По умолчанию

Сообщение от FedorChek
Ёёёёё..... классно кажется начинаю понимать. Согласно "даташиту" Мега8 (PORTB 0x18 (0x3) Мега88 (PORTB 0x05 (0x25)) значит меняем equ PORTB =$18 на equ PORTB =$05 и т.д.
Зачем менять вручную?. подключаеш файл определений для нужного МК
.include "M88def.inc";МЕГА88
или
.include "M8def.inc";МЕГА8
в этом файле уже все системные регистры проименованы.

А в программе пишешь:
.def temp=R16 ;(TEMPorary) временный
.equ delay=15 ;delay(задержка)=15

...
...
LDI TEMP,delay
out PORTB,TEMP
rjmp exitoutports
...
...

exitoutports:

И Студия вмечто TEMP подствит R16, а вместо PORTB возмёт из файла определений адрес порта для ДАННОГО контролера и подстваит вместо PORTB.

получится
LDI R16,15
out (адрес порта B в выбраном МК),R16
rjmp exitoutports


а ещё лучше...
.include "M88def.inc";МЕГА88
.def temp=R16 ;(TEMPorary) временный
.equ delay=15 ;delay(задержка)=15
.equ portdatalcd=portb
.equ portenlcd=portb
.equ portrwlcd=portb
.equ portrslcd=portb
.equ pinenlcd=0
.equ pinrwlcd=1
.equ pinrslcd=2
.equ pindata4lcd=3
.equ pindata5lcd=4
.equ pindata6lcd=5
.equ pindata7lcd=6

.def flags0=R17
.equ startdelay=0;флаг старт задержки


тогда в программе писать так...

...
...
cbi portrslcd,pinenlcd
nop
sbi portenlcd,pinenlcd
nop
cbi portrwlcd,pinenlcd
nop
cbr portdatalcd,pindata4lcd
cbr portdatalcd,pindata5lcd
cbr portdatalcd,pindata6lcd
sbr portdatalcd,pindata7lcd
...
...
...
sbr flags0,1‹‹startdelay;флаг старт задержки=1
cbr flags0,1‹‹startdelay;флаг старт задержки=0
sbrs flags0,1‹‹startdelay;флаг старт задержки=1?


жаль Studio не поддерживает директиву
#Define
нельзя определить так как в MPLAB

#Define pinrwlcd portb,0
#Define pinrslcd portb,1
#Define pinenlcd portb,2
#Define pindata4lcd portb,3
#Define pindata5lcd portb,4
#Define pindata6lcd portb,5
#Define pindata7lcd portb,6

#Define startdelay 20,0

так намного удобнее
Реклама:
picavr вне форума  
Непрочитано 12.02.2009, 16:21   #22
FedorChek
Прописка
 
Регистрация: 24.07.2008
Сообщений: 151
Сказал спасибо: 1
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
FedorChek на пути к лучшему
По умолчанию

Вот это да кто же знал, да ладно там всего две малюсинькие вставочки поменяю вручную
FedorChek вне форума  
Непрочитано 13.02.2009, 11:48   #23
FedorChek
Прописка
 
Регистрация: 24.07.2008
Сообщений: 151
Сказал спасибо: 1
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
FedorChek на пути к лучшему
По умолчанию

Привет! Вопросик созрел. команды ассемблера отличаются в зависимости от типа микроконтроллера меня интересует мега8 и мега88 или для АВР всё одинаково.
листинг ВЫШЕ. Спасибо.
FedorChek вне форума  
Непрочитано 13.02.2009, 11:58   #24
Vov123
Вид на жительство
 
Регистрация: 03.06.2007
Сообщений: 368
Сказал спасибо: 3
Сказали Спасибо 59 раз(а) в 52 сообщении(ях)
Vov123 на пути к лучшему
По умолчанию

Все команды для всех микроконтроллеров AVR одинаковые.В микроконтроллеры mega добавлены команды.Книжки читайте,в каждом даташите есть список команд.
Vov123 вне форума  
Непрочитано 13.02.2009, 13:40   #25
FedorChek
Прописка
 
Регистрация: 24.07.2008
Сообщений: 151
Сказал спасибо: 1
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
FedorChek на пути к лучшему
По умолчанию

Знаю что надоел, но всеже
Код:
register unsigned char prep @4; // для чтения препарата R4
register unsigned char timeout1 @5; // флаг таймаута таймера1 30 сек R5
register unsigned int inc_buf @6; // инкремент синтезатора частоты R6 R7
что этими строками объявляется, я имею в виду @4 это адрес, номер ноги или.
Книги я читаю но некоторые ситуации меня ставят в тупик, как с данной прогой над которой я сейчас работаю вроде все правильно, а корректности в работе не наблюдается 8O
FedorChek вне форума  
Непрочитано 13.02.2009, 20:51   #26
pigtail
Временная регистрация
 
Регистрация: 22.06.2006
Сообщений: 82
Сказал спасибо: 5
Сказали Спасибо 9 раз(а) в 8 сообщении(ях)
pigtail на пути к лучшему
По умолчанию

номер регистра
pigtail вне форума  
Непрочитано 13.02.2009, 21:37   #27
avr123-nm-ru
Почётный гражданин KAZUS.RU
 
Регистрация: 13.05.2006
Адрес: Москва
Сообщений: 3,559
Сказал спасибо: 76
Сказали Спасибо 326 раз(а) в 230 сообщении(ях)
avr123-nm-ru на пути к лучшему
По умолчанию

Сообщение от FedorChek
@4 это адрес
"по адресу" 4 - т.е. в регистре с адресом 4
__________________
Обучалка AVR PIC ARM начинающим программирование курс самоучитель шаг за шагом с нуля, CVAVR, PROTEUS, MPLAB, WinAVR, IAR, KEIL электроника - http://proavr.narod.ru
avr123-nm-ru вне форума  
Непрочитано 14.02.2009, 13:32   #28
picavr
Почётный гражданин KAZUS.RU
 
Аватар для picavr
 
Регистрация: 07.10.2007
Адрес: Луганск
Сообщений: 1,816
Сказал спасибо: 13
Сказали Спасибо 399 раз(а) в 214 сообщении(ях)
picavr на пути к лучшему
По умолчанию

Сообщение от FedorChek
Книги я читаю но некоторые ситуации меня ставят в тупик
Адрессация регистров 0-31, регистров ввода-вывода и ОЗУ, описана в даташитах на контроллеры. Там это показано, что адресное пространство непрерывное,

вот к примеру команда
sts 0,R16
аналогична
mov R0,R16

то есть ОЗУ 0адрес = это регистр R0
думаю то же самое и с регистрами ввода-вывода, но не проверял.
picavr вне форума  
Непрочитано 14.02.2009, 13:40   #29
picavr
Почётный гражданин KAZUS.RU
 
Аватар для picavr
 
Регистрация: 07.10.2007
Адрес: Луганск
Сообщений: 1,816
Сказал спасибо: 13
Сказали Спасибо 399 раз(а) в 214 сообщении(ях)
picavr на пути к лучшему
По умолчанию

Сообщение от FedorChek
Привет! Вопросик созрел. команды ассемблера отличаются в зависимости от типа микроконтроллера меня интересует мега8 и мега88 или для АВР всё одинаково. листинг ВЫШЕ. Спасибо.
Команды одинаковые!!!! для всего семейства AVR
прото некоторые каманды не доступны в некоторых контролерах.

пример. в AT90S1200 нет ОЗУ, нет стека, нельзя читать и писать память FLASH и нет перемножителя, и в нём нет команд поддерживающих эти функции.
sts
lds
st
ls
push
pop
lpm
muv

аналогично и другие контроллеры. Если неельзя чего то делать то и комманда не реализована в микропрограмном автомате этого контроллера.

блин... по моему это ясно как бозий день... просто ПИПЕЦ что приходится РАЗЖОВЫВАТЬ
picavr вне форума  
Непрочитано 14.02.2009, 14:10   #30
Vov123
Вид на жительство
 
Регистрация: 03.06.2007
Сообщений: 368
Сказал спасибо: 3
Сказали Спасибо 59 раз(а) в 52 сообщении(ях)
Vov123 на пути к лучшему
По умолчанию

sts 0,R16;-записать в регистр R16 число 0 анологична команде mov R0,R16-переслать в регистр R0 содержимое R16
Vov123 вне форума  
Закрытая тема

Закладки


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

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, время: 22:34.


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