Устройство управления шаговым двигателем на микроконтроллере

  • Вид работы:
    Контрольная работа
  • Предмет:
    Информатика, ВТ, телекоммуникации
  • Язык:
    Русский
    ,
    Формат файла:
    MS Word
    125,01 Кб
  • Опубликовано:
    2013-07-07
Вы можете узнать стоимость помощи в написании студенческой работы.
Помощь в написании работы, которую точно примут!

Устройство управления шаговым двигателем на микроконтроллере













Реферат

По предмету «Цифровые устройства»

Тема «Устройство управления шаговым двигателем на микроконтроллере»




Содержание

Введение

. Разработка структурной схемы устройства

. Выбор элементной базы

. Схемы электрическая принципиальная

. Разработка программного обеспечения

Заключение

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

Введение

Последние годы отмечены массовым наполнением рынка всевозможной автоматизированной аппаратурой самого различного назначения и самой различной сложности от пластиковой платежной карточки до холодильника, автомобиля и сложнейших установок. Это стало возможным благодаря микроконтроллерам (МК). Микроконтроллеры входят во все сферы жизнедеятельности человека, их насыщенность в нашем окружении растет из года в год.

Фирмы производящие микроконтроллеры ATMEL,INTEL,ZILOG,MICROCHIP, АНГСТРЕМ, scenix, кажется можно продолжать бесконечно. Каждая из перечисленных фирм кроме АНГСТРЕМ имеет более 100 видов различных по назначению микроконтроллеров, а каждый микроконтроллер не менее 200 страниц технических описаний и характеристик плюс к этому на английском языке, кроме АНГСТРЕМ. Выбери свой девиз современного общества.

Средства разработки программного обеспечения для микроконтроллеров у каждой фирмы свое, а что касается языков программирования конечно ассемблер самый старый, также программируются на языках: C, PASCAL, JAVA, DELPHI,C++, +TURBO,+VISUAL.

Вернемся к теме "в одном корпусе" раньше К155ХХ 50 штук а сейчас ATtiny2313 и просто в подарок ПЗУ, ОЗУ, таймер, система прерываний, аналогово-цифравой преобразователь, встроенный генератор, корпус с 20 ножками и т.д.

1.Разработка структурной схемы устройства

Структурная схема таймера на микропроцессоре приведена на рисунке 1. Она состоит из 4 основных блоков. Тактовый генератор предназначен для генерации прямоугольных импульсов частотой 4 Мгц для тактирования микропроцессора и программируемого таймера . Микропроцес-











.Выбор элементной базы

Данное устройство может быть выполнено на разной элементной базе включая микросхемы серии 155,176,561 также различные микропроцессорные комплекты 580,1816,1830 и на специализированных микросхемах например 1901 что предпочтительней с экономической точки зрения т.к в их состав входят контроллер клавиатуры и дисплея тактовый генератор, устройство управления, таймер и многое другое необходимое для электронных часов и таймеров. В данной работе в учебных целях это устройство будет разработано на микроконтроллере фирмы ATMEL.

ATtiny2313 - низкопотребляющий 8 битный КМОП микроконтроллер с AVR RISC архитектурой. Выполняя команды за один цикл, ATtiny2313 достигает производительности 1 MIPS при частоте задающего генератора 1 МГц, что позволяет разработчику оптимизировать отношение потребления к производительности.

AVR ядро объединяет богатую систему команд и 32 рабочих регистра общего назначения. Все 32 регистра непосредственно связаны с арифметико-логическим устройством (АЛУ), что позволяет получить доступ к двум независимым регистрам при выполнении одной команды. В результате эта архитектура позволяет обеспечить в десятки раз большую производительность, чем стандартная CISC архитектура.

ATtiny2313 имеет следующие характеристики: 2 КБ программируемой в системе Flash память программы, 128 байтную EEPROM память данных, 128 байтное SRAM (статическое ОЗУ), 18 линий ввода - вывода общего применения, 32 рабочих регистра общего назначения, однопроводный интерфейс для встроенного отладчика, два гибких таймера/счетчика со схемами сравнения, внутренние и внешние источники прерывания, последовательный программируемый USART, универсальный последовательный интерфейс с детектором стартового условия, программируемый сторожевой таймер со встроенным генератором и три программно инициализируемых режима пониженного потребления. В режиме Idle останавливается ядро, но ОЗУ, таймеры/счетчики и система прерываний продолжают функционировать. В режиме Power-down регистры сохраняют свое значение, но генератор останавливается, блокируя все функции прибора до следующего прерывания или аппаратного сброса. В Standby режиме задающий генератор работает, в то время как остальная часть прибора бездействует. Это позволяет очень быстро запустить микропроцессор, сохраняя при этом в режиме бездействия мощность.

