Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Архив2 / курсач docx283 / Kursach_MK

.docx
Скачиваний:
58
Добавлен:
07.08.2013
Размер:
119.42 Кб
Скачать

Министерство Науки и Образования Российской Федерации

Новосибирский Государственный Технический Университет

Факультет Автоматики и Вычислительной Техники

Кафедра Систем Сбора и Обработки Данных

Курсовой проект

По дисциплине «Микроконтроллеры»

«Преобразователь двоичной последовательности

из фиксированного числа байт в ЧМ-сигнал»

Выполнила: Преподаватель:

Частухина Н.А. Еленычев С.В.

Группа: АТ-83

Новосибирск, 2011

Техническое задание

Преобразователь двоичной последовательности из фиксированного числа байт в ЧМ-сигнал. ЧМ сигнал представляет собой последовательность: старт-сигнал (2 периода сигнала с частотой 1000Гц), последовательность ‘0’ и ’1’ (‘0’ – один период 200Гц, ’1’ –один период 500Гц), стоп-сигнал (2 периода сигнала с частотой 2000Гц). Байты данных ЧМ сигнала формировать младшим битом вперед. Количество байт данных в ЧМ последовательности произвольное (зависит от количества преобразуемых двоичных байт, но не более 64). Для ввода двоичной последовательности для преобразования используется RS-232. Протокол обмена данными разработать самостоятельно. После получения контроллером всех двоичных данных (признак окончания потока данных должен определяться протоколом) автоматически начинается преобразование в ЧМ последовательность.

Введение

Микроконтроллер (MCU) — микросхема, предназначенная для управления электронными устройствами. Типичный микроконтроллер сочетает в себе функции процессора и периферийных устройств, может содержать ОЗУ и ПЗУ. По сути, это однокристальный компьютер, способный выполнять простые задачи. Использование одной микросхемы, вместо целого набора, как в случае обычных процессоров, применяемых в персональных компьютерах, значительно снижает размеры, энергопотребление и стоимость устройств, построенных на базе микроконтроллеров.

Выбор компонентов преобразователя :

  1. Микроконтроллер ATtiny2313

8 битный AVR микроконтроллер с 2 КБ программируемой в системе Flash памяти

Характеристики:

AVR RISC архитектура

AVR - высококачественная и низкопотребляющая RISC архитектура

120 команд, большинство которых выполняется за один тактовый цикл

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

Полностью статическая архитектура

ОЗУ и энергонезависимая память программ и данных

2 КБ самопрограммируемой в системе Flash памяти программы, способной выдержать 10 000 циклов записи/стирания

128 Байт программируемой в системе EEPROM памяти данных, способной выдержать 100 000 циклов записи/стирания

128 Байт встроенной SRAM памяти (статическое ОЗУ)

Программируемая защита от считывания Flash памяти программы и EEPROM памяти данных

Характеристики периферии

Один 8- разрядный таймер/счетчик с отдельным предделителем

Один 16-разрядный таймер/счетчик с отдельным предделителем, схемой сравнения, схемой захвата и двумя каналами ШИМ

Встроенный аналоговый компаратор

Программируемый сторожевой таймер со встроенным генератором

USI - универсальный последовательный интерфейс

Полнодуплексный UART

Специальные характеристики микроконтроллера

Встроенный отладчик debugWIRE

Внутрисистемное программирование через SPI порт

Внешние и внутренние источники прерывания

Режимы пониженного потребления Idle, Power-down и Standby

Усовершенствованная схема формирования сброса при включении

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

Встроенный откалиброванный генератор

Порты ввода - вывода и корпусное исполнение

18 программируемых линий ввода - вывода

20 выводной PDIP, 20 выводной SOIC и 32 контактный MLF корпуса

Диапазон напряжения питания

от 1.8 до 5.5 В

Рабочая частота

0 - 16 МГц

Потребление

Активный режим:

300 мкА при частоте 1 МГц и напряжении питания 1.8 В

20 мкА при частоте 32 кГц и напряжении питания 1.8 В

Режим пониженного потребления

0.5 мкА при напряжении питания 1.8 В

2. Микросхема интерфейса RS -232

Широко используемый последовательный интерфейс синхронной и асинхронной передачи данных, определяемый стандартом EIA RS-232-C и рекомендациями V.24 CCITT. Изначально создавался для связи компьютера с терминалом. В настоящее время используется в самых различных применениях.

Max232 - это преобразователь уровня напряжения. Интерфейс RS232 использует +-10V, а Max232 преобразует их в 0-5V.

Принципиальная схема

Алгоритм работы ПО МК :

Программа в микроконтроллере выполняется в бесконечном цикле (wait1). В данном цикле происходит прием байт с UART и их анализ. Для отправки ЧМ последовательности необходимо, чтобы с UART поступила команда 01C, далее происходит переход на процедуру отправки ЧМ сигнала (меняется частота таймера).

Листинг ПО Микроконтроллера :

.INCLUDE "C:\Program Files\Atmel\AVR Tools\AvrAssembler\Appnotes\2313def.inc"

;спецификацией регистров ввода/вывода

.EQU A_LINE = 0 ;линия PORTB, соответствующая сигналу A

.DSEG

.ORG 0xc0

stack: .BYTE 0x10 ;область стека

