Описание алгоритма ПО
Программное обеспечение состоит из основной (фоновой программы) и подпрограмм (Приложение 10). Сначала фоновая программа осуществляет инициализацию микроконтроллера (конфигурируются порты ввода/вывода, устанавливаются начальные состояния флагов и констант и т.д.) и запрещает все прерывания. Затем загружаются константы из внешней памяти EEPROM в ОЗУ. Загрузка констант из EEPROM происходит один раз при включении МК.
Затем программа разрешает прерывание на чтение от ОУ и принимает 16 входных значений от ОУ, сохраняет их в кольцевом буфере, состоящем из 16 регистров общего назначения (РОН). Согласно техническому заданию кольцевом буфере состоит из 17 регистров. При приёме 16 значений - 17-ый остается пустой, каждое новое значение, записывается в 17 регистр и помещается в кольцевой буфер вместо самого старого значения. Затем разрешает все прерывания. Микроконтроллер проверяет наличие событие прерывания от внешнего устройства и установку флага данного прерывания, и передает управление обработчику прерывания.
Подпрограмма «Расчет» анализирует, если первый расчет, то осуществляет передачу управления подпрограммам: «Нахождение Хср», «Нахождение Хmin, Xmax»,«ФормированиеY», иначе меняет в кольцевом буфере самое старое значение на новое и возвращается к вызову подпрограмм.
Подпрограмма «Y» в зависимости от Xср формирует управляющее воздействие. В случае аварийных условий включается мигание лампы накаливания, пока оператор его не отключит.
Подпрограмма «INT1» осуществляет обработку прерывания от ОУ (чтение с ОУ), считывает очередной байт с шины данных и сохраняет его в памяти.
Подпрограмма «INT2» (запись в ОУ) осуществляет вывод управляющего воздействия в ОУ.
Подпрограмма «RS232» разрешает прием и передачу данных, затем проверяет наличие данных в буфере приема или передачи UDR. Если флаг UDRE установлен в «1», значит буфер готов к приему/передаче байта. Для передачи данных в буфер-передатчик помещаются данные, которые необходимо передать в ПК. По завершении передачи флаг ТХС устанавливается в «1». Если флаг RXС установлен - значит в буфере-приемнике есть непрочитанные данные. Данные считываются программой из буфера-приемника.
Прерывание от клавиатуры (подпрограмма INT0)
Сохраняем все данные текущей операции, запрещаем прерывания, кроме прерывания по времени. Переходим к подпрограмме чтения данных с клавиатуры. Это подпрограмма осуществляет повторную проверку нажатой клавиши, сканирование клавиатуры и формирование кода клавиши. При нажатии клавиши К выводим текущее значение константы и вновь обращаемся к чтению данных с клавиатуры. Если новое значение поступит и нажата клавиша К, выполняем подпрограмму «Ввод данных», которая новое значение константы формирует в порядке старшего и младшего разрядов, дешифрирует в семисегментный код и выводит на индикацию. Если нажаты клавиши Xmin, Xmax, Xср, Y выводим соответствующее значения на индикацию.
Список используемой литературы
1. http://www.getchip.net/posts/047-drajjver-matrichnojj-klaviatury-3kh4-na-attiny13-s-uart-vykhodom/
2. Тавернье К. PIC-микроконтроллеры. Практика применения: Пер. с фр.- М.: ДМК Пресс, 2004- 272с.
3. Бондарь О.Г. Аналогово-цифровая электроника.Учебно-методический комплекс.
4. http://www.datasheetarchive.com/dlmain/Datasheets-32/DSA-620479.pdf -SP232E
5. http://easyelectronics.ru/avr-uchebnyj-kurs-peredacha-dannyx-cherez-uart.html
6. http://forums.airbase.ru/2007/12/t58973,17--mikrokontrollery-avr-primenenie-i-kratkij-kurs-chast-10.html
7. http://myrobot.ru/stepbystep/mc_architecture.php
8. http://mainloop.ru/avr-atmega/avr-usart-setting.html
9. http://www.atmel.com/Images/doc8018.pdf
10. http://www.atmel.com/images/doc0958.pdf
11. Богданович М.И. Цифровые интегральные микросхемы. Справочник.- Мн.: Беларусь, 1991.- 493 с.
12. Угрюмов Е.П. Цифровая техника: Учеб. Пособие для вузов. 2-е изд., перераб. и доп.-СПб.: БХВ – Петербург, 2005.- 800с.
13. http://www.atmel.com/Images/doc0180.pdf
14. Стоимость элементов http://www.chipdip.ru
15.Тавернье К. PIC-микроконтроллеры. Практика применения: Пер. с фр.- М.: ДМК Пресс, 2004- 272с.
16.. http://easyelectronics.ru/avr-uchebnyj-kurs-peredacha-dannyx-cherez-uart.html
ПРИЛОЖЕНИЕ 1: Адресное пространство AVR
Рисунок № 1 - Программная модель микроконтроллеров AVR
Рисунок № 2 - Карта адресного пространства
ПРИЛОЖЕНИЕ 2: Сводная таблица микроконтроллеров семейства AVR
МОДЕЛЬ
| Flash ROM (Кб)
| EEPR OM (Кб)
| RAM (байт)
| Fmax (МГц)
| Vcc (В)
| I/O
| SPI
| USART
| I2C
| ISP
| Стоимость (руб)
|
ATmega8
|
| 0.512
|
|
| 4.5-5.5
|
|
|
| +
| +
|
|
ATmega8515
|
| 0.512
|
|
| 4.5-5.5
|
|
|
|
| +
|
|
ATmega8535
|
| 0.512
|
|
| 4.5-5.5
|
|
|
| +
| +
|
|
ATmega16
|
| 0.512
|
|
| 4.5-5.5
|
|
|
| +
| +
|
|
ATmega162
|
| 0.512
|
|
| 2.7-5.5
|
|
|
|
| +
|
|
ATmega162L
|
| 0.512
|
|
| 2.7-5.5
|
|
|
|
| +
|
|
ATmega165
|
| 0.512
|
|
| 4.5-5.5
|
|
|
|
| +
|
|
ATmega168
|
| 0.512
|
|
| 1.8-5.5
|
|
|
| +
| +
|
|
ATmega169
|
| 0.512
|
|
| 1.8-5.5
|
|
|
| +
| +
|
|
ATmega32
|
|
|
|
| 4.5-5.5
|
|
|
| +
| +
|
|
ATmega64
|
|
|
|
| 4.5-5.5
|
|
|
| +
| +
|
|
ATmega128
|
|
|
|
| 4.5-5.5
|
|
|
| +
| +
|
|
ATtiny12
|
| 0.0625
|
|
| 1.8-5.5
|
|
|
|
| +
|
|
ATtiny2313
|
| 0.128
|
|
| 1.8-5.5
|
| USI
|
|
| +
|
|
ATXmega256A3-
|
|
|
|
| 1.6-3.6
|
|
|
|
| +
|
|
ATXmega192A3
|
|
|
|
| 1.6-3.6
|
|
|
|
| +
|
|
ПРИЛОЖЕНИЕ 3: Микроконтроллер ATmega169
Рисунок Б.1 - Схема расположения контактов микроконтроллер ATmega169
Таблица Б.1 - Основные параметры
ЦПУ: Ядро
| AVR
|
ЦПУ: F,МГц
| от 0 до 16
|
Память: Flash,КБайт
|
|
Память: RAM,КБайт
|
|
Память: EEPROM,КБайт
| 0.5
|
I/O (макс.),шт.
|
|
Таймеры: 8-бит,шт
|
|
Таймеры: 16-бит,шт
|
|
Интерфейсы: UART,шт
|
|
Интерфейсы: SPI,шт
|
|
Интерфейсы: I2C,шт
|
|
Аналоговые входы: Аналоговый компаратор,шт
|
|
VCC,В
| от 1.8 до 5.5
|
ICC,мА
|
|
Таблица Б.2 – Распределение выводов
Номер вывода
| Наименование вывода
| Назначение вывода
| Символьное имя вывода в УПМС
|
| PE0
| Выводы для обмена данными через RS232
| RXD
|
| PC1
| TXD
|
| PE2
| Прерывание от клавиатуры
| INT2
|
| PE3
| Прерывание от ОУ
| INT3
|
| PE4
| Выводы чтения и записи по I2C
| SCL
|
| PE5
| SDA
|
| PE6
| Прерывание от ОУ
| INT6
|
| PB2
| Чтение из ОУ
| RD
|
| PB3
| Запись в ОУ
| WR
|
| PG4
| Выводы сигнала «Авария»
| Avar
|
| RESET
| Вывод под кнопку RESET
| RESET
|
| VCC
| Выводы питания
| VCC
|
| GND
| GND
|
| XTAL2
| Вводы тактирования
| XTAL2
|
| XTAL1
| XTAL1
|
| PD2
| Опрос клавиатуры
| PD2
|
| PD3
| PD3
|
| PD4
| PD4
|
| PG0
| Выбор индикатора
| PG0
|
| PG4
| PG4
|
| PC0
| Шина для считывания клавиатуры и индикация
| PC0
|
| PC1
| PC1
|
| PC2
| PC2
|
| PC3
| PC3
|
| PC4
| PC4
|
| PC5
| PC5
|
| PC6
| PC6
|
| PA7
| Считывание клавиатуры
| PA7
|
| PA6
| PA6
|
| PA5
| PA5
|
| PA4
| PA4
|
| PA3
| PA3
|
| PA2
| PA2
|
| PA1
| PA1
|
| PA0
| PA0
|
| PF7
| Шина данных для связи с ОУ
| PF7
|
| PF6
| PF6
|
| PF5
| PF5
|
| PF4
| PF4
|
| PF3
| PF3
|
| PF2
| PF2
|
| PF1
| PF1
|
| PF0
| PF0
|
| GND
| Выводы питания АЦП
| GND
|
| AVCC
| AVCC
|
ПРИЛОЖЕНИЕ 4: Микросхема памяти CAT24C02
Рисунок №4 - Схема расположения контактов микросхем CAT24C02
Основные параметры
Объем памяти (Кбайт)
| 2 (256х8)
|
ICC (мА)
| 0.4
|
tWR(мс)
|
|
Интерфейс
| I2C
|
F (макс.) (МГц)
| 0.4
|
VCC,В
| от 1.8 до 5.5
|
TA,°C
| от -40 до 85
|
Корпус
| DIP-8
|
ПРИЛОЖЕНИЕ 5: Микросхема КР1533ИР22
Рисунок №5 - Условное графическое обозначение МС КР1533ИР22
Основные параметры КР1533ИР22
Напряжение питания (Vсс)
| +5В ±10%
|
Входной ток (0/1), не более
| 20мкА/200мкА
|
Ток потребления (статический), max
| 27мА
|
Выходной ток лог. "0", не менее
| 30мА
|
Выходной ток в Z-состоянии, не более
| 20мкА
|
Типовая задержка
| 12-40нс
|
Входной уровень "0"
| < 0,8В
|
Входной уровень "1"
| > 2,0В
|
Выходной уровень "0"
| < 0,4В
|
Выходной уровень "1"
| > 2,4В
|
Рабочий диапазон температур
| -10oC..+70oC
|
Корпус
| DIP-20
|
ПРИЛОЖЕНИЕ 6: Структурная схема УМПС
ПРИЛОЖЕНИЕ 7: Технические параметры индикатора SA05-11EWA
Цвет свечения красный
Минимальная сила света Iv мин.,мКд 3
Максимальная сила света Iv макс.,мКд 8
Iпр.,мА 10
Количество сегментов 7
Количество разрядов 1
Схема включения. общ.анод
Высота знака,мм 12.7
Максимальное прямое напряжение,В 2.5
Максимальное обратное напряжение,В 5
Максимальный прямой ток,мА 30
Максимальный импульсный прямой ток,мА 160
Рабочая температура, С -40…85
ПРИЛОЖЕНИЕ: Чертежи проекта
Устройство обмена по RS232
|
Объект управления
Устройство авария
|
ПРИЛОЖЕНИЕ 10: Алгоритм основной программы
Алгоритм основной программы
|
ЮЗГУ ВТ КС-21б
21б
ЗГУ КиТЭВС КС-11б
|
Подпрограммы
обмена данными с ОУ и авария
|
ЮЗГУ ВТ КС-21б 11б
ГУ КиТЭВС КС-11б
|
Чтение данных с клавиатур
Нахождение Хср
|
Управляющая микропроцессорная система
|
ЮЗГУ ВТ КС-21б КС-21б ЭВС КС-11б
|
Схема электрическая функциональная
|
КМ-5Б-н30-100В-0,01 мкФ ±20%
|
Дата добавления: 2015-07-14; просмотров: 201 | Нарушение авторских прав
Читайте в этой же книге: Введение | Структура адресного пространства МК семейства AVR | Выбор и подключение МК | Время задающая цепочка | Разработка подсистемы памяти | Организация клавиатуры | Организация индикации | Устройство обмена по интерфейсу RS232 |
mybiblioteka.su - 2015-2024 год. (0.021 сек.)