Прибор изготовлен по высокоплотной энергонезависимой технологии изготовления памяти компании Atmel. Встроенная ISP Flash позволяет перепрограммировать память программы в системе через последовательный SPI интерфейс или обычным программатором энергонезависимой памяти. Объединив в одном кристалле 8- битное RISC ядро с самопрограммирующейся в системе Flash памятью, ATtiny2313 стал мощным микроконтроллером, который дает большую гибкость разработчика микропроцессорных систем.

ATtiny2313 поддерживается различными программными средствами и интегрированными средствами разработки, такими как компиляторы C, макроассемблеры, программные отладчики/симуляторы, внутрисхемные эмуляторы и ознакомительные наборы.

электрический программа переход регистр

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

Чтобы максимально ускорить работу и сделать возможным параллельное выполнение нескольких операций, микроконтроллеры AVR используют Гарвардскую архитектуру.

Рис. 2 - Блок-схема архитектуры AVR

Такая архитектура предусматривает отдельную память и отдельную шину адреса как для программы, так и для данных.

Каждая команда из пяти программ выполняются за один машинный цикл с использованием многоуровневой конвейерной обработки. В тот момент, когда очередная команда выполняется, следующая команда считывается из программной памяти. Такая концепция позволяет выполнять по одной команде за один такт системного генератора. Программный сегмент памяти физически представляет собой встроенную перепрограммируемую Flash-память.

Файл регистров быстрого доступа содержит 32 восьмиразрядных регистра общего назначения, доступ к которым осуществляется за один такт системного генератора. Это позволяет арифметико-логическому устройству (АЛУ) осуществлять большинство своих операций за один такт.

Типичная операция АЛУ выполняется следующим образом: из регистрового файла читаются два операнда, выполняется операция. Результат сохранения опять же в файле регистров. Все эти три действия выполняются за один цикл тактового генератора.

Шесть из этих 32 регистраторов могут использоваться как три 16-разрядных регистра-указателя косвенной адресации. Эти сдвоенные регистры могут использоваться для адресации данных в адресном пространстве ОЗУ. Такая организация даёт возможность программного вычисления адреса.

Один из этих регистров-указателей может также использоваться в качестве указателя адреса данных, размещённых в памяти программ (Flash-памяти). Эти дополнительные составные 16-разрядные регистры именуются X, Yи Z.

АЛУ поддерживает арифметические и логические операции между двумя регистраторами или между константой и регистратором. В АЛУ также могут выполняться операции с отдельными регистраторами. После каждой арифметической операции обновляется регистр статуса для того, чтобы отразить информацию о её результате.

Последовательность выполнения программы может быть изменена командами условного и безусловного перехода, а также командой вызова подпрограммы, в которых используется непосредственная адресация.

Большинство инструкций AVR представляет собой одно 16-разрядное слово. Каждый адрес памяти программы содержит 16-битовую инструкцию или половину 32-разрядной инструкции.

При выполнении процедуры обработки прерывания или подпрограммы текущее значение счётчика команд (PC)сохраняется в стеке.

Стек фактически размещён в одном адресном пространстве с памятью данных SRAM (ОЗУ) и, следовательно, размер стека ограничен только размером SRAM и тем, какую часть SRAM использует остальная программа.

Программа пользователя обязательно должна инициализировать указатель стека (SP)сразу после сброса (прежде, чем будет выполнена подпрограмма или будет вызвано прерывание). Указатель стека (SP) имеет свой конкретный адрес в пространстве регистров ввода-вывода. К данным в ОЗУ (SRAM) можно получить доступ, используя память различных способов адресации, поддержанных архитектурой AVR.

Адресное пространство всех видов памяти в архитектуре AVR являются регулярным линейным. Гибкий модуль прерываний имеет ряд регистраторов управления в адресном пространстве регистров ввода-вывода и дополнительный флаг глобального разрешения прерываний в регистре статуса.

Каждый вид прерывания имеет свой отдельный вектор в таблице векторов прерываний. Прерывания имеют приоритет в соответствии с их положением в таблице векторов прерываний. Чем ниже адрес вектора прерывания, тем выше приоритет

