Студопедия
rus | ua | other

Home Random lecture






Пример программирования последовательного порта


Date: 2015-10-07; view: 384.


Пусть требуется принять в асинхронном режиме данные со скоростью 9600 бод и записать их во внешнюю память, начиная с ячейки 00H до 05FFH при тактовой частоте синхрогенератора микроконтроллера 11059 МГц.

 

jmp PROG ; Обход подпрограммы обработки прерывания от

;последовательного порта;

org 0023H ; Установка 1-ой команды подпрограммы обработки

; прерывания на вектор;

mov A, SBUF ; Начало подпрограммы обработки прерывания;

movx @DPTR, A; Пересылка байта в ячейку внешней памяти;

inc DPTR ; Увеличение адреса ячейки внешней памяти на 1;

clr RI ; Сброс флага запроса прерывания от приёмника;

reti ; Возврат из подпрограммы прерывания приёмника;

 

PROG:

mov TMOD, #00100000b; выбор 2-го режима работы Т/С1;

mov TH1, #FDH ; Загрузка в счётный регистр таймера T/C1 числа, ;

;определяющего скорость обмена (см. таблицу);

mov TCON, #01000000b; включение Т/С1;

mov SCON, #11010000b; Выбор 3-го режима работы последовательного

; порта (9 бит данных), установка бита

;разрешения приёма REN = 1, сброс бита RI;

mov TE, #10010000; общее и индивидуальное разрешение прерываний

; от последовательного порта (установка битов ЕА

; и ES);

DD: mov DPTR, #00H ; загрузка начального адреса ячейки внешней памяти;

SS: mov R0, DPH; ; ожидание, когда внешняя память заполнится до

cjne R0, # 05h, SS ; адреса 0500Н;

mov R0, DPL ; ожидание, когда внешняя память заполнится до

cjne R0, #FFH, SS; адреса 05FFH;

jmp DD ; повторение цикла заполнения ячеек внешней памяти

; по тем же адресам;

 

Литература

 

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

3.2. А.Е.Васильев. Микроконтроллеры. Разработка встраиваемых приложений. 2008, 304 с.

3.3. Белов А.В. Конструирование узлов на микроконтроллерах. – СПБ.: "Наука и техника, 2005

3.4. Базылев В.К. Микропроцессорные системы сбора и обработки данных: методические указания к лабораторным работам / Рязан. Гос. Радиотехн. Ун-т: сост В. К. Базылев, Рязань, 2012. 56 с

3.5. Программирование интегральной системы сбора данных ADuC812: методические указания к лабораторным работам / Рязан. Гос. Радиотехн. Ун-т, сост. В. К. Базылев. Рязань, 2010. 24 с.

3.6. Каспер Э. Программирование на языке Ассемблера для микроконтроллеров i8051. 2004. 191 с.

3.7. Болски М. И. Язык программирования Си: справочник: пер. с англ. – М.: Радио и связь, 1988. – 96 с.

3.8. Уэйт М., Прата С., Мартин Д. Язык Си для начинающих: пер. с англ. – М.: Мир, 1988. – 120 с.

3.9. Proteus по-русски. Радиоежегодник. Выпуск 24, 2013 г.

 

 


<== previous lecture | next lecture ==>
Режимы 2 и 3 работы последовательного порта | 
lektsiopedia.org - 2013 год. | Page generation: 1.328 s.