.EQU sp_ini = stack+0x0f

.CSEG

;========= Таблица векторов прерываний ============================

.ORG 0x00

rjmp RESET ;вектор прерывания RESET

.ORG 0x06

rjmp OVR0_isr ;вектор прерывания по переполнению Timer0

;========= Основная программа =====================================

RESET:

ldi r16,sp_ini ;инициализация указателя стека

out SPL,r16

sbi PORTB,A_LINE ;установить A в 1

ldi r16,0x07 ;разрешить PB.0, PB.1, PB.2 как выходы

out DDRB,r16

clr r16 ;занести 0 в счетчик Timer0

out TCNT1,r16

ldi r16,0x02 ;частота синхронизации Timer0 = Fosc/8

out TCCR1,r16

ldi r16,0x02

out TIMSK,r16 ;разрешить прерывание по переполнению Timer0

; Прерывания разрешены, прием-передача разрешен.

ldi r16, (1<<RXEN)|(1<<TXEN)|(1<<RXCIE)|(1<<TXCIE)|(0<<UDRIE)

out UCSRB, r16

; Формат кадра - 8 бит, пишем в регистр UCSRC, за это отвечает бит селектор

ldi r16, (1<<URSEL)|(1<<UCSZ0)|(1<<UCSZ1)

out UCSRC, r16

sei ;глобальное разрешение прерываний

rjmp wait1 ;пустой цикл (ожидание прерывания и прием байтов с UART)

;========== Процедура отправки байта ==========

UART_send: sbis UCSRA, UDRE ; Пропуск если нет флага готовности

rjmp uart_snt ; ждем готовности - флага UDRE

out UDR, r0 ; шлем байт

ret ; Возврат

;========== Ожидание байта ==========

uart_rcv: SBIS UCSRA,RXC ; Ждем флага прихода байта

RJMP uart_rcv ; вращаясь в цикле

IN R16,UDR ; байт пришел - забираем.

INC uart_counter ;увеличиваем счётчик принятых байт

RET ; Выходим. Результат в R16

;========== Обработчик прерывания по переполнению Timer0 ==========

OVR0_isr:

in r16,SREG ;сохранение в стеке регистра статуса

push r16

sbis PORTB,A_LINE

rjmp OVR0_m1

;1-е состояние: A==1, B==0, C==0

cbi PORTB,A_LINE ;A=0

pop r16 ;восстановление из стека регистра статуса

out SREG,r16

reti ;конец обработчика прерывания

wait1 :

uart_rcv ;принимаем байт

cpi r16, 0x30 ;если : 0

breq next1;

brne wait1

next1: uart_rcv

cpi r16, 0x31 ;если : 1

breq next2

brne wait1

next2 :uart_rcv

cpi r16, 0xC ;если : C символ С-конец сообщения

breq send1

brne wait1

rjmp wait1

;перенастройка частоты на 200, затем на 500 Гц

send1 :

clr r16 ;старт сигнал

out TCNT1,r16

ldi r16,0xE8 ;частота синхронизации Timer1 1000 Гц

out TCCR1A,r16

ldi r16,0x03

out TCCR1B,r16

rjmp VR0_isr ;отправляем сигнал

rjmp wait1

clr r16

out TCNT1,r16

ldi r16,0xC8 ;частота синхронизации Timer1 200 Гц

out TCCR1A,r16

clr TCCR1B

rjmp VR0_isr ;отправляем сигнал

clr r16

out TCNT1,r16

ldi r16,0x01 ;частота синхронизации Timer1 500 Гц

out TCCR1A,r16

ldi r16,0xF4

out TCCR1B,r16

rjmp VR0_isr ;отправляем сигнал

clr r16

out TCNT1,r16

ldi r16,0xD0 ;частота синхронизации Timer1 2000 Гц

out TCCR1A,r16

ldi r16,0x07

out TCCR1B,r16

rjmp VR0_isr ;отправляем сигнал

clr r16

out TCNT1,r16

ldi r16,0xD0 ;частота синхронизации Timer0 2000 Гц

out TCCR1A,r16

ldi r16,0x07

out TCCR1B,r16

rjmp VR0_isr ;отправляем сигнал

rjmp wait1

Перечень элементов

Наименование

Кол-

во

Условное обозначение

Микросхемы

ATiny2313

1

D1

MAX232

1

D2

Заключение

В процессе работы был разработан проект контроллера осуществляющего преобразование двоичной последовательности из фиксированного числа байт в ЧМ-сигнал.

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

  1. Конспект лекций по курсу микроконтроллеры 2011г

  2. МИКРОКОНТРОЛЛЕРЫ AVR Методическое пособие

к лабораторному практикуму для студентов II-IV курсов АВТФ

  1. http://atmel.ru

  2. http://www.gaw.ru

СОДЕРЖАНИЕ

1. Техническое задание…………………………………………………… 1

2. Выбор компонентов преобразователя……………………………….. 2

4. Принципиальная схема…………………………………………………. 4

5. Алгоритм работы МК…………………………………………………….. 4

6. Листинг ПО МК…………………………………………………………… 6

7. Перечень элементов …………………………………………………… 9

8. Заключение……………………………………………………………….. 9

9. Литература………………………………………………………………… 10

Соседние файлы в папке курсач docx283