Всё сдал! - помощь студентам онлайн Всё сдал! - помощь студентам онлайн

Реальная база готовых
студенческих работ

Узнайте стоимость индивидуальной работы!

Вы нашли то, что искали?

Вы нашли то, что искали?

Да, спасибо!

0%

Нет, пока не нашел

0%

Узнайте стоимость индивидуальной работы

это быстро и бесплатно

Получите скидку

Оформите заказ сейчас и получите скидку 100 руб.!


Написать и откомпилировать программу для микроконтроллера.

Тип Курсовая
Предмет Программирование

ID (номер) заказа
4079125

500 руб.

Просмотров
1094
Размер файла
530.5 Кб
Поделиться

Ознакомительный фрагмент работы:

Содержание

Введение. 2
1. Анализ технического задания 3
2. Разработка структурной схемы 4
3. Выбор микроконтроллера 5
4. Описание принципальной схемы. 9
5. Разработка программного обеспечения. 10
6. Моделирование работы устройства 11
Заключение. 13
Список литературы 14
Приложение. 15
Приложение 1 . Перечень элементов. 15
Приложение 2.Исходный код программы. 15

Введение.
Повышение технического уровня и эффективности электронного
оборудования на основе новейших достижений электроники - одна из
важнейших задач развития общества. Создание микропроцессоров
обусловлено достижениями в области технологии производства больших
интегральных схем (БИС). Вслед за появлением микропроцессоров
разрабатывается и получает широкое развитие специальная
многофункциональная аппаратура, используемая при решении большого
числа задач современной техники. Микропроцессоры позволяют на единой
технологической схемотехнической базе за счет программирования создавать
различные типы приборов. Так и в своей работе я решил реализовать прибор
на основе микропроцессора. В качестве микроконтроллера выбран
Atmega3288
В данной курсовой работе было разработано устройство на
микроконтроллере, написана программа. Данным устройством является
светофор на основе микроконтролера.
При проектировании данной курсовой работой были поставлены
следующие задачи:
1) Продумать, спроектировать и на практике проверить устройство на
основе микроконтроллера;
2) написать и откомпилировать программу для микроконтроллера.
3)Выполнить моделирование в программе Proteus.

1. Анализ технического задания
Светофоры предназначены для поочередного пропуска участников
движения через определенный участок улично-дорожной сети, а также для
обозначения опасных участков дорог. В зависимости от условий светофоры
применяются для управления движением в определенных направлениях или
по отдельным полосам данного направления:
1. в местах, где встречаются конфликтующие транспортные, а также
транспортные и пешеходные потоки (перекрестки, пешеходные
переходы);
2. · по полосам, где направление движения может меняться на
противоположное;
3. · на железнодорожных переездах, разводных мостах, причалах,
паромах, переправах;
4. · при выездах автомобилей спецслужб на дороги с интенсивным
движением;
5. · для управления движением транспортных средств общего
пользования.
Порядок чередования сигналов, их вид и значение, принятые в России,
соответствуют международной Конвенции о дорожных знаках и сигналах.
Наиболее распространены светофоры с сигналами (обычно круглыми)
трех цветов: красного, жёлтого и зелёного. В некоторых странах вместо
жёлтого используется оранжевый цвет. Сигналы могут быть расположены
как вертикально (при этом красный сигнал всегда располагается сверху, а
зелёный — снизу), так и горизонтально (при этом красный сигнал всегда
располагается слева, а зелёный — справа). При отсутствии других,
специальных светофоров они регулируют движение всех видов
транспортных средств и пешеходов.
Для реализации модели светофора необходимо использовать светодиоды
различных цветов, управляющим элементом будет являться
микроконтроллер.

4

Светофор будет работать по следующему алгоритму:
1) Горит красный свет (2 с, продолжительность можно изменить

программно);

2) Начинает мигать желтый с частотой 1 Гц;
3) Включается зеленый свет (2 с, продолжительность можно

изменить программно);

4) Начинает мигать желтый с частотой 1 Гц
5) Цикл повторяется.
Необходимо использовать 2 светофора, при этом в то время, когда на
одном будет гореть красный, на другом будет зеленый и наоборот.

2. Разработка структурной схемы
Структурная схема приведена на рисунке 1.

Микроконтроллер

Светофоор 1

Светофоор 2

Рисунок 1 – Структурная схема

Она состоит из микроконтроллера и двух светофоров. Включение
сигналов светофора осуществляется управление уровня на выходах МК.

