Разработка аппаратно-программных средств микропроцессорной системы

контрольная работа

Выбор микроконтроллёра

Требования к микроконтроллеру были изложены выше. В современное время многие производители (Motorola, Zilog,Microchip, Scinex, Atmel) предлагают широкий выбор микросхем, для разных задач и решений. Как правило, для решения стандартных типов задач выбор между фирмами подает на личное усмотрение программиста, так как все микросхемы лежат примерно в одной ценовой категории и обладают схожими функциональными параметрами.

Для построения системы мной была выбрана линейка микроконтроллеров Atmel. Из наиболее дешевых микроконтроллеров можно выделить два класса: Tiny (современные микроконтроллеры с резко урезанными возможностями) и AVR (довольно старые, вследствие чего и дешевые). Для решения поставленной задачи у семейства Tiny недостаточно портов ввода-вывода, поэтому было взято семейство AVR. Наиболее подходящим по требованиям оказался - ATmega8.

Основные характеристики выбранного микроконтроллера:

8-битная RISC-архитектура

Высокая производительность (до 16 MIPS при fтакт = 16МГц)

130 инструкция, многие из которых выполняются за 1 такт

32 8-битных регистра общего назначения

8 КБ встроенной flash-памяти

1КБ статического ОЗУ

512 байт EEPROM

Два 8-битных и один 16-битный таймера

Три ШИМ-канала

6-канальный (DIP) или 8-канальный (TQFP, QFN/MLF) 10-битный АЦП

USART

SPI-интерфейс

Сторожевой таймер

Аналоговый компаратор

Встроенный RC-генератор

23 программируемые линии ввода/вывода

Частота тактирования: 0 - 8 МГц (ATmega8L)

0 - 16 МГц (ATmega8)

Напряжение питания: 2.7 - 5.5 В (ATmega8L)

4.6 - 5.5 В (ATmega8)

Потребляемый ток при fтакт = 8 МГц и Uпит = 5 В не более 15 мА

Рис. 4 - Внутренняя блок-схема микроконтроллера ATmega8.

Как видно данный микроконтроллер несёт в себе аппаратно большие возможности, чем мы используем для написания устройства.

Микросхема имеет в своём составе АЦП, работающее по напряжению и ШИМ, поэтому придется добавлять к нему устройства преобразования сигнала.

Делись добром ;)