Мегаобучалка Главная | О нас | Обратная связь


Адресное пространтство МК Atmega128 и AT90CAN128



2015-11-20 1252 Обсуждений (0)
Адресное пространтство МК Atmega128 и AT90CAN128 0.00 из 5.00 0 оценок




Вид корпуса и назначение выводов микроконтроллера AT90CAN128

Вид корпуса и назначение выводов микроконтроллера ATmega128



Структурная схема микроконтроллера ATMega128

Файл регистров общего назначения

Объявление микроконтроллера
Для ATmega8515 .device ATmega8515 .include "m8515def.inc"
Для ATmega103 .device ATmega103 .include "m103def.inc"
Для ATmega128 .device ATmega128 .include "m128def.inc"
Для AT90CAN128 .device AT90CAN128 .include "can128def.inc"


 

Загрузка регистра константой ldi r30, $23 ldi r16,0х23 Загрузка регистровой пары константой ldi ZL, $23 ldi ZH, $11
Приращение регистра Z на 4: adiw z, 4 Пример определения номера разряда первого 0 справа. Clr r16 Ldi r17,0x17
Пересылка между регистрами mov r31, r16 Loop: inc r16 lsr r17 brcs loop dec r16 ; при r16 = 8 - регистр r17 не содержит нулей

Работа с портами (поразрядное управление)

Обобщенная структура порта без дополнительных функций

Эквивалентная схема входа/выхода

DDRB – регистр направления порта В

PORTB – выходной регистр данных порта В

PINB – входной синхронный регистр защелки порта В


Пример: Настроить порт В – 0-3 – разряды на прием, 4 – не задействован(Z-состояние), 5-7 на выход (причем 7-разряд в 1, остальные в 0).

Ldi r16, 0xe0; b11100000

Out DDRB, r16

Ldi r16, 0xe0; b10001111

Out PORTB, r16

Переустановить разряды 5-6 в состояние логической 1

In r16,PORTB ;read PORTB latch

