@GNU AS
@.CharSet =CP1251 ( Cyrillic )
@.desc     type=module
@ +------------------------------------------------------------------+
@ |                     Базовые константы RCU
@ |                     микроконтроллера 1921ВК035
@ +------------------------------------------------------------------+
@.enddesc


.include   "/src/inc/base.inc"
@ A.6 Регистры системы управления тактированием и сбросом
@Базовый адрес: 4004_1000h +  Смещение :


@.item     RCU_BASE
.equ  RCU_OSICFG     , 0x00           @ OSICFG – регистр конфигурации внутреннего осциллятора
.equ  RCU_OSEICFG    , 0x04           @ OSECFG – регистр конфигурации внешнего осциллято
.equ  RCU_PLLCFG     , 0x08           @ PLLCFG – регистр конфигурации PLL
.equ  RCU_PLLDIV     , 0x0C           @ PLLDIV – регистр внешнего делителя PLL
.equ  RCU_SYSCLKCFG  , 0x10           @ SYSCLKCFG – регистр конфигурации системного тактового сигнала
.equ  RCU_SYSCLKSTAT , 0x14           @ SYSCLKSTAT – регистр статуса системного тактового сигнала
.equ  RCU_SECPRD     , 0x18           @ SECPRD – регистр слежения за состоянием системного тактового сигнала
.equ  RCU_SYSRSTCFG  , 0x1C           @ SYSRSTCFG – регистр настройки системного сброса
.equ  RCU_SYSRSTSTAT , 0x20           @ SYSRSTSTAT – регистр статуса системного сброса
.equ  RCU_INTEN      , 0x24           @ INTEN – регистр разрешения прерываний
.equ  RCU_INTSTAT    , 0x28           @ INTSTAT – регистр статуса прерываний
.equ  RCU_TRACECFG   , 0x2C           @ TRACECFG – регистр настройки интерфейса трассировки
.equ  RCU_CLKOUTCFG  , 0x30           @ CLKOUTCFG – регистр настройки выходного тактового сигнала
.equ  RCU_WDTCFG     , 0x34           @ WDTCFG – регистр настройки сторожевого таймера
.equ  RCU_UARTCFG_0  , 0x60           @ UARTCFG_0 массив регистров настройки UARTСмещение: UARTCFG + (4*n)h, где n – номер блока 0, 1
.equ  RCU_UARTCFG_1  , 0x64           @ UARTCFG_1 массив регистров настройки UARTСмещение: UARTCFG + (4*n)h, где n – номер блока 0, 1
.equ  RCU_SPICFG     , 0x80           @ SPICFG – регистр настройки SPI
.equ  RCU_ADCCFG     , 0xA0           @ ADCCFG – регистр настройки блока АЦП
.equ  RCU_PCLKCFG    , 0xE0           @ PCLKCFG – регистр разрешения тактовых сигналов периферийных блоков шины APB
.equ  RCU_PRSTCFG    , 0xF0           @ PRSTCFG – регистр включения периферийных блоков шины APB
.equ  RCU_HCLKCFG    , 0x100          @ HCLKCFG – регистр разрешения тактирования периферийных блоков шины AHB
.equ  RCU_HRSTCFG    , 0x104          @ HRSTCFG – регистр включения периферийных блоков шины AHB


@  OSICFG – регистр конфигурации внутреннего осциллятора
@.item     RCU_OSICFG
.equ  RCU_OSICFG_CAL_N, 16            @  CAL 25-16 Значение для подстройки частоты внутреннего осциллятора
.equ  RCU_OSICFG_CAL_M, 0x03FF0000    @ Bit field masks:
.equ  RCU_OSICFG_CAL_bits, 10         @ width of the bitfield
.equ  RCU_OSICFG_EN_N, 0              @  EN 0 Бит включения внутреннего осциллятора
.equ  RCU_OSICFG_EN_M, 1 << 0         @ EN 0 Бит включения внутреннего осциллятора
.equ  RCU_OSICFG_EN_bits, 1           @width of the bitfield

@  OSECFG – регистр конфигурации внешнего осциллятора
@.item     RCU_OSEICFG
.equ  RCU_OSEICFG_EN , 1 << 1         @EN 1 Разрешение синхросигнала от внешнего осциллятора
.equ  RCU_OSEICFG_XOEN, 1 << 0        @XOEN 0 Разрешение работы вывода XO_OSC