5

3. Выбор микроконтроллера
Основным элементов является микроконтроллер. Одна из самых
популярных серий универсальных микроконтроллеров — это
микроконтроллеры AVR выпускаемые американской фирмой Atmel.
Микросхемы AVR широко используются в самых различных конструкциях.
Микроконтроллер, отвечающий всем требованиям, может быть 8-битный
однокристальный семейства ATmega. Будем использовать Atmega3288.
Микроконтроллер Atmega3288P является 8 разрядным
микроконтроллером, предназначенным для встраиваемых приложений. Он
изготавливается по малопотребляющей КМОП технологии, которая в
сочетании с усовершенствованной RISC архитектурой позволяет достичь
наилучшего соотношения быстродействие/энергопотребление.
Микроконтроллер построен по двухшинной (гарвардской) архитектуре и
имеет раздельные шины памяти программ и памяти данных.
Характеристики

 Рабочее напряжение - 5 В;
 Входное напряжение (рекомендуемое) - 7-12 В;
 Входное напряжение (предельное) - 6-20 В;
 Цифровые Входы/Выходы - 14 (6 из которых могут
использоваться как выходы ШИМ);
 Аналоговые входы - 6;
 Постоянный ток через вход/выход - 40 мА;
 Постоянный ток для вывода 3.3 В - 50 мА;
 Флеш-память - 32 Кб при этом 2 Кб используются для
загрузчика;
 ОЗУ – 2 Кб ;
 EEPROM - 1 Кб ;
 Тактовая частота - 16 МГц;
. Микроконтролер AVR ATMEGA328 представлена на рисунке 2

6

Рисунок 2– Микроконтролер AVR ATMEGA328

Atmega328/L является КМОП 8-битным микроконтроллером,
построенным на расширенной AVR RISC архитектуре. Используя
команды, исполняемые за один машинный такт, контроллер достигает
производительности в 1 MIPS на рабочей частоте 1 МГц, что
позволяет разработчику эффективно оптимизировать потребление
энергии за счёт выбора оптимальной производительности.
AVR ядро сочетает расширенный набор команд с 32 рабочими
регистрами общего назначения. Все 32 регистра соединены с АЛУ, что
обеспечивает доступ к двум независимым регистрам на время
исполнения команды за один машинный такт. Благодаря выбранной
архитектуре достигнута наивысшая скорость кода и соответственно
высокая производительность в 10 раз превосходящая скорость
соответствующего CISC микроконтроллера.
Характеристики микроконтроллера:
 Высокопроизводительные, мало потребляющие AVR 8- битные
микроконтроллеры;

7

 Развитая RISC архитектура:
- 131 исполняемых команд, большинство за один машинный такт
- 32 рабочих регистра общего назначения
- полностью статический режим работы
- производительность до 16 MIPS при 16 МГц
- встроенный 2-х тактовый умножитель
 Энергонезависимая память программ и данных
- 32К байт внутрисистемно самопрограммируемой FLASH памяти с
количеством циклов перепрограммирования до 10 000.
- Опционно загрузочная область памяти с независимыми
ключевыми битами, внутрисистемное программирование
встроенной загрузочной программой, правильное чтение в процессе
записи.
- 1024 байт EEPROM с допустимым количеством циклов стирания
записи до 100 000.
- 2К байт внутренней SRAM
- программируемый ключ защиты программ
 JTAG (IEEE1149.1 совместимый) интерфейс
- Сканирование памяти в соответствии с JTAG стандартом
- Встроенная поддержка отладчика
- Программирование FLASH, EEPROM, охранных и ключевых бит
через JTAG интерфейс
 Периферийные функции
- два 8-битных таймера/счётчика с программируемым
предделителем и режимом сравнения
- один 16-битный таймер/счётчик с программируемым
предделителем, режимом сравнения и захвата
- счётчик реального времени с программируемым генератором
- четыре ШИМ генератора
- 8-и канальный, 10-и битный АЦП

8

- байт- ориентированный, двухпроводный интерфейс
- программируемый USART
- Master/Slave SPI последовательный интерфейс
- Программируемый Watchdog таймер с программируемым
генератором
- Встроенный аналоговый компаратор
 Специальные функции
