Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Савенко.doc
Скачиваний:
24
Добавлен:
02.04.2015
Размер:
765.44 Кб
Скачать

2.3 Свойства периферииpic16c6x

Периферия микропроцессорного комплекта PIC16C64 характеризуется следующими свойствами:

  • Таймер 0 (TMR0): 8 битовый таймер/счетчик с предварительным делителем.

  • Таймер 1 (TMR1): 16 битовый таймер/счетчик с предварительным делителем. TMR1 может быть инкрементирован во время паузы через внешний кристалл/синхроимпульс.

  • Таймер 2 (TMR2): 8 битовый таймер/счетчик с регистром периода предделителем и постделителем.

  • Модуль Захват/Сравнение/Широтноимпульсная модуляция CCP (Capture/Compare/Pulse with modulation - PWM). Захват - 16 разрядный, максимальное разрешение 125 нс. Сравнение – 16 разрядное, максимальное разрешение 100 нс, максимальная PWM разрешающая способность - 10 бит.

  • Синхронный последовательный порт с последовательным интерфейсом (Synchronous Serial Port - SSP with SPI and I2C bus).

  • Универсальный синхронно-асинхронный приемник - передатчик (Universal Synchronous Asynchronous Receiver Transmitter - USART/SCI).

  • Параллельный порт для подчиненного (Parallel Slave Port - PSP) - 8 битовый с внешним управлением по чтению (RD\), записи (WR\) и выбору кристалла (CS\).

  • Схемы определения границ с перезапуском на границах (Braun-out detection circuitry for Braun-out Reset).

2.4 Система команд pic 16cxx

Система команд микропроцессорного комплекта PIC 16CXX приведена в таблице 2.1.

Таблица 2.1 Система команд PIC 16CXX

Мнемоника

Название

Синтаксис

Операнды

Операция

Статус

Слова

Циклы

ADDWF

ADD W to f

ADDWF f,d

f,d

(W)+(f)->W/f

C,DC,Z

1

1

ANDWF

AND W with f

ANDWF f,d

f,d

(W).AND.(f)->W/f

Z

1

1

CLRF

Clear f

CLRF f

f,d

00h->f; 1->Z

Z

1

1

CLRW

Clear W register

CLRW

-

00h->W; 1->Z

Z

1

1

COMF

Complement f

COMF f,d

f,d

(f\)->W/f

Z

1

1

DECF

Decrement f

DECT f,d

f,d

(f)-1->W/f

Z

1

1

DECFSZ

Decrement f, skip if 0

DECFSZ f,d

f,d

(f)-1->W/f

skip if result=0

-

1

1(2)

INCF

Increment f

INCF f,d

f,d

(f)+1->W/f

Z

1

1

INCFSZ

Increment f, skip if 0

INCFZ f,d

f,d

(f)+1->W/f

-

1

1(2)

IORWF

Inclusive OR W with f

IORWF f,d

f,d

(W).OR.(f)->(W)

Z\

1

1

MOVF

Move f

MOVF f,d

f,d

(f)->W/f

Z

1

1

MOVWF

Move W to f

MOVWF f

F

(W)->(f)

-

1

1

NOP

No operation

NOP

-

-

-

1

1

RLF

Rotate Left f througt Carry

RLF f,d

f,d

<- [C]<-register <-

C

1

1

Продолжение таблицы 2.1

Мнемоника

Название

Синтаксис

Операнды

Операция

Статус

Слова

Циклы

RRF

Rotate Right through Carry

RRF f,d

f,d

-> [C]->register ->

C

1

1

SUBWF

Subtract W from f

SUBWF f,d

f,d

f-(W)->W/f

C,DC,Z

1

1

SWAPF

Swap f

SWAPF f,d

f,d

f<0:3>->d<4:7>

-

1

1

XORWF

Exclusive OR with f

XORWF f,d

f,d

(W).XOR.(f)->W/f

Z

1

1

Бит-ориентированые операции

BCF

Bit Clear f

BCF f,b

f,b

0->f(b)

-

1

1

BSF

Bit Set f

BSF f,b

f,b

1->f(b)

-

1

1

BTFSC

Bit Test, skip,if Clear

