Знакомство с эмулятором микроконтроллера Atmega 8535
Автор: Neallot • Март 7, 2024 • Лабораторная работа • 347 Слов (2 Страниц) • 95 Просмотры
МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ
ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ОБРАЗОВАНИЯ
«ТЮМЕНСКИЙ ИНДУСТРИАЛЬНЫЙ УНИВЕРСИТЕТ»
Институт геологии и нефтегазодобычи
Кафедра кибернетических систем
ЛАБОРАТОРНАЯ РАБОТА №1
по дисциплине: ПРОЕКТИРОВАНИЕ МИКРОПРОЦЕССОРНЫХ СИСТЕМ
На тему: «Знакомство с эмулятором микроконтроллера Atmega 8535»
Выполнил:
Студент группы ИСАУбп-20-1
Украинский Владимир Святославович
Проверила:
Овчинникова Ю.М.
Тюмень 2024
Цель работы: познакомиться с эмулятором микроконтроллера Atmega 8535. Записать в порты микроконтроллера Atmega 8535 числа.
Вариант:
№ варианта | PORT A | PORT B | PORT C | PORT D |
13 | 0 | 4 | 3 | 5 |
Ход работы:
- Запустить ICCv7 for AVR
- Project – New
[pic 1]
Создать новый проект
- Application builder
[pic 2]
- На вкладке CPU выбрать M8535 и частоту 8 мГц[pic 3]
- Ввести текст программы
[pic 4]
- Сохранить файл программы [pic 5]с именем как у проекта (см. п. 2) и с расширением .c (расширение прописать вручную)
- Добавить файл в проект в древе проекта в правой части окна. П.к.мпо files – add file
[pic 6]
Открыть файл с расширением .c
- Build project
[pic 7]
- Убедиться в отсутствии ошибок
[pic 8]
[pic 9]
- Запустить AVR Studio 4
- Открыть новый проект [pic 10]
- Выбрать файл с расширением .hex
- Сохранить файл с расширением .aps
- Выбрать платформу AVRSimulator и устройство ATmega8535[pic 11]
- Запустить программу нажавAutostep[pic 12]
Убедиться в правильности работы программы:
[pic 13]
Программа работает правильно, выдает заданные значения.
Текст программы:
//ICC-AVR application builder : 18.01.2018 16:39:28
// Target : M8535
// Crystal: 8.0000Mhz
#include <iom8535v.h>
#include <macros.h>
void port_init(void)
{
PORTA = 0x00;
DDRA = 0x00;
PORTB = 0x00;
DDRB = 0x00;
PORTC = 0x00; //m103 output only
DDRC = 0x00;
PORTD = 0x00;
DDRD = 0x00;
}
//call this routine to initialize all peripherals
void init_devices(void)
{
//stop errant interrupts until set up
CLI(); //disable all interrupts
port_init();
MCUCR = 0x00;
GICR = 0x00;
TIMSK = 0x00; //timer interrupt sources
SEI(); //re-enable interrupts
//all peripherals are now initialized
}
void main(void)
{
while(1)
{
PORTA=0;
PORTB=4;
PORTC=3;
PORTD=5;
}
}
Скриншоты работы программы:
...