Пространство регистров ввода-вывода содержит 64 адреса для регистров управления периферийными устройствами, регистров управления режимами работы процессора и другими функциями ввода/вывода. К любому регистру ввода-вывода можно получить доступ непосредственно по его номеру или как к ячейке памяти данных. В адресном пространстве памяти данных регистры ввода-вывода располагаются сразу после файла регистров общего назначения (0x20 - 0x5F).

Описание выводов

VCC

Напряжение питания

GND

Общий провод

Port A (РА2..РА0)

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

Port В (РВ7..РВ0)

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

Port D (PD6..PD0)

Порт D - семиразрядный двунаправленный порт ввода-вывода. Каждая из линий порта имеет возможность подключения внутреннего нагрузочного резистора. Подключение резистора производитсяпрограммным путем только в том случае, если данный конкретный вывод находится в режиме ввода. Когда резистор подключен, он создает выходной истекающий ток для внешних устройств, формирующих низкий логический уровень. Выходной буфер каждой линии порта А имеет симметричный каскад с высокой нагрузочной способностью. После системного сброса все выводы порта D переходят в высокоимпендансное состояние (режим ввода без нагрузочного резистора) даже в том случае, если системный генератор не работает. Все выводы порта D, кроме своих основных функций, имеют также и альтернативные.

RESET

Вход сброса. Низкий уровень на этом входе с длительностью не меньше минимально допустимого значения приведет к полному сбросу микро-контроллера даже в том случае, когда не работает тактовый генератор. Более короткий импульс не гарантирует нормального сброса. Вход сброса имеет альтернативные функции линии РА2 и линии dW

XTAL1

Инвертирующий вход для кварцевого резонатора, вход внешнего генератора. Вход XTAL1 имеет альтернативную функцию. Он может использоваться как линия РАО

XTAL2

Выход на внешний резонатор. Вывод XTAL2 имеет альтернативную функцию. Он может использоваться как линия PAI


Также в устройстве будет использован цифро-буквенный индикатор с высотой цифр 7,5 мм из семи сегментов с децимальной точкой АЛС324А, его графическое изображение приведено на рисунке 4.


3.Схема электрическая


.Разработка программного обеспечения

При разработке и отладке программы были использованы программы Proteus и AVRstudio.

#include <p16F84A.inc>

; _CONFIG _CP_OFF & _WDT_OFF & _PWRTE_ON & _XT_OSC

;***базовые значенияEQU 0xFF ;константа длительности задержкиEQU 0x0C ;переменная подпрограммы задержки0x00

;***начальная инициализацияPORTA ;очистить порт АPORTB ;и порт ВSTATUS,RP0 ;включили банк 1

movlw INIT_APORTA ;настроили порт АINIT_B

movwf PORTB ;настроили порт ВOPTION_REG,7 ;включили встроенную нагрузкуSTATUS,RP0 ;включили банк 0

clrwPORTBb'01010000

movwf PORTBdelay

;-------Вставляем сюда задержек, столько - сколько надо, или модифицируем подпрограмму на более длинную задержку

call delayb'01100000PORTB

call delay

;-------Вставляем сюда задержек, столько - сколько надо, или модифицируем подпрограмму на более длинную задержку

call delayb'10100000PORTB

call delay

;-------Вставляем сюда задержек, столько - сколько надо, или модифицируем подпрограмму на более длинную задержку

call delayb'10010000PORTB

call delay

;-------Вставляем сюда задержек, столько - сколько надо, или модифицируем подпрограмму на более длинную задержкуmain

;***подпрограмма формирования задержки между шагами

delay movlw delcountdecfsz count,floop

Заключение

По полученному заданию была проделана работа в полном объеме, разработаны устройство управления углом поворота шагового двигателя на микроконтроллере, написана программа для него. При выполнении данной работы был получен ценный опыт разработки подобных устройств получены навыки в разработке программ на языке ассемблер, также был закреплены знания полученные на занятиях.

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

1. Радиолюбитель 2007г.

. А. В. Кравченко «10 практических устройств на AVR-микроконтроллерах»

Internet - Ресурсы

<http://www.radiokot.ru>

<http://www.microchip.ru:8101/>

<http://www.paguo.ru/>

<http://www.disall.narod.ru/picpro.htm>

<http://www.chipnews.ru/html.cgi/arhiv/index.htm>

Микроконтроллеры. Выпуск 2:

Однокристальные микроконтроллеры PIC12c5x, PIC16x8x, PIC14000,

Похожие работы на - Устройство управления шаговым двигателем на микроконтроллере

 

Не нашли материал для своей работы?
Поможем написать уникальную работу
Без плагиата!