Курсовая работа: Обработка сигналов на основе MCS-51

INC R0 ; продвижение указателя адреса

JNZ Rl, LOOP ; цикл, если не все данные переданные

4. Битовые операции в MCS -51

Пример 31. Операция Исключающее ИЛИ используется очень часто для сравнения бит, или их сброса. В кодах битового процессора такой операции нет, но легко осуществляется наложение логической операции Исключающее ИЛИ на флажок переноса:

JNB bit, LZ ; исключительное ИЛИ для флажка переноса

CPL С ; инверсия флажка

LZ: ; продолжение программы

Пример 32. Преобразовать байт в последовательный код и передать его через Р1.0, не воздействуя при этом на остальные разряды порта. Передачу вести, начиная с младшего бита:

MOV R7,#8D ; инициализация счетчика циклов

LOOP: RRC А ; присвоение переноса значение бита А.0

MOV Р1.0, С ; передача бита

DJNZ R7, LOOP ; цикл, если не все биты переданы

Время выполнения программы 41 мкс, время передачи – 5 мкс (скорость передачи – 200 кбит/с).

Пример 33. Вычислить булеву функцию 3-х переменных Y=(X×)+W (X+V). Переменные X, V, W поступают на линии 2, 1, 0 порта 1; результат Y необходимо вывести на линию 3 порта 1. Для сохранения промежуточных значений использовать бит F0H.

Y BIT P1.3 ; спецификация бит порта 1

Х BIT P1.2

V BIT Р1.1

W BIT Р1.0

MOV С, X ; ввод Х

ANL С, /V ; X×

MOV F0, С ; запоминание результата в F0

MOV С, Х ; ввод Х

ORL С, V ; X+V

ANL С, W ; W (X+V)

ORL С, F0 ; (W (X+V))+(X×)

MOV Y, С ; вывод результата

Время выполнения программы 14 мкс.

Пример 34. Организовать последовательную передачу данных из аккумулятора на 0 вывод порта 2. Пересылку вести манчестерским кодом (каждый бит кодируется двумя интервалами: первый интервал имеет инверсию бита, второй – его прямое значение):

MOV R0,#8D ; инициализация счетчика бит

К-во Просмотров: 501
Бесплатно скачать Курсовая работа: Обработка сигналов на основе MCS-51