Допомога у написанні освітніх робіт...
Допоможемо швидко та з гарантією якості!

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

КурсоваДопомога в написанніДізнатися вартістьмоєї роботи

Отже число, яке потрібно загрузити в перший таймер, після формування нуля дорівнює 158. В TН0 таймера TMR0 записуємо число 189, для формування заданої швидкості передачі даних. Встановлюємо біт RI в нуль, для використання переривання при прийомі байта даних. Розробка програми передачі даних через послідовний порт мікро контролера". Розрахунок часових затримок для формування імпульсів у програмі… Читати ще >

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

МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ ЛЬВІВСЬКИЙ ДЕРЖАВНИЙ ІНСТИТУТ НОВІТНІХ ТЕХНОЛОГІЙ ТА УПРАВЛІННЯ ІМ. В. ЧОРНОВОЛА Факультет інформаційних технологій Кафедра КСМ ПОЯСНЮВАЛЬНА ЗАПИСКА ДО КУРСОВОГО ПРОЕКТУ з дисципліни

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

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

Варіант № 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 — 10 000 000 для встановлення біта SMOD в одиницю.

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

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

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

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

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

Алгоритм

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,#1 000 0000b ;Встановлюємо біт SMOD в одиницю

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

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. А. В. Фрунзе. Микроконтроллеры? Это же просто

Показати весь текст
Заповнити форму поточною роботою