Изучение структуры ядра микроконтроллера AVR Atmega16 и работы его портов ввода-вывода
Автор: Oksa83 • Март 23, 2018 • Контрольная работа • 1,591 Слов (7 Страниц) • 960 Просмотры
Изучение структуры ядра микроконтроллера AVR Atmega16 и работы его портов ввода-вывода.
Цель работы: Ознакомление со структурой ядра микроконтроллера ATmega16 и получение навыков управления его портами ввода-вывода.
Задание: Написать программу МК.
При включении тумблера 0 в линейке светодиодов зажигаются светодиоды 0 и1 и сдвигаются влево с интервалом времени одного сдвига 0,5 секунд.
Общие сведения
Микропроцессорное устройство (МПУ) служит для выполнения арифметических, логических операций и операций управления, записанных в машинном коде. В данной контрольной работе рассматриваются вопросы изучения 8-разрядного микроконтроллера Atmega16 фирмы Atmel.
Ядро AVR построено на технологии RISC и оптимизировано под кодирование на языке C. Это обеспечивает хорошее качество разработки с небольшими затратами времени по сравнению с разработкой программного обеспечения на ассемблере.
Интегрированная среда разработки (IDE) Atmel Studio 6 служит для разработки и отладки AVR-программ, в ее состав входят средства управления проектом, редактор текстов, симулятор, внутрисхемный эмулятор. Для знакомства со схемотехникой подключения к микроконтроллеру датчиков, устройств индикации, кнопок, переключателей и т. д. используется пакет аналого-цифрового моделирования Proteus.
Порты ввода/вывода (далее я буду писать сокращенно – ПВВ) – предназначены для общения микроконтроллера с внешними устройствами. С их помощью мы передаем информацию другим устройствам и принимаем информацию от них. В зависимости от типа, микроконтроллер может иметь на своем борту от одного до семи ПВВ. Каждому порту ввода/вывода присвоено буквенное обозначение – A, B, C, D, E, F, G. Все порты в микроконтроллере равнозначные, восьмиразрядные (содержат восемь линий, они же выводы, они же разряды, они же биты) и двунаправленные – могут как передавать, так и принимать информацию. ПВВ в микроконтроллере обслуживают все его устройства, в том числе и периферийные. Поэтому, в зависимости от того какое устройство будет работать с портом он может принимать и передавать или цифровую информацию, или аналоговую.
Блок-схема решения задачи
Разработка алгоритма решения задачи (алгоритмизация) - один из самых сложных и ответственных этапов. Он включает формализацию процесса обработки данных и представление его в форме, позволяющей упростить дальнейшее кодирование алгоритма, т. е. его запись на одном из алгоритмических языков.
Для разработки структуры программы удобнее пользоваться записью алгоритма в виде блок-схемы. Для изображения основных алгоритмических структур и блоков в блок-схемах используют специальные графические символы.
[pic 1]
Текст программы
После построения блок-схемы алгоритма программы начинается следующая стадия – кодирование.
Программа должна однозначно отображать алгоритм решения задачи.
Разработка программы включает:
1) подготовку тестовых исходных данных;
2) написание текста программы на алгоритмическом языке;
3) перенос программ и данных на машинные носители компьютера;
4) отладку и тестирование программы.
/*
* LabVDM.c
*
* Created: 24.11.2017 15:25:58
* Author: Миронова
*/
#define F_CPU 1000000
#include
#include
int i;
int main(void)
{DDRD=0xFF;
DDRC=0;
PORTC=0xFF;
while(1)
{if (PINC==0b00000001)
{PORTD=0b00000011;
for (i=0; i<8; i++)
{if (PINC!=0b00000111) break;
_delay_ms(500);
PORTD<<=0,5;
}
}
else {PORTD=0;};
}
}
Организация динамической индикациию
Цель работы: Изучение способа сопряжения микропроцессора AVR Atmega16 со светодиодным многоразрядным индикатором.
...