
- •Пояснительная записка к курсовой работе
- •Оглавление
- •1. Постановка задачи.
- •1.1. Стандартное задание
- •1.2. Индивидуальное задание
- •2. Техническое задание
- •3. Описание аппаратных и программных средств лабораторного комплекса
- •3.1. Структура аппаратных средств
- •3.1.1. Структурная схема лабораторного комплекса
- •3.1.2. Плата мк – системы
- •3.1.2.1. Конфигурируемые узлы мк c8051f064
- •Интерфейс прямого доступа к памяти (dma)
- •3.1.2.2. Внешняя память xram
- •3.1.2.3. Входные усилители
- •3.1.2.4. Микросхема моста uart-usb
- •3.1.2.5. Сопряжение платы с pc
- •3.1.2.6. Питание платы
- •3.1.3. Требования к pc
- •3.1.4. Осциген
- •. Перечень программных средств лабораторного комплекса
- •Средства программирования и отладки мк-системы
- •Интегрированная среда разработки фирмы SiLabs ide 2.0
- •3.2.1.2. Ассемблер, компилятор и линкер интегрированной среды разработки Keil
- •3.2.2. Средства разработки Windows-приложений
- •3.2.2.1. Среда разработки
- •3.2.2.2. Библиотека win32 api функций
- •3.2.3. Приложения для осцигеНа.
- •3.2.3.1. Драйвер конфигурируемого выносного блока
- •3.2.3.2. Windows-приложение ogView
- •3.2.4. Драйвер виртуального com-порта фирмы SiLabs
- •Организация бесконечного цикла встроенного приложения
- •Отключение сторожевого таймера
- •Переключение с внутреннего генератора на внешний
- •Конфигурирование портов ввода/вывода
- •Конфигурирование аналого-цифровых преобразователей adc
- •Конфигурирование интерфейса dma
- •Инициализация последовательного интерфейса uart
- •Выбор и инициализация таймера для установки скорости обмена данными по последовательному каналу
- •Инициализация таймера для установки времени дискретизации входного сигнала
- •Прием данных с pc
- •Другие используемые функции
- •Конфигурирование узлов мк с учетом данных, пришедших с pc
- •Разработка Windows-приложения
- •4.4.1. Особенности использования среды разработки
- •4.4.2. Описание файлов проекта
- •4.4.3. Обобщенная схема алгоритма многопоточного приложения
- •4.4.4. Внешний вид и описание графического интерфейса, принципы построения программы
- •Описание структуры и организация программы
- •4.4.5.1. Назначение подключаемых файлов
- •4.4.5.2. Описание прототипов функций
- •4.4.5.3. Функция WinMain()
- •4.4.5.4. Функция главного окна
- •4.4.5.5. Организация дополнительных потоков, их назначение
- •4.4.5.6. Рабочие функции дополнительных потоков
- •4.4.5.7. Синхронизация потоков
- •4.4.5.8. Особенности обработки сообщений Windows в программе
- •4.4.6.2. Организация настроек com-порта в графическом интерфейсе
- •4.4.6.3. Использование функций WaitCommEvent(), WaitForSingleObject(), WaitForMultiplyObject()
- •Работа оператора с приложением
- •4.4.7.1. Последовательность запуска приложения на мк и пк в лаборатории
- •4.4.7.2. Адаптация к спектру входного сигнала
- •Описание протокола rs-232
- •Список используемых источников информации
- •Приложения
- •Исходные тексты модулей программы для мк
- •Фрагменты листингов файлов мк-приложения, полученные в результате трансляций: map-file и др
- •Исходные тексты файлов Windows-приложения
Санкт-Петербургский государственный технический университет Кафедра информационных измерительных технологий
Пояснительная записка к курсовой работе
Дисциплина: Аппаратные средства вычислительной техники
Тема: Обработка аналоговых сигналов на основе МК C8051F064
Выполнил(а) студент(ка) гр. 3085/2 К.И. Пивина
Проверил В.И. Лобан
" " 2012 г.
Санкт-Петербург 2012
Оглавление
1. Постановка задачи. 5
1.1. Стандартное задание 5
1.2. Индивидуальное задание 5
2. Техническое задание 6
3. Описание аппаратных и программных средств лабораторного комплекса 7
3.1. Структура аппаратных средств 7
3.1.1. Структурная схема лабораторного комплекса 7
3.1.2. Плата МК – системы 8
3.1.2.1. Конфигурируемые узлы МК C8051F064 10
3.1.2.2. Внешняя память XRAM 14
3.1.2.3. Входные усилители 15
3.1.2.4. Микросхема моста UART-USB 16
3.1.2.5. Сопряжение платы с PC 17
3.1.2.6. Питание платы 18
3.1.3. Требования к PC 18
3.1.4. ОСЦИГЕН 18
3.2 . Перечень программных средств лабораторного комплекса 19
3.2.1 Средства программирования и отладки МК-системы 19
3.2.1.1 Интегрированная среда разработки фирмы SiLabs IDE 2.0 19
3.2.1.2. Ассемблер, компилятор и линкер интегрированной среды разработки Keil 20
3.2.2. Средства разработки Windows-приложений 21
3.2.2.1. Среда разработки 21
3.2.2.2. Библиотека WIN32 API функций 21
3.2.3. Приложения для ОСЦИГЕНа. 22
3.2.3.1. Драйвер конфигурируемого выносного блока 22
3.2.3.2. Windows-приложение OGView 22
3.2.4. Драйвер виртуального COM-порта фирмы SiLabs 23
4. Разработка программного комплекса для решения целевой задачи 23
4.1. Функциональная схема реализации функций запоминающего осциллографа 23
4.2. Состав и механизм взаимодействия приложений программного комплекса 24
4.2.1. Схема программного комплекса 24
4.2.2. Протокол обмена между PC-приложением и МК-приложением 24
4.2.3. Таблица допустимых команд 24
4.2.4. Размещение в памяти значений выборок сигнала со стороны МК и ПК 26
4.3. Разработка приложения для МК-системы 27
4.3.1. Обобщенная схема алгоритма 27
4.3.2. Обоснование выбора языка программирования и среды разработки 28
4.3.2.1. Cравнение возможностей библиотек GUI для операционных систем Windows и Linux 28
4.3.3. Описание файлов проекта приложения 34
4.3.3.1. Модули приложения 34
4.3.3.2. Модули, подключаемые на этапе линкования 34
4.3.4. Структура и организация программы 34
4.3.5. Схемы алгоритмов и описание функций приложения 34
4.3.5.1. Перечень функций приложения 34
4.3.5.2. Организация бесконечного цикла встроенного приложения 35
4.3.5.3. Отключение сторожевого таймера 35
4.3.5.4. Переключение с внутреннего генератора на внешний 36
4.3.5.5. Конфигурирование портов ввода/вывода 37
4.3.5.6. Конфигурирование аналого-цифровых преобразователей ADC 39
4.3.5.7. Конфигурирование интерфейса DMA 42
4.3.5.8. Инициализация последовательного интерфейса UART 43
4.3.5.9. Выбор и инициализация таймера для установки скорости обмена данными по последовательному каналу 43
4.3.5.10. Инициализация таймера для установки времени дискретизации входного сигнала 44
4.3.5.11. Выбор режимов работы внешней памяти XRAM и ее интерфейса 44
4.3.5.12. Инициализация прерываний 44
4.3.5.13. Формирование цифровых отсчетов и их сохранение во внешней памяти XRAM 45
4.3.5.14. Передача данных на PC 45
4.3.5.15. Прием данных с PC 45
4.3.5.16. Другие используемые функции 46
4.3.5.17. Конфигурирование узлов МК с учетом данных, пришедших с PC 46
4.4. Разработка Windows-приложения 46
4.4.1. Особенности использования среды разработки 46
4.4.2. Описание файлов проекта 47
4.4.3. Обобщенная схема алгоритма многопоточного приложения 48
4.4.4. Внешний вид и описание графического интерфейса, принципы построения программы 48
4.4.5. Описание структуры и организация программы 49
4.4.5.1. Назначение подключаемых файлов 49
4.4.5.2. Описание прототипов функций 49
4.4.5.3. Функция WinMain() 50
4.4.5.4. Функция главного окна 50
4.4.5.5. Организация дополнительных потоков, их назначение 51
4.4.5.6. Рабочие функции дополнительных потоков 51
4.4.5.7. Синхронизация потоков 51
4.4.5.8. Особенности обработки сообщений Windows в программе 51
4.4.5.9. Функция рисования графика восстановленного сигнала 52
4.4.5.10. Разметка осей графика 53
4.4.5.11. Использование контекстуальной памяти для рисования графика 53
4.4.6. Работа с COM-портом, описание WinAPI-функций и структур данных 53
4.4.6.1. Инициализация COM-порта, обоснование выбора режима (синхронный, асинхронный), объема буфера приема/передачи данных 53
4.4.6.2. Организация настроек COM-порта в графическом интерфейсе 56
4.4.6.3. Использование функций WaitCommEvent(), WaitForSingleObject(), WaitForMultiplyObject() 56
4.4.7. Работа оператора с приложением 57
4.4.7.1. Последовательность запуска приложения на МК и ПК в лаборатории 57
4.4.7.2. Адаптация к спектру входного сигнала 57
4.4.8. Описание протокола RS-232 58
5. Список используемых источников информации 59
6. Приложения 60
6.1. Исходные тексты модулей программы для МК 60
6.2. Фрагменты листингов файлов МК-приложения, полученные в результате трансляций: MAP-file и др 65
6.3. Исходные тексты файлов Windows-приложения 67
6.4. Алгоритмы 82
6.4.1. Обобщенный алгоритм программы для МК 82
6.4.2. Дополнительные алгоритмы программы для МК 83
6.4.2.1. Алгоритм процедуры отключения WDT 83
6.4.2.2. Алгоритм функции SYSCLK_Init 84
6.4.2.3. Алгоритм функции Port_Init 85
6.4.2.4. Алгоритм функции ADCInit 86
6.4.2.5. Алгоритм функции DMAInit 88
6.4.2.6. Алгоритм работы функции UART0_Init 90
6.4.2.7. Алгоритм функции Timer3_Init 91
6.4.2.8. Алгоритм функции main 92
6.4.2.9. Алгоритм функции Config 93
6.4.2.10. Алгоритм функции SendData 94
6.4.2.11. Алгоритм функции ReceiveData 95
6.4.3. Обобщенный алгоритм программы Windows-приложения 96
6.4.3.1. Алгоритм работы функции рисования графика 96
6.4.3.2. Алгоритм обработки сообщений 97