Методические указания для выполнения лабораторных работ Новосибирск 2006


Скачать 140.98 Kb.
НазваниеМетодические указания для выполнения лабораторных работ Новосибирск 2006
Дата публикации06.05.2013
Размер140.98 Kb.
ТипМетодические указания
userdocs.ru > Бухгалтерия > Методические указания
ГОУ ВПО Новосибирский государственный педагогический университет

В.Е. Дмитриев



Микропроцессоры. Язык Си
Методические указания для выполнения лабораторных работ

Новосибирск 2006

УДК

Д

Дмитриев В.Е. Язык Си. Методические указания к выполнению курсовой работы. Новосибирск. НГПУ. 2006.

Методические указания предназначены в качестве учебного пособия по дис­циплинам “Теоретические процессы бытовых машин и приборов” для студентов, обучающихся по специальности Сервис и “Компьютерное моделирование электронных устройств” для студентов, обучающихся по специальности Профессиональное обучение.

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

ISBN

© Дмитриев В.Е., 2006

© НГПУ, 2006
Содержание


Содержание




Введение




Отчет по работе № 1. Интегрированная среда разработки IAR Embedded Work Bench.




Отчет по работе № 2. Переменные и операторы языка Си. Решение квадратного уравнения.




Отчет по работе № 3. Функции языка Си.




Отчет по работе № 4. Процедуры.




Отчет по работе № 5. Массивы и таблицы.




Отчет по работе № 6. Объявления и “упрятывание” информации.




Отчет по работе № 7. Периферийные модули - Генераторы тактирующих импульсов.




Отчет по работе № 8. Периферийные модули - Порты ввода/вывода.




Отчет по работе № 9. Периферийные модули - Таймеры и компараторы.




Отчет по работе № 10. Периферийные модули - АЦП.




Отчет по работе № 11. ЖКИ, программирование протокола обмена с микропроцессором.




Отчет по работе № 12. Часы реального времени с индикацией времени на ЖКИ.




Отчет по работе № 13. Измерение температуры и вывод результатов на ЖКИ.



Введение



Отчет по работе № 1

Интегрированная среда разработки IAR Embedded Work Bench

Дата ................... Группа ........... Фамилия И.О. .......................................

Задание: 1. Прочтите электронный учебник - Гончарук Ю.П. Учебное руководство по использованию пакета программного обеспечения KickStart для программирования микроконтроллеров серии MSP430 компании Texas Instruments. Киев. КПУ. 2002г.

Задание: 2. Вместо предложенного в учебнике файла программы на ассемблере используйте программу написанную на Си. Для этого в меню Project выберите пункт Add Existing Project… Выберите файл проекта fet140_1_C.ewp, находящийся в папке: C:\Program Files\IAR Systems\Embedded Workbench Evaluation 4.0\430\FET_examples\fet140\C-source.

Задание: 3. Следуя указаниям из учебника, запустите программу на выполнение, используя внутрисхемный эмулятор Starter Evaluation KIT MSP430F 133 – 16901. Сохраните проект в своей личной папке.

Задание: 4. Заполните таблицу описаниями приведенных терминов.


Термин

Описание

Compile


Link


Make


Rebuild All


Команда Go


Команда Stop


Команда Reset


Команда Step


Команда Step into


Команда Goto cursor


Окно Memory


Окно Register


Окно Watch








Оценка ................................... Принял ................................... Дата .................

Отчет по работе № 2

Переменные и операторы языка Си. Решение квадратного уравнения

Дата ................... Группа ........... Фамилия И.О. .......................................

Задание: 1. Инициализируйте переменные - коэффициенты a, b и c, считая их целыми числами (int), и корни x1 и x2 квадратного уравнения, считая их типа double.

Задание: 2. Запишите на языке Си решение квадратного уравнения в теле функции main в проекте, использованном в работе № 1. Текст программы расположите выше инструкции for. Для решения уравнения используйте справочную систему программы IAR Systems для нахождения описания функции Си извлечения квадратного корня - sqrt. Понадобится также включить в проект математическую библиотеку Си

#include , содержащую функцию sqrt.

Задание: 3. Проверьте работоспособность программы в симуляторе и проконтролируйте в пошаговом режиме значения переменных x1 и x2.

Задание: 4. Запишите программу решения квадратного уравнения вместе с программой мигания светодиода из работы № 1 в нижеприведенной таблице. Каждую строку программного кода снабдите комментариями.

Программа

Комментарий







Оценка ................................... Принял ................................... Дата .................

Отчет по работе № 3

Функции языка Си

Дата ................... Группа ........... Фамилия И.О. .......................................