@  PLLCFG – регистр конфигурации PLL
@.item     RCU_PLLCFG
.equ  RCU_PLLCFG_LOCK, 1 << 28        @LOCK 28 Устанавливается, если блок PLL стабилен
.equ  RCU_PLLCFG_OUTENL, 1 << 26      @OUTEN 26 Разрешение вывода частоты с блока PLL
.equ  RCU_PLLCFG_BYPASS, 1 << 24      @BYPASS 24 Режим сквозного прохождения тактового сигнала
.equ  RCU_PLLCFG_REFSRC, 1 << 20      @:0 Внешний тактовый сигнал OSECLK :1 Внутренний тактовый сигнал OSICLKточника входной частоты fIN
.equ  RCU_PLLCFG_OD_N, 16             @ Коэффициент деления выходного сигнала PLL
.equ  RCU_PLLCFG_OD_DIV1, 0x00 << 16
.equ  RCU_PLLCFG_OD_DIV2, 0x01 << 16
.equ  RCU_PLLCFG_OD_DIV4, 0x02 << 16
.equ  RCU_PLLCFG_OD_DIV8, 0x03 << 16
.equ  RCU_PLLCFG_NPLL_N, 8            @ 13-8 Коэффициент деления N_PLL.
.equ  RCU_PLLCFG_MPLL_N, 0            @ 5-0 Коэффициент деления M_PLL.
.equ  RCU_PLLCFG_NPLL_M, 0x00003F00    @ Значения от 1h до 3Fh
.equ  RCU_PLLCFG_MPLL_N, 0x0000003F    @ Значения от 2h до 3Fh

@  PLLDIV – регистр внешнего делителя PLL
@.item     RCU_PLLDIV
.equ  RCU_PLLDIV_DIV_N, 8             @13-8 Коэффициент выходного делителя PLL, вычисляемый как DIV+1
.equ  RCU_PLLDIV_DIV_M, 0x00003F00    @
.equ  RCU_PLLDIV_DIVEN, 1 << 0        @DIVEN 0 Бит разрешения выходного делителя частоты блока PLL

@  SYSCLKCFG – регистр конфигурации системного тактового сигнала
@.item     RCU_SYSCLKCFG
.equ  RCU_SYSCLKCFG_SECEN, 1 << 16    @16 Бит включения системы слежения за тактовым сигналом
.equ  RCU_SYSCLKCFG_SYSSEL_N, 0       @ SYSSEL 1-0 Выбор источника системного тактового сигнала
.equ  RCU_SYSCLKCFG_SYSSEL_OSI, 0x00
.equ  RCU_SYSCLKCFG_SYSSEL_OSE, 0x01
.equ  RCU_SYSCLKCFG_SYSSEL_PLL, 0x02
.equ  RCU_SYSCLKCFG_SYSSEL_DIVPLL, 0x03

@   SYSCLKSTAT – регистр статуса системного тактового сигнала
@.item     RCU_SYSCLKSTAT
.equ  RCU_SYSCLKSTAT_PLLDIVCLKOK, 1 << 27    @27 Флаг наличия тактового сигнала на выходе внешнего делителя PLL
.equ  RCU_SYSCLKSTAT_PLLCLKOK, 1 << 26    @26 Флаг наличия тактового сигнала на выходе PLL
.equ  RCU_SYSCLKSTAT_OSECLKOK, 1 << 25    @26 Флаг наличия тактового сигнала на выходе PLL
.equ  RCU_SYSCLKSTAT_PLLDIVCLKERR, 1 << 19    @19 Флаг отсутствия тактового сигнала на выходе внешнего  делителя PLL
.equ  RCU_SYSCLKSTAT_PLLCLKERR, 1 << 18    @18 Флаг отсутствия тактового сигнала на выходе PLL
.equ  RCU_SYSCLKSTAT_OSECLKERR, 1 << 17    @17Флаг отсутствия выбранного тактового сигнала OSECLK
.equ  RCU_SYSCLKSTAT_SYSFAIL, 1 << 8    @8Флаг ошибки при пропадании тактового сигнала, который был
.equ  RCU_SYSCLKSTAT_BUSY, 1 << 4     @ 4 Флаг занятости блока RCU
.equ  RCU_SYSCLKSTAT_SYSSTAT_N, 0     @ 1-0 Текущий источник системного тактового сигнала
.equ  RCU_SYSCLKSTAT_SYSSTAT_M, 0x00000003
.equ  RCU_SYSCLKSTAT_SYSSTAT_OSICLK, 0x00
.equ  RCU_SYSCLKSTAT_SYSSTAT_OSECLK, 0x01
.equ  RCU_SYSCLKSTAT_SYSSTAT_OSECLK, 0x02
.equ  RCU_SYSCLKSTAT_SYSSTAT_OSECLK, 0x03