- Reset по включению питания и выключение при снижении
напряжения питания
- Внутренний калиброванный RC генератор
- Внешние и внутренние источники прерывания
- Шесть экономичных режимов: Idle, подавления шумов АЦП,
экономичный, режим Выкл. , режим ожидания и режим
расширенного ожидания.
 32 программируемых вывода вход-выход и 1 вход
 40 выводной корпус PDIP, 44 выводной корпус TQFP, и 44
контактный MLF
 Напряжение питания:
- 2.7 В до 5.5 В для Atmega328L
4.5 В до 5.5 В для Atmega328
 Тактовая частота:
 0-8 МГц Atmega328L
 - 0-16 МГц Atmega328

9

Рисунок 3 – Архитектура МК Atmega328.

4. Описание принципальной схемы.
Принципиальная схема приведена на рисунке 4.

10

Рисунок 4.

Основным элементом схемы является микроконтроллер Atmega3288.
К его портам (B и C) подключены светодиоды различных цветов (D1-
D6) через токоограничивающие резисторы R1-R6.

5. Разработка программного обеспечения.
Для реализации функций устройства необходимо разработать
программное обеспечение. Программа разрабатывается на языке С для AVR.
Чтобы преобразовать исходный текст программы в файл прошивки
микроконтроллера, применяют компиляторы.
Изучив доступные среды программирования, был сделан выбор в пользу
IDE C CodeVision, так как доступна оценочная версия этого продукта, а сам
компилятор содержит обширную библиотеку функций и шаблонов для
разработки программ.

11
Данная среда использовалась для разработки управляющей программы
микроконтроллера ATMEGA3288.

Рисунок 5 – Среда программирования C CodeVisionAVR

6. Моделирование работы устройства
Моделирование работы устройства проводилось в программном пакете
Proteus 8, производителя LabCenter. Рабочее поле программы, схему, и
результаты моделирования можно увидеть на рис. 6.

12

Рисунок 5 – Моделирование устройства

В результате моделирования было установлено МК выполняет заданную
программу верно.. Из этого можно сделать вывод, что составленный
алгоритм работает верно. Для дальнейшей верификации алгоритмов и схемы
необходимо экспериментальное исследование устройства.

13

Заключение.
В данной курсовой работе был разработан светофор на основе
микропроцессора AVR), написана и откомпилирована программа для него,
рассмотрены вопросы программирования микроконтроллеров, применения
полученных знаний на практике. При выполнении данной курсовой работы
был получен ценный опыт разработки подобных устройств, получены
навыки в разработке программ на языке C, также было выполнено
моделирование в программе Proteus.

14

Список литературы

1. .Белов А.В. Конструирование устройств на микроконтроллерах. - СПб.:
Наука и Техника, 2005. - 256 С.
2. Бородин В.Б., Калинин А.В. Системы на микроконтроллерах и БИС
программируемой логики - М.: Издательство ЭКОМ, 2002. - 400 с.: илл.
3. Гребнев В.В. Микроконтроллеры семейства AVR фирмы Atmel М.: ИП
РадиоСофт, 2002. - 176 с.
4. Евстифеев А.В. Микроконтроллеры AVR семейств Tiny и Mega фирмы
"ATMEL" - М.: Издательский дом "Додека-ХХI", 2004. - 560 с.
5. Шпак Ю.А. Программирование на языке Си для AVR и PIC
микроконтроллеров. - К: ”МК-Пресс", 2006. - 400 С.

15

Приложение.
Приложение 1 . Перечень элементов.
Позиционное
обозн.

Наименование Кол-
во
Примеча
ние

Резисторы

R1…R6 МЛТ-125-0,25-360 Ом +\- 5% 6

Светодиоды

VD1…VD6 АЛ307Б 6

Микросхемы

DD1 ATmega328P 1