Задание: 1. Из функции main в проекте, использованном в работе № 2 необходимо исключить процедуру задержки времени, используемую для создания достаточной паузы для визуализации мигания светодиода. Процедуру задержки времени необходимо переписать, как подпрограмму, или функцию типа void с именем delay, которая принимает из функции main значение длительности паузы типа unsigned.

Задание: 2. Запустите программу на выполнение, используя внутрисхемный эмулятор Starter Evaluation KIT MSP430F 133 – 16901.

Задание: 3. Смените тип функции delay с void на unsigned. Возвращаемым значением будет 1.

Задание: 4. Запишите функцию delay и ее вызов из main в таблицу. В столбце комментариев запишите значение стека при входе и выходе из подпрограммы delay. Слева от программного кода Си укажите начальный адрес кода функции delay и адрес инструкции следующей после вызова функции delay, используя окно Disassembly.

Задание: 5. Укажите длину стека, записав адрес начала и конца стека на рисунке 1 – распределение оперативной памяти. Укажите начальный адрес ОЗУ. Для выполнения задания необходимо ознакомиться с технической документацией на применяемый процессор – файл с именем: Техническая документация.pdf. Длину стека можно узнать и менять в опциях проекта – меню Project/ options/ General options/ Stack/Heap – Stack size.

Программа

Комментарий











Оценка ................................... Принял ................................... Дата .................

Отчет по работе № 4

Процедуры

Дата ................... Группа ........... Фамилия И.О. .......................................

Задание: 1. Видоизмените тело функции delay, используя вместо процедуры do… while процедуру while.

Задание: 2. Видоизмените тело функции delay, используя процедуру for.

Задание: 3. Видоизмените тело функции delay, используя процедуру if.

Задание: 4. Запишите все четыре способа решения задачи в таблицу и каждую строку снабдите комментариями.

Программа

Комментарий








Оценка ................................... Принял ................................... Дата .................

Отчет по работе № 5

Массивы и таблицы

Дата ................... Группа ........... Фамилия И.О. .......................................

Задание: 1. Запишите комментарии к приведенной в таблице программе.

Задание: 2. Инициализируйте двумерный массив 4x2. Напишите программу решения уравнения у = х2.

Задание: 3. Заполните массив значениями у для х = 0, 1, 2, 3.

Задание: 4. Проверьте программу в симуляторе и запишите комментарии.

Программа

Комментарий

char Hello []={"Hello!"};

char print[100];

int n;
n = Writedata (Hello);

//Функция копирует не нулевые значения в //строку print и возвращает длину строки.

void Writedata (char *string)

{

unsigned i = 0;

while (string[i] != 0)

{

print[i] = string[i];

i++;

}

return i;

}










Оценка ................................... Принял ................................... Дата .................

Отчет по работе № 6

Объявления и “упрятывание” информации

Дата ................... Группа ........... Фамилия И.О. .......................................

Задание: 1. Добавьте в проект, кроме файла с именем main.c, файлы с именами func.c и def.h.

Задание: 2. Все подпрограммы созданные в работах №1 – 5 вынесите в файл func.c.

Задание: 3. В файле def.h объявите функции, находящиеся в func.c глобальными (общими).

Задание: 4. В main.c добавьте строку #include . С помощью #define объявите разное время задержки времени для светодиода – second_0,5, second_0,25… Вместо задания числового значения в функции вызова подпрограммы задержки времени используйте введенные обозначения.

Задание: 5. Проверьте программу во внутрисхемном эмуляторе и запишите комментарии к файлу def.h, зарисуйте структуру и запишите описание всего проекта.

Программа

Комментарий








Структура и описание проекта

Оценка ................................... Принял ................................... Дата .................

Отчет по работе № 7

Генераторы тактирующих импульсов

Дата ................... Группа ........... Фамилия И.О. .......................................

Задание: 1. LFXT1CLC = 32768Гц. Установить значения регистров BCSCTL1 и BCSCTL2 таким образом, чтобы ACLK = LFXT1CLC/8, MCLK = LFXT1CLC. Используйте электронный учебник по дисциплине.

Задание: 2. Отобразите на рисунке направление движения сигнала от LFXT1CLC до ACLK и MCLK, подчеркните значения кода регистров, необходимых для решения задания 1.

Задание: 3. Запишите программу в таблицу.



Рисунок 2. Блок-схема основного тактирования


Программа

Комментарий

^ BCSCTL1 =

BCSCTL2 =






Оценка ................................... Принял ................................... Дата .................
Отчет по работе № 8

Порты ввода/вывода

Дата ................... Группа ........... Фамилия И.О. .......................................

Задание: 1. Сконфигурируйте порт 1 на выход, а порт 2 на вход. Порт 3: 4 младших бита на вход, остальные на выход. Используйте электронный учебник по дисциплине.