sbr r16,(1<<PB6)+(1<<PB5) ;set PB6 and PB5 (use masks, not bit#)

Out PORTB,r16

Выполнить опрос входов

sbis PINB, 0 ; sbis работает с портами, номера которых [0..31] (<=$1F)

rjmp put_bit0 ; PINB – адрес $16

Sbis PINB, 1

Rjmp put_bit1

Sbis PINB, 2

Rjmp put_bit2

Sbis PINB, 3

Rjmp put_bit3

Rjmp noput_bits

Вывод данных из порта Ввод данных в порт

Работа со стеком

;***** Инициализация указателя стека **** ldi R20, $FF ; загрузка промежуточного ; регистра R20 младшим байтом адреса начала ; стека out SPL, R20 ; загрузка младшего байта ; указателя стека ldi R20, $10 ; загрузка промежуточного ; регистра R20 старшим байтом адреса начала ; стека out SPH, R20 ; загрузка старшего байта Запись регистра в стек push R30 ; сохранение указателя Z в стеке push R31
Считывание из вершины стека в вершину pop R31 ; извлечение указателя Z из стека pop R30 ;

Таблица 1.1. Регистры ввода-вывода микроконтроллера ATmega128

Название Адрес Функция
UCSR1C ($9D) Регистр управления и состояния С USART1
UDR1 ($9C) Регистр данных USART1
UCSR1A ($9B) Регистр управления и состояния A USART1
UCSR1B ($9A) Регистр управления и состояния В USART1
UBRR1L ($99) Регистр скорости передачи USART1, младший байт
UBRR1H ($98) Регистр скорости передачи USART1, старший байт
UCSR0C ($95) Регистр управления и состояния С USART0
UBRR0H ($90) Регистр скорости передачи USART0, старший байт
TCCR3C ($8C) Регистр управления С таймера/счетчика ТЗ
TCCR3A ($8B) Регистр управления А таймера/счетчика ТЗ
TCCR3B ($8A) Регистр управления В таймера/счетчика ТЗ
TCNT3H ($89) Счетный регистр таймера/счетчика ТЗ, старший байт
TCNT3L ($88) Счетный регистр таймера/счетчика ТЗ, младший байт
OCR3AH ($87) Регистр совпадения А таймера/счетчика ТЗ, старший байт
OCR3AL ($86) Регистр совпадения А таймера/счетчика ТЗ, младший байт
OCR3BH ($85) Регистр совпадения В таймера/счетчика ТЗ, старший байт
OCR3BL ($84) Регистр совпадения В таймера/счетчика ТЗ, младший байт
OCR3CH ($83) Регистр совпадения С таймера/счетчика ТЗ, старший байт
OCR3CL ($82) Регистр совпадения С таймера/счетчика ТЗ, младший байт
ICR3H ($81) Регистр захвата таймера/счетчика ТЗ, старший байт
ICR3L ($80) Регистр захвата таймера/счетчика ТЗ, младший байт
ETIMSK ($7D) Дополнительный регистр маски прерываний от таймеров/счетчиков
ETIFR ($7C) Дополнительный регистр флагов прерываний от таймеров/счетчиков
TCCR1C ($7A) Регистр управления С таймера/счетчика Т1
OCR1CH ($79) Регистр совпадения С таймера/счетчика Т1, старший байт
OCR1CL ($78) Регистр совпадения С таймера/счетчика Т1, младший байт
TWCR ($74) Регистр управления TWI
TWDR ($73) Регистр данных TWI
TWAR ($72) Регистр адреса TWI
TWSR ($71) Регистр состояния TWI
TWBR ($70) Регистр скорости передачи TWI
OSCCAL ($6F) Регистр калибровки тактового генератора
XMCRA ($6D) Регистр управления А внешней памятью
XMCRB ($6C) Регистр управления В внешней памятью
EICRA ($6A) Регистр управления А внешними прерываниями
SPMCR ($68) Регистр управления памятью программ
PORTG ($65) Регистр данных порта G
DDRG ($64) Регистр направления данных порта G
PING ($63) Выводы порта G
PORTF ($62) Регистр данных порта F
DDRF ($61) Регистр направления данных порта F
SREG $3F($5F) Регистр состояния
SPH $3E($5E) Указатель стека, старший байт
SPL $3D($5D) Указатель стека, младший байт
XDIV $3C($5C) Регистр управления делителем тактовой частоты
RAMPZ $3B($5B) Регистр выбора страницы
EICRB $3A($5A) Регистр управления В внешними прерываниями
EIMSK $39($59) Регистр маски внешних прерываний
EIFR $38 ($58) Регистр флагов внешних прерываний
TIMSK $37($57) Регистр маски прерываний от таймеров/счетчиков
TIFR $36($56) Регистр флагов прерываний от таймеров/счетчиков
MCUCR $35($55) Регистр управления микроконтроллером
MCUCSR $34($54) Регистр управления и состояния микроконтроллера
TCCR0 $33($53) Регистр управления таймером/счетчиком Т0
TCNT0 $32($52) Счетный регистр таймера/счетчика Т0
OCR0 $31($51) Регистр совпадения таймера/счетчика Т0
ASSR $30($50) Регистр состояния асинхронного режима
TCCR1A $2F($4F) Регистр управления А таймера/счетчика Т1
TCCR1B $2E($4E) Регистр управления В таймера/счетчика Т1
TCNT1H $2D($4D) Счетный регистр таймера/счетчика Т1, старший байт
TCNT1L $2C($4C) Счетный регистр таймера/счетчика Т1, младший байт
OCR1AH $2B($4B) Регистр совпадения А таймера/счетчика Т1, старший байт
OCR1AL $2A($4A) Регистр совпадения А таймера/счетчика Т1, младший байт
OCR1BH $29($49) Регистр совпадения В таймера/счетчика Т1, старший байт
OCR1BL $28($48) Регистр совпадения В таймера/счетчика Т1, младший байт
ICR1H $27($47) Регистр захвата таймера/счетчика Т1, старший байт
ICR1L $26($46) Регистр захвата таймера/счетчика Т1, младший байт
TCCR2 $25($45) Счетный регистр таймера/счетчика Т2
TCNT2 $24($44) Регистр совпадения таймера/счетчика Т2
OCR2 $23($43) Регистр совпадения таймера/счетчика Т2
OCDR $22($42) Регистр внутрисхемной отладки
WDTCR $21($41) Регистр управления сторожевым таймером
SFIOR $20($40) Регистр специальных функций
EEARH $1F($3F) Регистр адреса EEPROM, старший байт
EEARL $1E($3E) Регистр адреса EEPROM, младший байт
EEDR $1D($3D) Регистр данных EEPROM
EECR $1C($3C) Регистр управления EEPROM
PORTA $1B($3B) Регистр данных порта А
DDRA $1A($3A) Регистр направления данных порта А
PINA $19($39) Выводы порта А
PORTB $18($38) Регистр данных порта В
DDRB $17($37) Регистр направления данных порта В
PINB $16($36) Выводы порта В
PORTC $15($35) Регистр данных порта С
DDRC $14($34) Регистр направления данных порта С
PINC $13($33) Выводы порта С
PORTD $12($32) Регистр данных порта D
DDRD $11($31) Регистр направления данных порта D
PIND $10($30) Выводы порта D
SPDR $0F($2F) Регистр данных SPI
SPSR $0E($2E) Регистр состояния SPI
SPCR $0D($2D) Регистр управления SPI
UDR0 $0C($2C) Регистр данных USART0
UCSR0A $0B($2B) Регистр управления и состояния A USART0
UCSR0B $0A($2A) Регистр управления и состояния В USART0
UBRR0L $09($29) Регистр скорости передачи USART0, младший байт
ACSR $08($28) Регистр управления и состояния аналогового компаратора
ADMUX $07($27) Регистр управления мультиплексором АЦП
ADCSRA $06($26) Регистр управления и состояния АЦП
ADCH $05($25) Регистр данных АЦП, старший байт
ADCL $04($24) Регистр данных АЦП, младший байт
PORTE $03($23) Регистр данных порта Е
DDRE $02($22) Регистр направления данных порта Е
PINE $01($21) Выводы порта Е
PINF $00($20) Выводы порта F



Карта памяти программ Карта памяти данных SRAM

Адресное пространтство МК Atmega128 и AT90CAN128


XRAM (0 тактов ожидания)

External SRAM (XRAM)

XRAM (1 такт ожидания)




2015-11-20 1252 Обсуждений (0)
Адресное пространтство МК Atmega128 и AT90CAN128 0.00 из 5.00 0 оценок









Обсуждение в статье: Адресное пространтство МК Atmega128 и AT90CAN128

Обсуждений еще не было, будьте первым... ↓↓↓

Отправить сообщение

Популярное:
Почему люди поддаются рекламе?: Только не надо искать ответы в качестве или количестве рекламы...
Как вы ведете себя при стрессе?: Вы можете самостоятельно управлять стрессом! Каждый из нас имеет право и возможность уменьшить его воздействие на нас...



©2015-2024 megaobuchalka.ru Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. (1252)

Почему 1285321 студент выбрали МегаОбучалку...

Система поиска информации

Мобильная версия сайта

Удобная навигация

Нет шокирующей рекламы



(0.027 сек.)