@   SECPRD – регистр слежения за состоянием системного тактового сигнала
@.item     RCU_SECPRD
.equ  RCU_SECPRD_PLLDIVCLK_N, 24      @Максимальное значение счетчика периодов для детектирования
.equ  RCU_SECPRD_PLLDIVCLK_M, 0xFF000000    @пропадания сигнала PLLDIVCLK
.equ  RCU_SECPRD_PLLCLK_N, 16         @ Максимальное значение счетчика периодов для детектирования
.equ  RCU_SECPRD_PLLCLK_M, 0x00FF0000    @пропадания сигнала PLLCLK
.equ  RCU_SECPRD_OSECLK_N, 8          @ Максимальное значение счетчика периодов для детектирования
.equ  RCU_SECPRD_OSECLK_M, 0x0000FF00    @пропадания сигнала PLLCLK


@  SYSRSTCFG – регистр настройки системного сброса
@.item     RCU_SYSRSTCFG
.equ  RCU_SECPRD_LOCKUPEN_N, 0        @0 Бит разрешения сброса, когда процессор в состоянии LOCKUP
.equ  RCU_SECPRD_LOCKUPEN, 1 << 0     @1 Разрешено


@   SYSRSTSTAT – регистр статуса системного сброса
@.item     RCU_SYSRSTSTAT
.equ  RCU_SYSRSTSTAT_LOCKUP_N, 3      @3   Флаг устанавливается, если последний сброс произошел из-за входа
.equ  RCU_SYSRSTSTAT_LOCKUP, 1 << 3    @процессора в состояние LOCKUP
.equ  RCU_SYSRSTSTAT_SYSRST_N, 2      @ 2 Флаг устанавливается, если последний сброс произошел в
.equ  RCU_SYSRSTSTAT_SYSRST, 1 << 2    @ результате подачи сигнала системного сброса
.equ  RCU_SYSRSTSTAT_WDOG_N, 1        @ результате подачи сигнала системного сброса
.equ  RCU_SYSRSTSTAT_WDOG, 1 << 1     @ сторожевым таймером
.equ  RCU_SYSRSTSTAT_POR_N, 0         @ Флаг устанавливается, если последний сброс произошел из-за
.equ  RCU_SYSRSTSTAT_POR, 1 << 0      @  срабатывания схемы POR


@   INTEN – регистр разрешения прерываний
@.item     RCU_INTEN
.equ  RCU_INTEN_PLLLOCK_N, 16         @16   Разрешение прерывания по сигналу LOCK
.equ  RCU_INTEN_PLLLOCK, 1 << 16      @
.equ  RCU_INTEN_PLLDIVCLKOK_N, 11     @ 11 Разрешение прерывания при появлении стабильного
.equ  RCU_INTEN_PLLDIVCLKOK, 1 << 11    @ тактового сигнала на выходе внешнего делителя PLL
.equ  RCU_INTEN_PLLCLKOK_N, 10        @10  Разрешение прерывания при появлении стабильного
.equ  RCU_INTEN_PLLCLKOK, 1 << 10     @ тактового сигнала на выходе PLL
.equ  RCU_INTEN_OSECLKOK_N, 9         @9  Разрешение прерывания при появлении стабильного
.equ  RCU_INTEN_OSECLKOK, 1 << 9      @выбранного тактового сигнала OSECLK
.equ  RCU_INTEN_PLLDIVCLKERR_N, 3     @ 3  Разрешение прерывания при пропадании стабильного
.equ  RCU_INTEN_PLLDIVCLKERR, 1 << 3    @ тактового сигнала на выходе внешнего делителя PLL
.equ  RCU_INTEN_PLLCLKERR_N, 2        @ 2  Разрешение прерывания при пропадании стабильного
.equ  RCU_INTEN_PLLCLKERR, 1 << 2     @ тактового сигнала на выходе PLL
.equ  RCU_INTEN_OSECLKERR_N, 1        @ 1  Разрешение прерывания при пропадании стабильного
.equ  RCU_INTEN_OSECLKERR, 1 << 1     @ выбранного тактового сигнала OSECLK