Приложение 2.Исходный код программы.
/*****************************************************
This program was produced by the
CodeWizardAVR V2.05.0 Professional
#include <mega328p.h>
#include <delay.h>
// Declare your global variables here
void main(void)
{
// Declare your local variables here
int i;
// Crystal Oscillator division factor: 1
#pragma optsize-
CLKPR=0x80;
CLKPR=0x00;
#ifdef _OPTIMIZE_SIZE_
#pragma optsize+
#endif
// Input/Output Ports initialization
// Port B initialization
// Func7=Out Func6=Out Func5=Out Func4=Out Func3=Out Func2=Out Func1=Out
Func0=Out
// State7=0 State6=0 State5=0 State4=0 State3=0 State2=1 State1=1 State0=1
PORTB=0x07;
DDRB=0xFF;
// Port C initialization
// Func6=Out Func5=Out Func4=Out Func3=Out Func2=Out Func1=Out Func0=Out

16

// State6=1 State5=1 State4=1 State3=1 State2=1 State1=1 State0=1
PORTC=0x7F;
DDRC=0x7F;
// Port D initialization
// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In
// State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T
PORTD=0x00;
DDRD=0x00;
// Timer/Counter 0 initialization
// Clock source: System Clock
// Clock value: Timer 0 Stopped
// Mode: Normal top=0xFF
// OC0A output: Disconnected
// OC0B output: Disconnected
TCCR0A=0x00;
TCCR0B=0x00;
TCNT0=0x00;
OCR0A=0x00;
OCR0B=0x00;
// Timer/Counter 1 initialization
// Clock source: System Clock
// Clock value: Timer1 Stopped
// Mode: Normal top=0xFFFF
// OC1A output: Discon.
// OC1B output: Discon.
// Noise Canceler: Off
// Input Capture on Falling Edge
// Timer1 Overflow Interrupt: Off
// Input Capture Interrupt: Off
// Compare A Match Interrupt: Off
// Compare B Match Interrupt: Off
TCCR1A=0x00;
TCCR1B=0x00;
TCNT1H=0x00;
TCNT1L=0x00;
ICR1H=0x00;
ICR1L=0x00;
OCR1AH=0x00;
OCR1AL=0x00;
OCR1BH=0x00;
OCR1BL=0x00;
// Timer/Counter 2 initialization
// Clock source: System Clock
// Clock value: Timer2 Stopped
// Mode: Normal top=0xFF
// OC2A output: Disconnected
// OC2B output: Disconnected
ASSR=0x00;

17

TCCR2A=0x00;
TCCR2B=0x00;
TCNT2=0x00;
OCR2A=0x00;
OCR2B=0x00;
// External Interrupt(s) initialization
// INT0: Off
// INT1: Off
// Interrupt on any change on pins PCINT0-7: Off
// Interrupt on any change on pins PCINT8-14: Off
// Interrupt on any change on pins PCINT16-23: Off
EICRA=0x00;
EIMSK=0x00;
PCICR=0x00;
// Timer/Counter 0 Interrupt(s) initialization
TIMSK0=0x00;
// Timer/Counter 1 Interrupt(s) initialization
TIMSK1=0x00;
// Timer/Counter 2 Interrupt(s) initialization
TIMSK2=0x00;
// USART initialization
// USART disabled
UCSR0B=0x00;
// Analog Comparator initialization
// Analog Comparator: Off
// Analog Comparator Input Capture by Timer/Counter 1: Off
ACSR=0x80;
ADCSRB=0x00;
DIDR1=0x00;
// ADC initialization
// ADC disabled
ADCSRA=0x00;
// SPI initialization
// SPI disabled
SPCR=0x00;
// TWI initialization
// TWI disabled
TWCR=0x00;
while (1)
{
//горит красный на 1-м светофоре и зеленый на 2-м

18

PORTB=0b00000001;
PORTC=0b00000100;
// Place your code here
delay_ms(4000);
for (i=1;i<5;i++)
{
PORTB=0b00000010;
PORTC=0b00000010;
delay_ms(2000);
PORTB=0b00000000;
PORTC=0b00000000;
delay_ms(2000);
}

//горит красный на 2-м светофоре и зеленый на 2-м
PORTB=0b00000100;
PORTC=0b00000001;
// Place your code here
delay_ms(4000);

for (i=1;i<5;i++)
{
PORTB=0b00000010;
PORTC=0b00000010;
delay_ms(2000);
PORTB=0b00000000;
PORTC=0b00000010;
delay_ms(2000);
}
}
}


Нет нужной работы в каталоге?

Сделайте индивидуальный заказ на нашем сервисе. Там эксперты помогают с учебой без посредников Разместите задание – сайт бесплатно отправит его исполнителя, и они предложат цены.

Цены ниже, чем в агентствах и у конкурентов

Вы работаете с экспертами напрямую. Поэтому стоимость работ приятно вас удивит

Бесплатные доработки и консультации

Исполнитель внесет нужные правки в работу по вашему требованию без доплат. Корректировки в максимально короткие сроки

Гарантируем возврат

Если работа вас не устроит – мы вернем 100% суммы заказа

Техподдержка 7 дней в неделю

Наши менеджеры всегда на связи и оперативно решат любую проблему

Строгий отбор экспертов

К работе допускаются только проверенные специалисты с высшим образованием. Проверяем диплом на оценки «хорошо» и «отлично»

1 000 +
Новых работ ежедневно
computer

Требуются доработки?
Они включены в стоимость работы

Работы выполняют эксперты в своём деле. Они ценят свою репутацию, поэтому результат выполненной работы гарантирован

avatar
Математика
История
Экономика
icon
159599
рейтинг
icon
3275
работ сдано
icon
1404
отзывов
avatar
Математика
Физика
История
icon
156450
рейтинг
icon
6068
работ сдано
icon
2737
отзывов
avatar
Химия
Экономика
Биология
icon
105734
рейтинг
icon
2110
работ сдано
icon
1318
отзывов
avatar
Высшая математика
Информатика
Геодезия
icon
62710
рейтинг
icon
1046
работ сдано
icon
598
отзывов
Отзывы студентов о нашей работе
54 132 оценки star star star star star
среднее 4.9 из 5
НОУ ВО МосТех
По моей просьбе, работа была выполнена раньше назначенного срока. Сдал на отлично, были не...
star star star star star
Московский технологический институт
Работа сдана на отлично, автор все замечания выполнил без проблем!!! Спасибо 5+
star star star star star
ЮУрГУ
Благодарю за выполненную работу! Всё сделано на высшем уровне. Рекомендую всем данного исп...
star star star star star

Последние размещённые задания

Ежедневно эксперты готовы работать над 1000 заданиями. Контролируйте процесс написания работы в режиме онлайн

решить 6 практических

Решение задач, Спортивные сооружения

Срок сдачи к 17 дек.

только что

Задание в microsoft project

Лабораторная, Программирование

Срок сдачи к 14 дек.

только что

Решить две задачи №13 и №23

Решение задач, Теоретические основы электротехники

Срок сдачи к 15 дек.

только что

Решить 4задачи

Решение задач, Прикладная механика

Срок сдачи к 31 дек.

только что

Выполнить 2 задачи

Контрольная, Конституционное право

Срок сдачи к 12 дек.

2 минуты назад

6 заданий

Контрольная, Ветеринарная вирусология и иммунология

Срок сдачи к 6 дек.

4 минуты назад

Требуется разобрать ст. 135 Налогового кодекса по составу напогового...

Решение задач, Налоговое право

Срок сдачи к 5 дек.

4 минуты назад

ТЭД, теории кислот и оснований

Решение задач, Химия

Срок сдачи к 5 дек.

5 минут назад

Решить задание в эксель

Решение задач, Эконометрика

Срок сдачи к 6 дек.

5 минут назад

Нужно проходить тесты на сайте

Тест дистанционно, Детская психология

Срок сдачи к 31 янв.

6 минут назад

Решить 7 лабораторных

Решение задач, визуализация данных в экономике

Срок сдачи к 6 дек.

7 минут назад

Вариационные ряды

Другое, Статистика

Срок сдачи к 9 дек.

8 минут назад

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

Курсовая, Методика преподавания химии

Срок сдачи к 26 дек.

8 минут назад

Вариант 9

Решение задач, Теоретическая механика

Срок сдачи к 7 дек.

8 минут назад

9 задач по тех меху ,к 16:20

Решение задач, Техническая механика

Срок сдачи к 5 дек.

9 минут назад
9 минут назад
10 минут назад
planes planes
Закажи индивидуальную работу за 1 минуту!

Размещенные на сайт контрольные, курсовые и иные категории работ (далее — Работы) и их содержимое предназначены исключительно для ознакомления, без целей коммерческого использования. Все права в отношении Работ и их содержимого принадлежат их законным правообладателям. Любое их использование возможно лишь с согласия законных правообладателей. Администрация сайта не несет ответственности за возможный вред и/или убытки, возникшие в связи с использованием Работ и их содержимого.

«Всё сдал!» — безопасный онлайн-сервис с проверенными экспертами

Используя «Свежую базу РГСР», вы принимаете пользовательское соглашение
и политику обработки персональных данных
Сайт работает по московскому времени:

Вход
Регистрация или
Не нашли, что искали?

Заполните форму и узнайте цену на индивидуальную работу!

Файлы (при наличии)

    это быстро и бесплатно
    Введите ваш e-mail
    Файл с работой придёт вам на почту после оплаты заказа
    Успешно!
    Работа доступна для скачивания 🤗.