BTFSC f,b

f,b

skip if (f<b>)=0

-

1

1(2)

BTFSS

Bit Test, skip,if Set

BTFSS f,b

f,b

skip,if (f<b>)=1

-

1

1(2)

Литеральные операции и операции управления

ADDLW

Add Literal to W

ADDLW k

k

(W)+k->W

C,DC,Z

1

1

ANDLW

And Literal and W

ANDLW k

k

(W).AND.(k)->W

Z\

1

1

CALL

Subrouutine Call

CALL k

k

(PC)+1->TOS

k ->PC<10: 0>

(PCLATH<4:3>)->

PC<12:11>

-

1

1

2

1

CLRWDT

Clear Watching Timer

CLRWDT

-

00h->WDT

0->WDT prescaler

1->TO\; 1->PD\

TO\,

PD\

1

1

GOTO

Unconditional Branch

GOTO k

0<= k <=2047

k->PC<10:0>

(PCLATH<4:3>)-> PC<12:11>

-

1

2

IORLW

Inclusive OR Literal with W

IORLW k

k

(W).OR.(k)->W

Z

1

1

MOVLW

Move Literal to W

MOVLW

k

k->(W)

-

1

1

RETFIE

Return from Interrupt

RETFIE

TOS->PC;

1->GIE

-

1

2

RETLW

Return Literal to W

RETLW k

k->W;

TOS->PC

-

1

2

RETURN

Return from subtrroutine

RETURN

-

TOS->PC

-

1

2

SLEEP

-

SLEEP

-

00->WDT

0->WDT prescaler

1->TO\,0->PD\

TO\,

PD\

1

1

SUBLW

Subtract W from Literal

SUBLW k

k

k-(W)->(W)

C,DC,Z

1

1

XORLW

Exclusive OR W with f

XOR

f,d

(W).XOR.(f)->W/f

Z

1

1

Примечание к таблице 2.1:

  1. Во всех командах операнд f принимает значения от 0 до 127, а операнд d значения 0 или 1.

  2. В бит-ориентированных операциях операнд b принимает значения от 0 до 7

  3. В литеральных операциях и операциях управления, кроме оговоренных случаев, операнд k принимает значения от 0 до 255.

Обозначения в таблице 2.1:

f - Register file address (0*00 to 0*7F) - адрес файлового регистра

W - Working register (accumulator) - рабочий регистр (аккумулятор)

b - Bit adress withyin an 8 bit file register - адрес бита в пределах 8 битового файлового регистра

k - поле литерала, константа или метка

d - Destination select - выбор назначения

d=0 - запоминание результата в регистре W

d=1 - запоминание результата в файловом регистре f

По умолчанию d =1

PC - program counter - счетчик команд

TOS - Top of Stack - вершина стека

GIE - Global Interrapt Enable - разрешение общего прерывания

PCLATH - буфер записи для старших 5 бит PC

WDT - Watchdog Timer Counter - сторожевой таймер счетчик

TO\ - Time out Bit - бит истечения тайм -аута:

1 - интервал времени истек;

0 - истечение тайм-аута

PD\ - Power-down Bit - бит понижения мощности:

1 - после повышения мощности или команды CLRWDT;

0 - при выполнении команды SLEEP

С - Carry/ borrow bit - бит переноса/заема (для команд ADDWF, ADDLW, SUBLW, SUBWF) (для заема полярность инверсная):

1 - в результате операции имеет место выход переноса из наиболее значащего бита результата;

0 - нет переноса из наиболее значащего бита результата

DC - Digit Carry/borrow bit - бит десятичного переноса/заема (для команд ADDWF, ADDLW, SUBLW, SUBWF) (для заема полярность инверсная):

1 - выход переноса из 4-го младшего бита при образовании результата;

0 - выход переноса из 4-го младшего разряда результата

Z - Zero bit - бит результата:

1 - результат арифметической или логической операции есть 0

0 - результат арифметической или логической операции есть не 0

\ - инверсия

W/f - результат помещается в регистр W, если d=0, и в регистр f, если d=1

Замечание к таблице 2.1: Вычитание выполняется путем сложения операндов в дополнительном коде на второй операции.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]