@   INTSTAT – регистр статуса прерываний
@.item     RCU_INTSTAT
.equ  RCU_INTSTAT_SYSFAIL_N, 20       @20  Флаг устанавливается при попытке перейти на
.equ  RCU_INTSTAT_SYSFAIL, 1 << 20    @  отсутствующий источник тактирования
.equ  RCU_INTSTAT_PLLLOCK_N, 16       @ 16  Флаг прерывания по сигналу LOCK
.equ  RCU_INTSTAT_PLLLOCK, 1 << 16    @
.equ  RCU_INTSTAT_PLLDIVCLKOK_N, 11    @ 11  Флаг прерывания при появлении стабильного тактового
.equ  RCU_INTSTAT_PLLDIVCLKOK, 1 << 11    @  сигнала на выходе внешнего делителя PLL
.equ  RCU_INTSTAT_PLLCLKOK_N, 10      @10  Флаг прерывания при появлении стабильного тактового
.equ  RCU_INTSTAT_PLLCLKOK, 1 << 10    @ сигнала на выходе PLL
.equ  RCU_INTSTAT_OSECLKOK_N, 9       @9   Флаг прерывания при появлении стабильного выбранного
.equ  RCU_INTSTAT_OSECLKOK, 1 << 9    @ тактового сигнала OSECLK
.equ  RCU_INTSTAT_PLLDIVCLKERR_N, 3    @3   Флаг прерывания при пропадании стабильного тактового
.equ  RCU_INTSTAT_PLLDIVCLKERR, 1 << 3    @ сигнала на выходе внешнего делителя PLL
.equ  RCU_INTSTAT_PLLCLKERR_N, 2      @ 2  Флаг прерывания при пропадании стабильного тактового
.equ  RCU_INTSTAT_PLLCLKERR, 1 << 2    @ сигнала на выходе PLL
.equ  RCU_INTSTAT_OSECLKERR_N, 1      @ 1   Флаг прерывания при пропадании стабильного выбранного
.equ  RCU_INTSTAT_OSECLKERR, 1 << 1    @  тактового сигнала OSECLK
                                       @ Флаги сбрасываюся только программно.
                                       @ Для сброса флага следует
                                       @ записать единицу в соответствующий бит.
                                       @


@  TRACECFG – регистр настройки интерфейса трассировки
@.item     RCU_TRACECFG
.equ  RCU_TRACECFG_DIVN_N, 24         @24  Коэффициент деления входной частоты интерфейса трассировки
.equ  RCU_TRACECFG_DIVN_M, 0x3F000000    @  Результирующий коэффициент деления
.equ  RCU_TRACECFG_DIVN32, 1 << 29    @  Результирующий
.equ  RCU_TRACECFG_DIVN16, 1 << 28    @  коэффициент
.equ  RCU_TRACECFG_DIVN8, 1 << 27     @   деления
.equ  RCU_TRACECFG_DIVN4, 1 << 26     @   N = 2  (DIVN + 1)
.equ  RCU_TRACECFG_DIVN2, 1 << 25     @
.equ  RCU_TRACECFG_DIVN1, 1 << 24     @
.equ  RCU_TRACECFG_DIVEN, 1 << 16     @Bits 16  Разрешение делителя входной частоты интерфейса трассировки
.equ  RCU_TRACECFG_CLKSEL_N, 8        @ Bits 9-8   Выбор источника тактового сигнала
.equ  RCU_TRACECFG_CLKSEL_OSECLK,    0x00 << 8
.equ  RCU_TRACECFG_CLKSEL_PLLCLK,    0x01 << 8
.equ  RCU_TRACECFG_CLKSEL_PLLDIVCLK, 0x02 << 8
.equ  RCU_TRACECFG_CLKSEL_OSECLK,    0x03 << 8
.equ  RCU_TRACECFG_CLKEN_N, 0
.equ  RCU_TRACECFG_CLKEN, 0x01        @ Разрешение тактирования

