Принципы построения многоуровневых сетей
Курсовой проект - Компьютеры, программирование
Другие курсовые по предмету Компьютеры, программирование
1. Техническое задание
Техническое задание (ТЗ) на проектирование должно содержать исчерпывающую и однозначную информацию о требованиях, предъявляемых к проекту. Техническое задание является результатом внешнего проектирования и являет собой объемный документ, в котором на естественном языке описана словесная модель проектируемой системы и требования к ней. Несмотря на строгость и точность формулировок ТЗ не дает однозначного описания объекта проектирования и не позволяет непосредственно переходить от описания функционирования системы к ее техническому воплощению.
1.1 Назначение устройства
Требуется написать программу для построения многоуровневой модели сети на платформе лабораторного макета с микроконтроллером (МК) Аtmega128. Обязательными объектами такой сети являются: компьютер, сеть, сервер, коммутатор и здание. Основные функции - построение модели многоуровневых связных сетей и подсетей с помощью Atmega128.
Входные/выходные параметры
Входные и выходные параметры определяются из задания. Входными сигналами можно считать воздействие пользователя на кнопочную матрицу, все воздействия делятся на три режима: режим меню, режим навигации и режим линии. В режиме меню идет выбор активного элемента, в режиме навигации - перемещение этого элемента по холсту или переход по уровням вложенности, в режиме линии - соединение элементов между собой.
2. Техническое предложение
.1 Общий алгоритм решения задачи
Общий алгоритм решения задачи, описанной в техническом задании, приведен на рисунке 2.1:
Рисунок 2.1 - Общий алгоритм решения задачи
.2 Выбор элементной базы
Требуемое устройство должно содержать следующие блоки:
Микроконтроллер ATmega128;
ЖК-дисплей с разрешением не меньше 128х64 пикселя;
Кнопки - 12 штук, организованные в матрицу 3x4;
Память - EEPROM 8192 x 8 бит.
3. Эскизный проект
.1 Описание архитектуры проекта и выбранных блоков
Целью данного проекта является написание программы для построения многоуровневой модели сети на платформе лабораторного макета с МК Atmega128. Необходимыми блоками для реализации этой задачи являются: ЖК-дисплей, память, МК и блок кнопок. Блок-схема лабораторного макета представлена на рисунке 3.1:
Рисунок 3.1 - Блок схема лабораторного макета
Сплошным контуром выделена часть устройства, которая используется программой, а именно:
Блок кнопок (БК) - состоит из 12 кнопок организованных в матрицу 3х4 для подключения которой требуется 3+4 (7) ЛВВ;
Блок ЖК дисплея (БЖКД) - содержит дисплей управляемый через шину I2C и подключаемый через две ЛВВ;
Блок памяти (БПам) - содержит микросхему EEPROM памяти подключенную с помощью шины I2C. Особенностью шины является возможность одновременного подключения нескольких устройств к одной и той же шине;
Блок программатора (БПрог) - содержит в себе JTAG-совместимый программатор и подключается к МК через JTAG интерфейс предусмотренный в МК;
USB-RS232 преобразователь это специальная микросхема которая служит мостом между шинами USB и RS232.
4. Технический проект
4.1 Характеристики основных частей лабораторного макета
Микроконтроллер (ATmega128) - 8-разрядный AVR-микроконтроллер с внутрисистемной программируемой флэш-памятью емкостью 128 кбайт построенный на RISC-архитектуре (133 мощных инструкций, 32 8-разрядных регистров общего назначения, регистры управления встроенной периферией, производительность до 16 млн. операций в секунду при тактовой частоте 16 МГц). Интерфейс JTAG предоставляет возможности программирования флэш-памяти, ЭСППЗУ, предоставляет множество функций встроенной отладки. Рабочее напряжение от 4.5 до 5.5В.
Память (EEPROM) - используется микросхема AT24C64 фирмы Atmel имеющая 8192х8 бит памяти и работающая на шине I2C.
ЖК-дисплей (COG ЖК индикатор TIC149 фирмы Ampire) - имеет разрешение 133х64 и содержит кроме ЖК матрицы драйвер PCF8535 (управляемый по I2C шине) фирмы Philips Semiconductors.
В качестве кнопок используются тактовые кнопки с размером 6х6х8мм.
JTAG-совместимый программатор - использует МК фирмы Atmel ATmega16, в который заранее записана прошивка, позволяющая программировать основной микроконтроллер.
диаграмма микросхема интерфейс
5. Реализация
5.1 Интегрированная среда разработки
После длительного анализа различных сред и анализа требования проекта была выбрана интегрированная среда разработки IAR Embedded Workbench (рисунок 5.1), которая представляет собой очень мощный и удобный инструмент программирования микроконтроллеров фирмы Atmel семейства AVR, включая Mega. Это отладочная среда, которая работает под управлением Windows 95, 98, NT. В нее входят компилятор с языка Си, ассемблер, компоновщик, и отладчик, при этом возможно взаимодействие с внешними программами типа AVR Studio. Встроенный редактор специально настроен на синтаксис языка Си, а дополнительные утилиты и хорошая встроенная система помощи дополнительно облегчают написание программ.
Рисунок 5.1 - Внешний вид IAR Embedded Workbench
Одним из главных достоинств среды разрыбоки IAR Embedded Workbench является один из лучших компиляторов Си по эффективности кода и множество алгоритмов оптимизации предназначенных специально для AVR-микроконтроллеров (что является очень важным параметром при работе с малым объемом ресурсов памяти). Также к плюсам данной интегрированной среды разработки можно отнести широкие возможно