Эксперт
Сергей
Сергей
Задать вопрос
Мы готовы помочь Вам.

Цель работы: Получение практических навыков использования внутренней EEPROM микроконтроллеров.

Лабораторное задание: Разработать программу для микроконтроллера TinyAVR, за-пись и чтение данных в EEPROM микроконтроллера.
.
Порядок выполнения работы:

1. Собрал схему устройства в программе «Proteus» в соответствии с заданием.

 

2. В вкладке «Source Code» набрал следующий код программы:

.device ATtiny2313
.def temp=r16
.def adres=r18
.def sys=r20
.cseg
.org 0
rjmp Init

Init:
ldi temp,low(RAMEND)
out SPL,temp
clr temp
out DDRD,temp
ldi temp,255
out PORTD,temp
ser temp
out DDRB,temp
clr temp
out PortB,temp
in temp,PIND
WRITE_0:
in r15,SREG
cli
sbic EECR,EEPE
rjmp WRITE_0
ldi adres,0x50
out EEAR,adres
out EEDR,temp
sbi EECR,EEMPE
sbi EECR,EEPE
out SREG,r15
WRITE_1:
ldi temp,0b11110011
in r15,SREG
cli
sbi EECR,EEPE
rjmp WRITE_1
ldi adres,0x60
out EEAR,adres
out EEDR,temp
sbi EECR,EEMPE
sbi EECR,EEPE
out SREG,r15

READ_0:
in r15,SREG
cli
sbic EECR,EEWE
rjmp READ_0
ldi adres,0x50
out EEAR,adres
sbic EECR,EERE
in temp,EEDR
out SREG,r15
READ_1:
in r15,SREG
cli
sbic EECR,EEWE
rjmp READ_1
ldi adres,0x60
out EEAR,adres
sbic EECR,EERE
in sys,EEDR
in r15,SREG
or temp,sys
out PORTB,temp
reti

3. Произвел симуляцию программы и убедился в правильности работы программы.

4. В соответствий с вариантом произвел установку переключателей тумблера SW1 в соответ-ствий с вариантом.

5. Изменил программный код соответствий с вариантом, установил необходимые адреса, данные и логические операций.

Вывод: в ходе лабораторной работы получил практические навыки использования внут-ренней EEPROM микроконтроллеров, собрал схему и написал код программы, получили навыки работы в программе «Proteus». В результате разработал программу для микроконтрол-лера TinyAVR в EEPROM микроконтроллера.

Была ли полезна данная статья?
Да
60.82%
Нет
39.18%
Проголосовало: 1095

или напишите нам прямо сейчас:

⚠️ Пожалуйста, пишите в MAX или заполните форму выше.
В России Telegram и WhatsApp блокируют - сообщения могут не дойти.
Написать в MAXНаписать в TelegramНаписать в WhatsApp