@  CLKOUTCFG – регистр настройки выходного тактового сигнала
@.item     RCU_CLKOUTCFG
.equ  RCU_CLKOUTCFG_DIVN_N, 24        @ Bits26-24   Коэффициент деления выходного сигнала.
.equ  RCU_CLKOUTCFG_DIVN4, 1 << 26
.equ  RCU_CLKOUTCFG_DIVN2, 1 << 25
.equ  RCU_CLKOUTCFG_DIVN1, 1 << 24
.equ  RCU_CLKOUTCFG_DIVEN_N, 16       @ Bits 16   Разрешение делителя выходного сигнала
.equ  RCU_CLKOUTCFG_DIVEN, 1 << 16
.equ  RCU_CLKOUTCFG_CLKSEL_N, 8       @ Bits  9-8 Bыбор источника выходного сигнала
.equ  RCU_CLKOUTCFG_CLKSEL_OSI,    0x00 << 8
.equ  RCU_CLKOUTCFG_CLKSEL_OSE,    0x01 << 8
.equ  RCU_CLKOUTCFG_CLKSEL_PLL,    0x10 << 8
.equ  RCU_CLKOUTCFG_CLKSEL_PLLDIV, 0x11 << 8
.equ  RCU_CLKOUTCFG_CLKEN_N, 0        @ Bits  0
.equ  RCU_CLKOUTCFG_CLKEN, 0x01       @  Разрешение выходного сигнала

@   WDTCFG – регистр настройки сторожевого таймера
@.item     RCU_WDTCFG
.equ  RCU_WDTCFG_DIVN_N, 24           @ Bits 29-24   Коэффициент деления входного сигнала.
.equ  RCU_WDTCFG_DIVN32, 32 << 24
.equ  RCU_WDTCFG_DIVN16, 16 << 24
.equ  RCU_WDTCFG_DIVN8, 8 << 24
.equ  RCU_WDTCFG_DIVN4, 4 << 24
.equ  RCU_WDTCFG_DIVN2, 2 << 24
.equ  RCU_WDTCFG_DIVN1, 1 << 24
.equ  RCU_WDTCFG_DIVEN_N, 16          @ Bits 16   Разрешение делителя входного сигнала
.equ  RCU_WDTCFG_DIVEN, 1 << 16
.equ  RCU_WDTCFG_CLKSEL_N, 8          @ Bits 9-8  Выбор источника тактового сигнала
.equ  RCU_WDTCFG_CLKSEL_OSI,    0x00 << 8
.equ  RCU_WDTCFG_CLKSEL_OSE,    0x01 << 8
.equ  RCU_WDTCFG_CLKSEL_PLL,    0x10 << 8
.equ  RCU_WDTCFG_CLKSEL_PLLDIV, 0x11 << 8
.equ  RCU_WDTCFG_RSTDIS_N, 4          @ Bits 16  Снятие сигнала сброса.Когда сигнал в нуле, блок в состоянии сброса
.equ  RCU_WDTCFG_RSTDIS, 1 << 4
.equ  RCU_WDTCFG_CLKEN_N, 0           @ Bits 0   Разрешение тактирования
.equ  RCU_WDTCFG_CLKEN_N, 0x1

@    UARTCFG – массив регистров настройки UART
@.item     RCU_UARTCFG_0
.equ  RCU_UARTCFG_0DIVN_N, 24         @ Bits 29-24  Коэффициент деления входного сигнала
.equ  RCU_UARTCFG_0DIVN32, 32 << 24
.equ  RCU_UARTCFG_0DIVN16, 16 << 24
.equ  RCU_UARTCFG_0DIVN8, 8 << 24
.equ  RCU_UARTCFG_0DIVN4, 4 << 24
.equ  RCU_UARTCFG_0DIVN2, 2 << 24
.equ  RCU_UARTCFG_0DIVN1, 1 << 24
.equ  RCU_UARTCFG_0DIVEN_N, 16        @ Bits16  Разрешение делителя входного сигнала
.equ  RCU_UARTCFG_0DIVEN, 1 << 16
.equ  RCU_UARTCFG_0CLKSEL_N, 8        @ Bits 9 8  Выбор источника тактового сигнала
.equ  RCU_UARTCFG_0CLKSEL_OSE,    0x00 << 8
.equ  RCU_UARTCFG_0CLKSEL_PLL,    0x01 << 8
.equ  RCU_UARTCFG_0CLKSEL_PLLDIV, 0x10 << 8
.equ  RCU_UARTCFG_0CLKSEL_OSI,    0x11 << 8
.equ  RCU_UARTCFG_0RSTDIS_N, 4        @ Bits 4  Снятие сигнала сброса
.equ  RCU_UARTCFG_0RSTDIS, 1 << 4     @ Когда сигнал в нуле, блок в состоянии сброса
.equ  RCU_UARTCFG_0CLKEN_N, 0         @ Bits 0  Разрешение тактирования
.equ  RCU_UARTCFG_0CLKEN, 0x01        @  Разрешение тактирования

