Разработка программируемого генератора сигнала
Курсовая работа, 26 Января 2013, автор: пользователь скрыл имя
Описание работы
В результате выполнения курсовой работы, с применением компьютерных технологий, а именно, программы Keil μVision2, был разработан программируемый генератор на базе однокристальной микроконтроллера 87C52 с тактовой частотой 24 МГц. Спроектированы электрическая, структурная, принципиальная и функциональная схемы генератора сигнала в соответствии с техническим заданием. Получен шестнадцатеричный код для программирования микросхемы памяти.
Содержание работы
Анализ задания…………………………………………………………..…5
Формирование кодовой таблицы аналогового сигнала…………....…….5
Общая характеристика микроконтроллера………………………….…....8
Размещение кодовой таблицы в памяти……………………………..….22
Порт вывода аналогового сигнала..…………………………...…………23
Режим и порядок работы генератора сигнала……………………..…...23
Разработка структурной схемы генератора сигнала..…………….…….25
Разработка функциональной схемы генератора сигнала...……………..28
Разработка принципиальной схемы генератора………………………...30
Разработка алгоритма работы и управляющей программы микроконтроллера……..……………………………………………………..….31
Анализ результатов проектирования…………………….………………...…...33
Список литературы………………………………………………………………40
Файлы: 1 файл
Kursach (3).doc
— 5.79 Мб (Скачать файл)РОСЖЕЛДОР
Федеральное государственное
бюджетное образовательное
высшего профессионального образования
«Ростовский государственный университет путей сообщения»
(ФГБОУ ВПО РГУПС)
Кафедра «Автоматика и телемеханика на железнодорожном транспорте»
РАЗРАБОТКА ПРОГРАММИРУЕМОГО ГЕНЕРАТОРА СИГНАЛА
Пояснительная записка к курсовой работе по дисциплине
«Основы микропроцессорной техники»
ОМТ 12. .ПЗ
Работа защищена _______________ с оценкой _______________
Руководитель работы
к.т.н., доцент _______________ В.В. Шаповалов
Студент группы ___________ ___________________ ________
Ростов-на-Дону
2012г.
СОДЕРЖАНИЕ
- Анализ задания………………………………………………………….
.…5 - Формирование кодовой таблицы аналогового сигнала…………....…….5
- Общая характеристика микроконтроллера………………………….…..
..8 - Размещение кодовой таблицы в памяти……………………………..….22
- Порт вывода аналогового сигнала..…………………………...…………23
- Режим и порядок работы генератора сигнала……………………..…...23
- Разработка структурной схемы генератора сигнала..…………….…….25
- Разработка функциональной схемы генератора сигнала...……………..28
- Разработка принципиальной схемы генератора………………………...30
- Разработка алгоритма работы и управляющей программы микроконтроллера……..…………………………
…………………………..….31
Анализ результатов проектирования…………………….……………….
Список литературы…………………………………
1 АНАЛИЗ ЗАДАНИЯ
- Формирование кодовой таблицы аналогового сигнала
По заданию необходимо спроектировать генератор, формирующий аналоговый сигнал, заданный на рисунке 1.
Для получения заданного аналогового сигнала на выходе генератора необходимо провести его преобразование. Обработка сигнала производится с учетом заданной частоты дискретизации Fs равной 40кГц, максимального напряжения Umax равного 4,06 В и количества отсчетов на период N равного 32.
Разобьем заданный сигнал на 32 временных интервала, величина которых ts определяется частотой дискретизации:
ts=1/Fs,
ts=1/40 кГц=0,025 мс.
Таким образом, длительность одного периода сигнала составит:
T=N*ts,
T=32*0,025=0,8 мс.
Проекции точек, соответствующих границам временных интервалов, на ось напряжений (отсчеты), позволяют получить мгновенные значения напряжений в точках дискретизации.
Для каждого отсчета формируемого сигнала необходимо определить кодовую комбинацию, соответствующую значению выходного напряжения Uвых.
С учетом формы
сигнала и необходимой точности
преобразования будем использовать
восьмиразрядные кодовые
По заданию максимальное выходное напряжение соответствует величине 4,06 В, следовательно опорное напряжение Uref можно принять равным 5,12 В.
Значение напряжения, формируемого на выходе n-разрядного ЦАП, определяется соотношением:
UвыхN=DN*Uref/2n,
где Dn – десятичный эквивалент числа на входе ЦАП, соответствующий отсчету N,
U ref – величина опорного напряжения,
2n – количество уровней квантования при n-разрядном преобразовании.
Минимальное приращение напряжения на выходе ЦАП определяется как:
∆UвыхMIN=Uref/2n,
∆UвыхMIN=5,12/256=0,02 В
Следовательно, десятичный эквивалент числа на входе ЦАП, соответствующий отсчету N, определяется соотношением:
DN=UвыхN/∆UвыхMIN,
где UвыхN – значение выходного напряжения, принятое для отсчета N.
Результаты обработки заданного сигнала приведены на рисунке 1.
Рисунок 1 – Дискретизация заданного сигнала генератора
Для каждого значения DN следует определить соответствующую шестнадцатиричную кодовую комбинацию HN, округляя значения до ближайшего целого.
Результаты
дискретизации аналогового
Таблица 1 –
Кодовая таблица выходного
№ Отсчета |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
Uвых, В |
1,7 |
2,22 |
2,68 |
3 |
3,3 |
3,5 |
3,7 |
3,8 |
3,98 |
4,06 |
1,9 |
1,3 |
0,9 |
0,6 |
0,4 |
0,2 |
Кодовые комбинации, HEX |
52 |
6F |
85 |
96 |
A3 |
AE |
B7 |
BF |
C6 |
CA |
60 |
3E |
2C |
1F |
15 |
C |
Продолжение таблицы 1 | ||||||||||||||||
№ Отсчета |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
Uвых, В |
0,1 |
0 |
0,98 |
1,76 |
2,12 |
2,38 |
2,62 |
2,8 |
2,96 |
2,96 |
1,8 |
1,3 |
0,9 |
0,68 |
0,44 |
0,22 |
Кодовые комбинации, HEX |
4 |
0 |
31 |
57 |
69 |
77 |
82 |
8B |
93 |
94 |
5A |
3F |
2E |
21 |
16 |
A |
1.2 Общая
характеристика
Генератор разрабатывается на базе однокристальной микро-ЭВМ Intel 87C52 с рабочей частотой 24 МГц. Микроконтроллер семейства 8051 имеет следующие аппаратные особенности:
- внутреннее ОЗУ объемом 128 байт;
- четыре двунаправленных
побитно настраиваемых
- два 16-разрядных таймера-счетчика;
- встроенный тактовый генератор;
- адресация 64 Кбайт памяти программ и 64 Кбайт памяти данных;
- две линии запросов на прерывание от внешних устройств;
- интрефейс
для последовательного обмена
информацией с другими
Основные характеристики микроконтроллера приведены в таблице 2.
Таблица 2 – Основные характеристики микроконтроллера 87C52
Характеристика |
Микроконтроллер 87C52 |
1 |
2 |
|
КМОП |
|
PLCC44 (L44), DIP40 (D40), QFP44 (Q44) |
Продолжение таблицы 2 | |
1 |
2 |
|
коммерческий 0…+70, военный -55…+125, расширенный -40…+85 |
|
8 Кбайт ROM |
|
256 байт |
|
6 векторов прерываний, 4 уровня прерываний |
|
Три по шестнадцать бит |
|
32 двунаправленных параллельных порта ввода и вывода |
|
UART – универсальный
асинхронный последовательный |
|
Enhanced UART - улучшенный последовательный порт, ONCE – тестовый режим эмуляции микроконтроллера, QUICK-PULSE –алгоритм программирования «быстрыми пульсациями», low EMI - режим понижения электромагнитных помех, CO – выход тактового сигнала, POF – флаг выключения питания, Реверсивный таймер-счетчик Трехуровневая система защиты памяти. |
|
5В±20% |
|
UILmin =-0,5В, UILmax = 0,9В |
|
UIHmin =1,9В, UIHmax = 5,5В |
|
UOLmax =0,4 В |
|
UOHmin =4,3 В |
Продолжение таблицы 2 | |
1 |
2 |
|
IIL =50мкА |
|
IOL=15мА |
Условное графическое обозначение микроконтроллера 87C52 представлено на рисунке 2.
Рисунок 2 – УГО микроконтроллера 87C52 в корпусе DIP40
Назначение выводов микроконтроллера приведены в таблице 3.
Таблица 3 – назначение выводов микроконтроллера 87C52.
Имя |
Назначение |
P1.0…P1.7 |
восьмиразрядный универсальный двунаправленный порт P1 |
RST |
вход общего сброса |
P3.0…P3.7 |
восьмиразрядный универсальный двунаправленный порт P3, альтернативные функции: |
XTAL1 |
вход усилителя резонатора и внутреннего генератора |
XTAL2 |
Выход усилителя резонатора |
P2.0…P2.7 |
восьмиразрядный универсальный двунаправленный порт P2 |
PSEN^ |
выход разрешения чтения внешней памяти программ |
ALE |
выход стробирования адреса внешней памяти |
EA^ |
вход блокировки резидентной памяти программ |
P0.0…P0.7 |
восьмиразрядный универсальный двунаправленный порт P0 |
Vcc |
вход напряжения питания |
Vss |
общий вход, 0В |
1.2.1 Организация памяти и программная модель 87C52
Микроконтроллеры семейства MCS-51 относятся к классу устройств с гарвардской архитектурой, т.е имеют разделенные адресные пространства памяти программ и памяти данных. Функционально и логически они разделены за счет реализации различных алгоритмов адресации и формирования разных сигналов управления. К ним относятся: внешняя память программ (ВПП), резидентная память программ (РПП), внешняя память данных (ВПД), резидентная память данных (РПД).
Память программ предназначена для хранения команд, констант, управляющих слов инициализации, таблиц перекодировки входных и выходных переменных и т.п. Память имеет 16-битную шину адреса.
При обращении к внешней памяти программ все микроконтроллеры семейства 8051 всегда используют 16-разрядный адрес, что обеспечивает им доступ к 64 Кбайт ПЗУ. Микроконтроллер обращается к программной памяти при чтении кода операции и операндов (используя счетчик команд PC), а также при выполнении команд переноса байта из памяти программ в аккумулятор. При выполнении команд переноса данных адресации ячейки памяти программ, из которой будут прочитаны данные, может осуществляться с использованием как счетчика PC, так и специального двухбайтового регистра-указателя данных DPTR.
Структура памяти программ приведена на рисунке 2.
Рисунок 2 - Структура памяти программ микроконтроллера 87C52
Адресация ячеек памяти программ осуществляется с использованием программного счетчика PC или регистра-указателя данных DPTR.
Программная модель включает ресурсы микроконтроллера, которые доступны программисту при создании программы. Прежде всего, к ней относятся регистры общего назначения, программно доступные регистры специальных функций, ячейки резидентной памяти.
Объем внешней памяти данных может достигать 64 Кбайт. Для обращения к внешней памяти данных используется только косвенная адресация с помощью регистров R0 и R1 или с помощью 16-разрядного регистра-указателя DPTR. Обращение к внешней памяти данных сопровождается стробирующими сигналами чтения RD^ и записи WR^.
Структура памяти данных приведена на рисунке 3. Объем внешней памяти данных может достигать 64 кбайт.
Рисунок 3 - Структура памяти данных микроконтроллера 87C52
Резидентная память данных предназначена для хранения переменных в процессе выполнения управляющей программы. Обращение к резидентной памяти данных производится одним байтом в адресном пространстве от 00h до FFh (256 байт). К адресному пространству резидентной памяти данных примыкают адреса блока регистра специальных функций – SFR.
Таблица 4 - Регистры sfr микроконтроллера 87C52 | |||||
Имя |
Адрес |
Назначение |
Значение при сбросе, Bin | ||
1 |
2 |
3 |
4 | ||
В* |
F0h |
Регистр В |
00000000 | ||
АСС* |
E0h |
Аккумулятор |
00000000 | ||
PSW* |
D0h |
Слово состояния программы |
00000000 | ||
IP* |
B8h |
Регистр приоритетов прерываний |
X0000000 | ||
РЗ* |
B0h |
Порт 3 |
11111111 | ||
IE* |
A8h |
Регистр разрешения прерываний |
00000000 | ||
Р2* |
A0h |
Порт 2 |
11111111 | ||
SBUF |
99h |
Буфер последовательного порта |
XXXXXXXX | ||
SCON* |
98h |
Управление последовательным портом |
00000000 | ||
Р1* |
90h |
Порт 1 |
111111111 | ||
ТН1 |
8Dh |
Таймер/Счетчик 1. Старший байт |
00000000 | ||
ТН0 |
8Ch |
Таймер/Счетчик 0. Старший байт |
00000000 | ||
TL1 |
8Вh |
Таймер/Счетчик 1. Младший байт |
00000000 | ||
TL0 |
8Ah |
Таймер/Счетчик 0. Младший байт |
00000000 | ||
TMOD |
89h |
Регистр режима таймера/счетчика |
00000000 | ||
TCON* |
88h |
Регистр управления таймера/счетчика |
00000000 | ||
PCON |
87h |
Регистр управления потреблением |
00XX0000 | ||
DPH |
83h |
Старший байт указателя данных |
00000000 | ||
DPL |
82h |
Младший байт указателя данных |
00000000 | ||
Продолжение таблицы 4 | |||||
1 |
2 |
3 |
4 | ||
SP |
81h |
Указатель стека |
00000111 | ||
Р0* |
80h |
Порт 0 |
11111111 | ||
ТН2 |
CDh |
Старший байт данных Т/С2 |
00000000 | ||
TL2 |
CCh |
Младший байт данных Т/С2 |
00000000 | ||
RCAP2H |
CBh |
Регистр хранения Т/С2, старший байт |
00000000 | ||
RCAP2L |
CAh |
Регистр хранения Т/С2, младший байт |
00000000 | ||
T2MOD |
C9h |
Регистр режима Т/С2 |
XXXXXX00 | ||
T2CON* |
C8h |
Регистр управления Т/С2 |
00000000 | ||
SADEN |
B9h |
Регистр маски адреса ведомого |
00000000 | ||
IPH |
B7h |
2-й регистр приоритетов прерываний |
X0000000 | ||
SADDR* |
A9h |
Регистр маски ведомого |
00000000 | ||
AUXR |
8Eh |
Дополнительный регистр, запрет ALE |
XXXXXXX0 | ||