Задание: 2. Порт 6 сконфигурируйте на использование функций периферийного модуля, укажите его название.

Задание: 3. У второго порта разрешите внешнее прерывание для 4 младших разрядов. Два младших бита настройте для прерывания по фронту сигнала с низкого на высокий, остальные два с высокого на низкий.

Задание: 4. Запишите программу обработки прерывания второго порта: Мигание светодиода останавливается при появлении первого импульса на выводе P2.0 и возобновляется при повторном. Используйте флаг.

Задание: 5. Выполните программу в эмуляторе и проверьте ее работоспособность, касаясь вывода P2.0 пальцем. Устраните явление дребезга контактов введением паузы приблизительно равной 0,2 с. Запишите программу в таблицу и прокомментируйте.

Программа

Комментарий

//------- подпрограмма

P1DIR =

P2DIR =

P3DIR =

P6SEL =

//-------------------- main -------------------------

int flag = 0;


if(flag)

//-------------------------------------------------

// подпрограмма прерывания 2 порта

//-------------------------------------------------

#pragma vector=PORT2_VECTOR

__interrupt void Port2_Interrupt (void)

{

}





Оценка ................................... Принял ................................... Дата .................

Отчет по работе № 9

Таймеры и компараторы

Дата ................... Группа ........... Фамилия И.О. .......................................

Задание: 1. Инициализируйте таймер А. Тактирование от ACLK. Режим Вверх. Управление светодиодом из программы прерывания таймера. Светодиод должен мигать с частотой ровно 1 Гц. Используйте учебник.

Задание: 2. Проверьте программу в эмуляторе, запишите в таблицу и прокомментируйте.

Р
исунок 3. Блок-схема таймера А


Программа

Комментарий

//------- подпрограмма ------------

^ TACTL =
TACCR0 =


TAR =

//------- подпрограмма ------

#pragma vector=TIMERA0_VECTOR

__interrupt void Timer_A (void)

{

P1OUT

}



Оценка ................................... Принял ................................... Дата .................

Отчет по работе № 10

АЦП

Дата ................... Группа ........... Фамилия И.О. .......................................

Задание: 1. Инициализируйте блок АЦП. Входной вывод P6.0. Максимальная частота дискретизации, используя MCLK. Использовать прерывание. Установить опорное напряжение 2,5 Вольт.

Задание: 2. Зарисуйте направление входного сигнала, опорного напряжения, движение цифрового кода АЦП. Запишите значения регистров и укажите используемые переключатели. Запишите подпрограмму инициализации и комментарии к ней.



Рисунок 4. Блок-схема АЦП12


Программа

Комментарий

//------- подпрограмма ------------




Оценка ................................... Принял ................................... Дата .................

Отчет по работе № 11

ЖКИ, программирование протокола обмена с микропроцессором

Дата ................... Группа ........... Фамилия И.О. .......................................

Задание: 1. Ознакомьтесь с технической документацией на ЖКИ: Файлы t6963c.pdf, t6963rus.doc, WG240128A.pdf. Не вдаваясь в подробности инициализации модуля ЖКИ, напишите программу вывода данных на ЖКИ от процессора. Различайте вывод команд и данных, или, со стороны ЖКИ, запись в регистр команд или данных. Схема электронная принципиальная приведена на рисунке 5.

Задание: 2. Запишите программу в таблицу и прокомментируйте ее.



Рисунок 5. Схема подключения ЖКИ модуля к процессору

Программа

Комментарий

//----------------- объявления -----------------------

#define LCD_RULES_PORT P

#define LCD_DATA_PORT P

#define DATA 0

#define CMD 1

#define ADRES

//------------- подпрограмма вывода адреса -----------------

void Writeadres (unsigned adr, unsigned cmd)

{

Writebyte(adr & 0x00FF, DATA);

Writebyte((adr & 0xFF00) >>8, DATA);

Writebyte(ADRES, CMD);

}

//--------подпрограмма вывода данных на ЖКИ ----------

void Writebyte (char data, unsigned type)

{

LCD_RULES_PORT

LCD_DATA_PORT

if(type == DATA) LCD_RULES_PORT

LCD_RULES_PORT

LCD_RULES_PORT

}


Порт управления ЖКИ.

Порт данных.

ADRES* – команда вывода адреса -

Адрес двухбайтовое число.

cmd или type – команда или данные.

------------- алгоритм проверки статуса -----------------

RD всегда 0, WR всегда 1 – только записываем в ЖКИ.
------------- алгоритм посылки данных -------------------
*значение ADRES см. техническую документацию

Оценка ................................... Принял ................................... Дата .................

Отчет по работе № 12

Часы реального времени с индикацией времени на ЖКИ

Дата ................... Группа ........... Фамилия И.О. .......................................