@  UARTCFG – массив регистров настройки UART
@.item     RCU_UARTCFG_1
.equ  RCU_UARTCFG_1DIVN_N, 24         @ Bits 29-24  Коэффициент деления входного сигнала
.equ  RCU_UARTCFG_1DIVN32, 32 << 24
.equ  RCU_UARTCFG_1DIVN16, 16 << 24
.equ  RCU_UARTCFG_1DIVN8,   8 << 24
.equ  RCU_UARTCFG_1DIVN4,   4 << 24
.equ  RCU_UARTCFG_1DIVN2,   2 << 24
.equ  RCU_UARTCFG_1DIVN1,   1 << 24
.equ  RCU_UARTCFG_1DIVEN_N, 16        @ Bits16  Разрешение делителя входного сигнала
.equ  RCU_UARTCFG_1DIVEN, 1 << 16
.equ  RCU_UARTCFG_1CLKSEL_N, 8        @ Bits 9 8  Выбор источника тактового сигнала
.equ  RCU_UARTCFG_1CLKSEL_OSE,    0x00 << 8
.equ  RCU_UARTCFG_1CLKSEL_PLL,    0x01 << 8
.equ  RCU_UARTCFG_1CLKSEL_PLLDIV, 0x10 << 8
.equ  RCU_UARTCFG_1CLKSEL_OSI,    0x11 << 8
.equ  RCU_UARTCFG_1RSTDIS_N, 4        @ Bits 4  Снятие сигнала сброса
.equ  RCU_UARTCFG_1RSTDIS, 1 << 4     @ Когда сигнал в нуле, блок в состоянии сброса
.equ  RCU_UARTCFG_1CLKEN_N, 0         @ Bits 0  Разрешение тактирования
.equ  RCU_UARTCFG_1CLKEN, 0x01        @  Разрешение тактирования

@   SPICFG – регистр настройки SPI
@.item     RCU_SPICFG
.EQU  RCU_SPICFG_DIVN_N, 24         @ Bits 29-24  Коэффициент деления входного сигнала.
.EQU  RCU_SPICFG_DIVN32, 32 << 24
.EQU  RCU_SPICFG_DIVN16, 16 << 24
.EQU  RCU_SPICFG_DIVN8,   8 << 24
.EQU  RCU_SPICFG_DIVN4,   4 << 24
.EQU  RCU_SPICFG_DIVN2,   2 << 24
.EQU  RCU_SPICFG_DIVN1,   1 << 24
.EQU  RCU_SPICFG_DIVEN_N, 16          @ Bits16  Разрешение делителя входного сигнала
.EQU  RCU_SPICFG_DIVEN,   1 << 16
.EQU  RCU_SPICFG_CLKSEL_N, 8          @ Bits 9 8  Выбор источника тактового сигнала
.EQU  RCU_SPICFG_CLKSEL_OSE,    0x00 << 8
.EQU  RCU_SPICFG_CLKSEL_PLL,    0x01 << 8
.EQU  RCU_SPICFG_CLKSEL_PLLDIV, 0x10 << 8
.EQU  RCU_SPICFG_CLKSEL_OSI,    0x11 << 8
.EQU  RCU_SPICFG_RSTDIS_N, 4          @ Bits 4  Снятие сигнала сброса
.EQU  RCU_SPICFG_RSTDIS,  1 << 4     @ Когда сигнал в нуле, блок в состоянии сброса
.EQU  RCU_SPICFG_CLKEN_N, 0           @ Bits 0  Разрешение тактирования
.EQU  RCU_SPICFG_CLKEN,   0x01       @  Разрешение тактирования

