Главная
Случайная страница
Полезное:
Как сделать разговор полезным и приятным
Как сделать объемную звезду своими руками
Как сделать то, что делать не хочется?
Как сделать погремушку
Как сделать так чтобы женщины сами знакомились с вами
Как сделать идею коммерческой
Как сделать хорошую растяжку ног?
Как сделать наш разум здоровым?
Как сделать, чтобы люди обманывали меньше
Вопрос 4. Как сделать так, чтобы вас уважали и ценили?
Как сделать лучше себе и другим людям
Как сделать свидание интересным?
Категории:
АрхитектураАстрономияБиологияГеографияГеологияИнформатикаИскусствоИсторияКулинарияКультураМаркетингМатематикаМедицинаМенеджментОхрана трудаПравоПроизводствоПсихологияРелигияСоциологияСпортТехникаФизикаФилософияХимияЭкологияЭкономикаЭлектроника
|
Описание команд РIСI6С64
Каждая команда PIC16C64 представляет собой четырнадцати битное слово, состоящее из кода команды, который соответствует типу команды и одного или более операндов.
Общий формат команд
Байт-ориентированные операции
13 8
|
| 6 0
| Код операции
| d
| f (файл #)
|
Таблица 2.2
Описание поля кода команды
Значение
| Описание
| f
| Адрес файлового регистра
| w
| Аккумулятор
| b
| Адрес бита в регистре
| k
| Литерал, константа или метка
| x
| Ассемблер сгенерирует код, когда x = 0. Это рекомендуемая форма использования для совместимости со всеми программными средствами.
| d
| D=0 результат хранится в регистре W
D=1 результат хранится в регистре f
По умолчанию d=1
| label
| Имя метки
| TOS
| Вершина стека
| PC
| Программный счетчик команд
| PCLATH
| Программный счетчик
| GIE
| Общее разрешение прерываний
| WDT
| Сторожевой счетчик времени
| TO
| Тайм-аут
| PD
| Выключение питания
|
Описание системы команд МК PIC16C64 приведено в таблице 2.3
Таблица 2.3
Описание команд PIC16C64
Мнемоника команды
| Описание
| Циклы
| Код команды
|
| Прим
| ADDWF f, d
| сложение W c f
|
| 00 0111 dfff ffff
| C,DC, Z
| 1,2
| ANDWF f, d
| логическое И W и f
|
| 00 0101 dfff ffff
| Z
| 1,2
| CLRF f
| сброс регистра f
|
| 00 0001 lfff ffff
| Z
|
| CLRW -
| сброс регистра W
|
| 00 0001 0xxx xxxx
| Z
|
| COMF f, d
| инверсия регистра f
|
| 00 1001 dfff ffff
| Z
| 1,2
| DECF f, d
| декремент регистра f
|
| 00 0011 dfff ffff
| Z
| 1,2
| DECFSZ f, d
| декремент f, пропустить команду, если 0
| 1(2)
| 00 1011 dfff ffff
|
| 1,2,3
| INCF f, d
| инкремент регистра f
|
| 00 1010 dfff ffff
| Z
| 1,2
| INCFSZ f, d
| инкремент регистра f, пропустить, если 0
| 1(2)
| 00 1111 dfff ffff
|
| 1,2,3
| IORWF f, d
| логическое ИЛИ W и f
|
| 00 0100 dfff ffff
| Z
| 1,2
| MOVF f, d
| пересылка регистра f
|
| 00 1000 dfff ffff
| Z
| 1,2
| MOVWF f
| пересылка W в f
|
| 00 0000 lfff ffff
|
|
| NOP -
| холостая команда
|
| 00 0000 0xx0 0000
|
|
| RLF f, d
| сдвиг f влево через перенос
|
| 00 1101 dfff ffff
| C
| 1,2
| RRF f, d
| сдвиг f вправо через перенос
|
| 00 1100 dfff ffff
| C
| 1,2
| SUBWF f, d
| вычитание W из f
|
| 00 0010 dfff ffff
| C, DC,Z
| 1,2
| SWAPF f, d
| обмен тетрад в f
|
| 00 1110 dfff ffff
|
| 1,2
| XORWF f, d
| Исключающее ИЛИ W и f
|
| 00 0110 dfff ffff
| Z
| 1,2
| Команды работы с битами регистров (бит-ориентированные)
| BCF f, b
| сброс бита в регистре f
|
| 00 00bb bfff ffff
|
| 1,2
| BSF f, b
| Установка бита в регистре f
|
| 01 01bb bfff ffff
|
| 1,2
| BTFSC f, b
| Пропустить команду, если бит равен 0
| 1(2)
| 01 10bb bfff ffff
|
|
| BTFSS f, b
| Пропустить команду, если бит равен 1
| 1(2)
| 01 11bb bfff ffff
|
|
| Команды работы с константами и операции перехода
| ADDLW k
| Сложение константы с W
|
| 11 111x kkkk kkkk
| C, DC, Z
|
| ANDLW k
| Логическое И W и f
|
| 11 1001 kkkk kkkk
| Z
|
| CALL k
| вызов подпрограммы
|
| 10 0kkk kkkk kkkk
|
|
| CLRWDT -
| сброс сторожевого таймера WDT
|
| 00 0000 0110 0100
| TO, PD
|
| GOTO k
| переход по адресу
|
| 10 1kkk kkkk kkkk
|
|
| IORLW k
| Логическое ИЛИ константы и W
|
| 11 1000 kkkk kkkk
| Z
|
| MOVLW k
| пересылка константы в W
|
| 11 00xx kkkk kkkk
|
|
| RETFIE -
| возврат из прерывания
|
| 00 0000 0000 1001
|
|
| RETLW k
| возврат из подпрограммы с загрузкой константы в W
|
| 11 01xx kkkk kkkk
|
|
| RETURN -
| возврат из подпрограммы
|
| 00 0000 0000 1000
|
|
| SLEEP -
| переход в режим SLEEP
|
| 00 0000 0110 0011
| TO, PD
|
| SUBLW k
| вычитание W из константы
|
| 11 110x kkkk kkkk
| C,DC, Z
|
| XORLW k
| Исключающее ИЛИ константы и W
|
| 11 1010 kkkk kkkk
| Z
|
|
Примечание:
- Во всех командах операнд f принимает значения от 0 до 127, а операнд d значения 0 или 1.
- В бит-ориентированных операциях операнд b принимает значения от 0 до 7.
- В литеральных операциях и операциях управления, кроме оговоренных случаев, операнд k принимает значения от 0 до 255.
Обозначения:
С: Carry bit - бит переноса / заема (для команд ADDWF, ADDLW, SUBLW, SUBWF) (для заема полярность инверсная):
1 - в результате операции имеет место выход переноса из наиболее значащего бита результата;
0 - нет переноса из наиболее значащего бита результата.
DC: Digit Carry bit - бит десятичного переноса /заема (для оманд ADDWF, ADDLW, SUBLW, SUBWF) (для заема полярность инверсная):
1 - выход переноса из4-го младшего бита при образовании результата;
0 - выход переноса из 4-го младшего разряда результата
Z - Zero bit - бит результата:
1 - результат арифметической или логической операции есть 0;
0 - результат арифметической или логической операции есть не 0;
\ - инверсия
W/f - результат помещается в регистр W, если d=0, и в регистр f, если d=1.
3.ОПИСАНИЕ СТРУКТУРНОЙ СХЕМЫ СТАНЦИИ ЛВС, УЗЛОВ ПРИЕМА И ВЫДАЧИ
В состав станции входят следующие устройства:
- Микроконтроллер;
- Счетчик-байт;
- Дешифратор;
- Кодер;
- Декодер;
- Регистры собственного адреса;
- Логические элементы «И», «НЕ», «ИЛИ»;
- Приемник;
- Передатчик;
- Регистры передачи и приема;
- Выделители НО и КО;
- Формирователи НО и КО;
Схемы приема и выдачи кадров сетевой технологии МДШ представлены на рисунках 3.1 и 3.2 соответственно.
Date: 2015-12-13; view: 452; Нарушение авторских прав Понравилась страница? Лайкни для друзей: |
|
|