48887 (Розробка програми передачі даних через послідовний порт мікроконтролера)

2016-07-30СтудИзба

Описание файла

Документ из архива "Розробка програми передачі даних через послідовний порт мікроконтролера", который расположен в категории "". Всё это находится в предмете "информатика" из 1 семестр, которые можно найти в файловом архиве . Не смотря на прямую связь этого архива с , его также можно найти и в других разделах. Архив можно найти в разделе "курсовые/домашние работы", в предмете "информатика, программирование" в общих файлах.

Онлайн просмотр документа "48887"

Текст из документа "48887"

МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ

ЛЬВІВСЬКИЙ ДЕРЖАВНИЙ ІНСТИТУТ НОВІТНІХ ТЕХНОЛОГІЙ ТА УПРАВЛІННЯ ІМ. В.ЧОРНОВОЛА

Факультет інформаційних технологій

Кафедра КСМ

ПОЯСНЮВАЛЬНА ЗАПИСКА

ДО КУРСОВОГО ПРОЕКТУ

з дисципліни

«МІКРОПРОЦЕСОРНІ СИСТЕМИ»

«Розробка програми передачі даних через

послідовний порт мікро контролера»

Варіант №30

Розробив студент групи КІ-31

Височанський Ярослав Михайлович

«____»____________________2006 р.

Керівник___________/ Колосов В.Р. /

«____»____________________2006 р.

Оцінка__________________________

Львів-2006

Розрахунок часових затримок для формування імпульсів у програмі

Для формування нуля:

Отже число, яке потрібно загрузити в перший таймер дорівнює 200.

Для формування одиниці:

Отже число, яке потрібно загрузити в перший таймер, після формування нуля дорівнює 158.

Розрахунок швидкості передачі даних через послідовний порт

Тут ми розраховуєм число, яке потрібно зарядити в таймер/лічильник для генерації потрібної швидкості послідовного порту, в залежності від режиму його роботи та заданої швидкості передачі даних.

Швидкість передачі даних = 1750 біт/с; Режим роботи порту – 3; fclk=22,5МГц

Формула, за допомогою якої визначаємо потрібні дані:

Підставляємо у формулу дані, задані за умовою. Рахуємо, що SMOD=1.

Примітка: при SMOD=1 швидкість передачі вдвоє більша ніж при SMOD=1

Дані для програмування регістрів спеціальних функцій

1. В регістр управління/статусу SCON встановлюємо одиниці у бітах SM0, SM1 для визначення режиму роботи послідовного порту.

2. В регістр масок переривання IE встановлюємо одиниці в бітах EA, ES для дозволу використання програмою переривань.

3. Накладаємо маску на регістр управління потужністю PCON – 10000000 для встановлення біта SMOD в одиницю.

4. В регістр режиму таймера/лічильника TMOD ми записуємо двійкове число 00100010, для встановлення таймерів у 2-ий режим роботи.

5. В TН0 таймера TMR0 записуємо число 189, для формування заданої швидкості передачі даних.

6. Встановлюємо біт RI в нуль, для використання переривання при прийомі байта даних.

7. В TL1 таймера TMR1 записуємо число 200, для формування нуля із заданою тривалістю на лінії порту.

8. В TL1 таймера TMR1 записуємо число 158, для формування одиниці із заданою тривалістю на лінії порту.

Алгоритм

Початок





OSN




Nul:



TF = 1

Ні



Так



Так

Ні


Лічильник байт



Odyn:


TF = 1





4.2 Алгоритм підпрограми обробки переривань від послідовного порту

Послідовний порт








Вихід


Лістинг програми

org 0

jmp Osn ;Перехід на основну програму

org 0023h

mov @R0,SBUF ;Зчитування з SBUF в адрес, що знаходиться в R0

inc R0 ;Інкрементуєм лічильник початкової адреси масиву

dec R5 ;Декрементуєм лічильник байт

clr RI ;Скидаємо прапор переривання приймача

reti ;Вихід з підпрограми обробки переривань

Osn: setb SM0 ;Визначаєм режим роботи послідовного порту

setb SM1

clr SM2

setb REN ;Встановлюємо біт дозволу прийому даних

setb EA ;Знімаєм блокування переривань

setb ES ;Встановлюєм дозвіл на переривання від посл. порту

orl PCON,#10000000b ;Встановлюємо біт SMOD в одиницю

mov TMOD,#00100010b ;Визначаємо режим роботи таймерів

mov TH0,#189 ;Загружаєм TMR0

mov R0,#4eh ;Загружаєм лічильник початкової адреси масиву

mov R5,#27 ;Загружаєм лічильник байт

setb TR0 ;Запускаєм TMR0

Zagr: mov TH1,#200 ;Загружаєм TMR1

clr P0.7 ;Встановлюємо на лінії порту P0.7 нуль

setb TR1 ;Запускаєм TMR1

Nul: jnb TF1,Nul ;Перевірка на переповнення TMR1

clr TR1

mov TH1,#158

setb P0.7 ;Встановлюємо на лінії порту P0.7 одиницю

setb TR1

Odyn: jnb TF1,Odyn

clr TR1

jmp Zagr ;Переходимо на мітку Zagr

Список використаної літератури

  1. В.В. Сташин, А.В. Урусов, О.Ф. Мологонцева. Проектирование цифровых устройств на однокристальніх микроконтроллерах.

2. А.В. Фрунзе. Микроконтроллеры? Это же просто

Свежие статьи
Популярно сейчас
Как Вы думаете, сколько людей до Вас делали точно такое же задание? 99% студентов выполняют точно такие же задания, как и их предшественники год назад. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Нет! Мы не выполняем работы на заказ, однако Вы можете попросить что-то выложить в наших социальных сетях.
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
4125
Авторов
на СтудИзбе
667
Средний доход
с одного платного файла
Обучение Подробнее