Частина тексту файла (без зображень, графіків і формул):
Міністерство освіти і науки України
Національний університет «Львівська політехніка»
Звіт
до лабораторної роботи №2
з курсу „Проектування контролерів периферійних пристроїв”
«Ознайомлення з універсальним асинхронним приймачем/передавачем (UART)»
Підготував: ст. гр. СКС-12
Шлода В.В.
Перевірив:
Кочан Р. В.
Львів 2008
Тема: Ознайомлення з універсальним асинхронним приймачем/передавачем (UART)
Мета: Ознайомлення з режимами роботи Універсального асинхронного приймача/передавача (UART) в мікроконтролера АТ89С51 та його можливостями по зв'язку з персональним комп'ютером.
Виконання роботи
Завдання:
Настроїти UART в заданий режим роботи (частота, формат повідомлення);
Прийняти дані з перемикачів та кнопок підключених до вхідного порту та вивести їх через UART в на дисплей комп'ютера;
Прийняти дані з комп'ютера через UART та вивести їх на світлодіодний індикатор підключений до вихідного порту.\
№ варіанту
6
Частота роботи послідовного порту
2400
Таймер, який задає частоту
Т2
Вхідний порт
2
Вихідний порт
0
#include <reg51.h>
#include <intrins.h>
#define P_OUT P1
#define P_IN P0
void init_UART(void);
void delay(void);
/*---------------------------------*/
void main(void)
{
unsigned char k;
init_UART();
EA=1;
while(1)
{
if(k!=P_IN)
{ SBUF=P_IN;
k=P_IN;
delay(); } }
}
/*---------------------------------*/
void delay(void)
{
unsigned int i;
for(i=0;i<0xfff0;i++);
}
/*---------------------------------*/
void init_UART(void)
{
SCON=0x50;
PCON=0;
TMOD=0x20;
TH1=0xF4;
TR1=1;
RI=0;
ES=1;}
/*---------------------------------*/
void int_UART(void) interrupt 4
{if(RI)
{ RI=0;
// P_OUT=SUBF^0xff;
P_OUT=SBUF^0xff; }
if(TI)TI=0;}
Висновок:
Ознайомився з режимами роботи універсального асинхронного приймача/передавача (UART) в мікроконтролера АТ89С51 та його можливостями по зв'язку з персональним комп'ютером.
В результаті виконання програми на світлодіодний індикатор виводиться двійкове значення байту посланого програмою управління терміналом. Після кожного посланого байту показ світлодіодного індикатора змінюється. Нове, виставлене з допомогою кнопок та перемикачів значення виводиться на дисплей терміналу.
Ви не можете залишити коментар. Для цього, будь ласка, увійдіть
або зареєструйтесь.
Ділись своїми роботами та отримуй миттєві бонуси!
Маєш корисні навчальні матеріали, які припадають пилом на твоєму комп'ютері? Розрахункові, лабораторні, практичні чи контрольні роботи — завантажуй їх прямо зараз і одразу отримуй бали на свій рахунок! Заархівуй всі файли в один .zip (до 100 МБ) або завантажуй кожен файл окремо. Внесок у спільноту – це легкий спосіб допомогти іншим та отримати додаткові можливості на сайті. Твої старі роботи можуть приносити тобі нові нагороди!