@  ADCCFG – регистр настройки блока АЦП
@.item     RCU_ADCCFG
.EQU  RCU_ADCCFG_DIVN_N, 24         @ Bits 29-24  Коэффициент деления входного сигнала.
.EQU  RCU_ADCCFG_DIVN32, 32 << 24
.EQU  RCU_ADCCFG_DIVN16, 16 << 24
.EQU  RCU_ADCCFG_DIVN8, 8 << 24
.EQU  RCU_ADCCFG_DIVN4, 4 << 24
.EQU  RCU_ADCCFG_DIVN2, 2 << 24
.EQU  RCU_ADCCFG_DIVN1, 1 << 24
.EQU  RCU_ADCCFG_DIVEN_N, 16          @ Bits16  Разрешение делителя входного сигнала
.EQU  RCU_ADCCFG_DIVEN, 1 << 16
.EQU  RCU_ADCCFG_CLKSEL_N, 8          @ Bits 9 8  Выбор источника тактового сигнала
.EQU  RCU_ADCCFG_CLKSEL_OSE,    0x00 << 8
.EQU  RCU_ADCCFG_CLKSEL_PLL,    0x01 << 8
.EQU  RCU_ADCCFG_CLKSEL_PLLDIV, 0x10 << 8
.EQU  RCU_ADCCFG_CLKSEL_OSI,    0x11 << 8
.EQU  RCU_ADCCFG_RSTDIS_N, 4          @ Bits 4  Снятие сигнала сброса
.EQU  RCU_ADCCFG_RSTDIS, 1 << 4       @ Когда сигнал в нуле, блок в состоянии сброса
.EQU  RCU_ADCCFG_CLKEN_N, 0           @ Bits 0  Разрешение тактирования
.EQU  RCU_ADCCFG_CLKEN, 0x01          @  Разрешение тактирования


@  PCLKCFG – регистр разрешения тактовых сигналов периферийных блоков  шины APB
@.item     RCU_PCLKCFG
.equ  RCU_PCLKCFG_ECAP2EN_N, 11       @ Bits 11
.equ  RCU_PCLKCFG_ECAP2EN, 1 << 11    @ Бит разрешения тактирования блока ECAP2
.equ  RCU_PCLKCFG_ECAP1EN_N, 10       @ Bits 10
.equ  RCU_PCLKCFG_ECAP1EN, 1 << 10    @ Бит разрешения тактирования блока ECAP1
.equ  RCU_PCLKCFG_ECAP0EN_N, 9        @ Bits 9
.equ  RCU_PCLKCFG_ECAP0EN, 1 << 9     @  Бит разрешения тактирования блока ECAP0
.equ  RCU_PCLKCFG_QEPEN_N, 8          @ Bits 8
.equ  RCU_PCLKCFG_QEPEN, 1 << 8       @  Бит разрешения тактирования блока QEP
.equ  RCU_PCLKCFG_I2CEN_N, 7          @ Bits 7
.equ  RCU_PCLKCFG_I2CEN, 1 << 7       @  Бит разрешения тактирования контроллера I2C
.equ  RCU_PCLKCFG_PWM2EN_N, 6         @ Bits 6
.equ  RCU_PCLKCFG_PWM2EN, 1 << 6      @  Бит разрешения тактирования блока PWM2
.equ  RCU_PCLKCFG_PWM1EN_N, 5         @ Bits 5
.equ  RCU_PCLKCFG_PWM1EN, 1 << 5      @  Бит разрешения тактирования блока PWM1
.equ  RCU_PCLKCFG_PWM0EN_N, 4         @ Bits 4
.equ  RCU_PCLKCFG_PWM0EN, 1 << 4      @  Бит разрешения тактирования блока PWM0
.equ  RCU_PCLKCFG_TMR3EN_N, 3         @ Bits 3
.equ  RCU_PCLKCFG_TMR3EN, 1 << 3      @  Бит разрешения тактирования блока TMR3
.equ  RCU_PCLKCFG_TMR2EN_N, 2         @ Bits 2
.equ  RCU_PCLKCFG_TMR2EN, 1 << 2      @  Бит разрешения тактирования блока TMR2
.equ  RCU_PCLKCFG_TMR1EN_N, 1         @ Bits 1
.equ  RCU_PCLKCFG_TMR1EN, 1 << 1      @  Бит разрешения тактирования блока TMR1
.equ  RCU_PCLKCFG_TMR0EN_N, 0         @ Bits 0
.equ  RCU_PCLKCFG_TMR0EN, 1 << 0      @  Бит разрешения тактирования блока TMR0

