INSiraJMENTS


//. Использование внутренних функций, периферийных блоков...

Значение в CCR3 не изменяется для формирования постоянного уровня


 


incd R15

and #03Fh,R15

mov Sine Tab(R15)

add #04h,R14

and #0FFh,R14 mov R14,&TBCCR2

reti


Инкремент указателя в R15 to для следующего значения в таблице синуса

Инкремент двойной, т.к. значения в таблице двухбайтовые Операция лог. «И» с числом 03Fh даёт счётчик по модулю 32 для указания на значения в таблице ,&TBCCR1

Загрузить следующее значение синуса в CCR1

Инкрементировать значение «пилы» Изменение шага в R14 приведёт к изменению частоты «пилы» Исключим лишние биты Загрузим новое значение пилы в CCR2 возврат, прерывания разрешены


 

г COMMON INTVEC ; Вектора прерываний MSP430xl4x
Г ORG TIMERBO VECTOR  
DW ТВ ISR ; Прерывание от CCIFGL
ORG RESET VECTOR  
DW RESET ; POR, внеш. Reset,
    ; Watchdog

END