Задание: 1. Используя результаты полученные в работе № 9, напишите программу подсчета секунд, минут и часов. Каждую секунду выводите данные на ЖКИ монитор в верхний левый угол. Отделяйте секунды, минуты и часы двоеточием. Используйте программный флаг, устанавливаемый в подпрограмме прерывания таймера А.

Задание: 2. Подключите ЖКИ размером 128x128 к процессору. Проверьте работоспособность программы. Запишите программу и комментарии к ней.

Программа

Комментарий








Оценка ................................... Принял ................................... Дата .................

Отчет по работе № 13

Измерение температуры и вывод результатов на ЖКИ

Дата ................... Группа ........... Фамилия И.О. .......................................

Задание: 1. Используя результаты полученные в работе № 9, 10 и 11 измеряйте температуру процессора с помощью встроенного датчика температуры с частотой один раз в секунду. АЦП запускайте в режиме однократного измерения. Разрешение АЦП преобразования давайте в подпрограмме прерывания таймера А. После срабатывания прерывания АЦП установите программный флаг разрешения вывода на экран. Температуру выводите во второй строке слева, отделяя десятые доли градуса запятой. После цифрового значения температуры введите символ °С.

Задание: 2. Проверьте работоспособность программы. Запишите программу и комментарии к ней.

Программа

Комментарий








Оценка ................................... Принял ................................... Дата .................
УЧЕБНОЕ ИЗДАНИЕ


канд. техн. наук Дмитриев Василий Евгеньевич

Язык Си
Методические указания для выполнения лабораторных работ
Рецензенты: д-р физ-мат. наук, проф. Трофимов В.М.

Лицензия ЛР № 021257 от 27.11.97

Подписано в печать 2006г. с оригинал макета

Бумага офсетная № 1. формат 60х84 1/16, печать трафаретная - Riso

Усл. печ. л. 1,0. тираж 20 экз., заказ № Цена договорная.

Издательство и типография ГОУ ВПО Новосибирский государственный педагогический университет (НГПУ). 630, Новосибирск, ул. Вилюйская, 28.

Похожие:

Методические указания для выполнения лабораторных работ Новосибирск 2006 iconМетодические указания предназначены для выполнения лабораторных работ...
Ния содержат теоретический материал по данной теме, технологию выполнения практической части и задания к лабораторным работам, контрольные...
Методические указания для выполнения лабораторных работ Новосибирск 2006 iconМетодические указания для выполнения лабораторных работ по дисциплине...
Методические указания предназначены для курсантов дневной и студентов заочной формы обучения в направлении подготовки 070104 «Морской...
Методические указания для выполнения лабораторных работ Новосибирск 2006 iconМетодические указания по выполнению контрольных работ по курсу «трудовое,...
Методические указания по выполнению контрольных работ для студентов заочной формы обучения, обучающихся по специальности
Методические указания для выполнения лабораторных работ Новосибирск 2006 iconМетодические указания к контрольным заданиям по дисциплине «Химия»
Учебные занятия студентов-заочников по курсу химии состоят из изучения материала по учебникам или учебным пособиям, выполнения контрольных...
Методические указания для выполнения лабораторных работ Новосибирск 2006 iconОбщие методические указания по выполнению контрольных работ Общие положения
Методические указания и задания для выполнения контрольных работ составлены в соответствии с программой курса «Гражданское право»...
Методические указания для выполнения лабораторных работ Новосибирск 2006 iconМетодические указания и темы для написания курсовых работ по курсу...
Методические указания к заданиям для выполнения курсовых работ по гражданскому процессуальному праву России
Методические указания для выполнения лабораторных работ Новосибирск 2006 iconМетодические указания по выполнению учебно-исследовательских работ...
Методические указания предназначены для студентов, обучающихся по специальности (направлению) «Государственное и муниципальное управление»...
Методические указания для выполнения лабораторных работ Новосибирск 2006 iconМетодические указания по самостоятельной работе студентов заочной...
Знание студентами органической химии, а также их умение оперировать этими знаниями для решения поставленной задачи проверяется путем...
Методические указания для выполнения лабораторных работ Новосибирск 2006 iconИнформатика основы программирования в среде Turbo Pascal Методические...
Основы программирования в среде Turbo Pascal: Методические указания к выполнению лабораторных работ для студентов специальности опу...
Методические указания для выполнения лабораторных работ Новосибирск 2006 iconМетодические указания для выполнения лабораторных работ и расчетно-графических...
Важным преимуществом компьютерных моделей является то, что они помогают наглядно объяснить явления, наблюдаемые на практике, на микроскопическом...
Вы можете разместить ссылку на наш сайт:
Школьные материалы


При копировании материала укажите ссылку © 2015
контакты
userdocs.ru
Главная страница