@  PRSTCFG – регистр включения периферийных блоков шины APB
@.item     RCU_PRSTCFG
.equ  RCU_PRSTCFG_ECAP2EN_N, 11       @ Bits 11
.equ  RCU_PRSTCFG_ECAP2EN, 1 << 11    @ Бит включения блока ECAP2
.equ  RCU_PRSTCFG_ECAP1EN_N, 10       @ Bits 10
.equ  RCU_PRSTCFG_ECAP1EN, 1 << 10    @ Бит включения блока ECAP1
.equ  RCU_PRSTCFG_ECAP0EN_N, 9        @ Bits 9
.equ  RCU_PRSTCFG_ECAP0EN, 1 << 9     @  Бит включения блока ECAP0
.equ  RCU_PRSTCFG_QEPEN_N, 8          @ Bits 8
.equ  RCU_PRSTCFG_QEPEN, 1 << 8       @  Бит включения блока QEP
.equ  RCU_PRSTCFG_I2CEN_N, 7          @ Bits 7
.equ  RCU_PRSTCFG_I2CEN, 1 << 7       @  Бит включения контроллера I2C
.equ  RCU_PRSTCFG_PWM2EN_N, 6         @ Bits 6
.equ  RCU_PRSTCFG_PWM2EN, 1 << 6      @  Бит включения блока PWM2
.equ  RCU_PRSTCFG_PWM1EN_N, 5         @ Bits 5
.equ  RCU_PRSTCFG_PWM1EN, 1 << 5      @  Бит включения блока PWM1
.equ  RCU_PRSTCFG_PWM0EN_N, 4         @ Bits 4
.equ  RCU_PRSTCFG_PWM0EN, 1 << 4      @  Бит включения блока PWM0
.equ  RCU_PRSTCFG_TMR3EN_N, 3         @ Bits 3
.equ  RCU_PRSTCFG_TMR3EN, 1 << 3      @ Бит включения блока TMR3
.equ  RCU_PRSTCFG_TMR2EN_N, 2         @ Bits 2
.equ  RCU_PRSTCFG_TMR2EN, 1 << 2      @  Бит включения блока TMR2
.equ  RCU_PRSTCFG_TMR1EN_N, 1         @ Bits 1
.equ  RCU_PRSTCFG_TMR1EN, 1 << 1      @  Бит включения блока TMR1
.equ  RCU_PRSTCFG_TMR0EN_N, 0         @ Bits 0
.equ  RCU_PRSTCFG_TMR0EN, 1 << 0      @ Бит включения блока TMR0

@  HCLKCFG – регистр разрешения тактирования периферийных блоков шины AHB
@.item     RCU_HCLKCFG
.equ  RCU_HCLKCFG_CANEN_N, 2          @ Bits 2
.equ  RCU_HCLKCFG_CANEN, 1 << 2     @ Бит разрешения тактирования CAN
.equ  RCU_HCLKCFG_GPIOBEN_N, 1        @ Bits 1
.equ  RCU_HCLKCFG_GPIOBEN, 1 << 1     @ Бит разрешения тактирования порта B
.equ  RCU_HCLKCFG_GPIOAEN_N, 0        @ Bits 0
.equ  RCU_HCLKCFG_GPIOAEN, 1 << 0     @ Бит разрешения тактирования порта A

@  HRSTCFG – регистр включения периферийных блоков шины AHB
@.item     RCU_HRSTCFG
.equ  RCU_HRSTCFG_CANEN_N, 2          @ Bits 2
.equ  RCU_HRSTCFG_CANEN, 1 << 2       @ Бит включения CAN
.equ  RCU_HRSTCFG_GPIOBEN_N, 1        @ Bits 1
.equ  RCU_HRSTCFG_GPIOBEN, 1 << 1     @ Бит включения порта B
.equ  RCU_HRSTCFG_GPIOAEN_N, 0        @ Bits 0
.equ  RCU_HRSTCFG_GPIOAEN, 1 << 0     @ Бит включения порта A



