@GNU AS
@.CharSet =CP1251 ( Cyrillic )
@.desc     type=module
@ +------------------------------------------------------------------+
@ |                     базовые константы GPIO
@ |                     микроконтроллера  к1921вк035
@ |                     Руководство пользователя  от 20.12.2019
@ +------------------------------------------------------------------+
@.enddesc


.include    "/src/inc/base.inc"
@ ј.2 –егистры портов (GPIO)
@базовый адрес: 4001_0000h (GPIOA_BAS)регистры порта А
@               4001_1000h (GPIOB_BASE)регистры порта B
@ cмещение:+ 400h (MASKLB) массив регистров масок младшего байта порта
@          + 800h (MASKHB) массив регистров масок старшего байта порта
@   Адрес: GPIOp + MASKHB + (4*i)h (i = 0h, …, FFh)
@   Адрес: GPIOp + MASKLB + (4*i)h (i = 0h, …, FFh)

.equ  MASKLB             , 0x00000400
.equ  MASKHB             , 0x00000800


@.item     GPIOA_BASE GPIOB_BASE
.equ  GPIO_DATA      , 0x00    @DATA  регистр входных данных порта
.equ  GPIO_DATAOUT   , 0x04    @DATAOUT  регистр выходных данных порта
.equ  GPIO_DATAOUTSET, 0x08    @DATAOUTSET  регистр установки битов порта
.equ  GPIO_DATAOUTCLR, 0x0C    @DATAOUTCLR  регистр сброса битов порта
.equ  GPIO_OUTENSET, 0x10    @OUTENSET  регистр переключени¤ битов порта
.equ  GPIO_DENSET    , 0x14    @DENSET  регистр разрешени¤ цифровой функции порта
.equ  GPIO_DENCLR    , 0x18    @DENCLR  регистр запрещени¤ цифровой функции порта
.equ  GPIO_PULLMODE    , 0x1C    @INMODE  регистр выбора режима входа порта
.equ  GPIO_PULLMODE  , 0x20    @PULLMODE  регистр выбора режима подт¤жки порта
.equ  GPIO_OUTMODE   , 0x24    @OUTMODE  регистр выбора режима выхода порта
.equ  GPIO_DRIVEMODE , 0x28    @DRIVEMODE  регистр выбора параметров выхода порта
.equ  GPIO_OUTENSET  , 0x2C    @OUTENSET регистр разрешени¤ управлени¤ выходом порта
.equ  GPIO_OUTENCLR  , 0x30    @OUTENCLR регистр очистки управлени¤ выходом порта
.equ  GPIO_ALTFUNCCLR  , 0x30    @ALTFUNCSET  регистр запрещени¤ управлени¤ выходом порта
.equ  GPIO_ALTFUNCSET, 0x34    @ALTFUNCSET регистр включени¤ альтернативной функции порта
.equ  GPIO_ALTFUNCCLR, 0x38    @ALTFUNCCLR  регистр выключени¤ альтернативной функции порта
.equ  GPIO_SYNCSET   , 0x44    @SYNCSET  регистр включени¤ дополнительной синхронизации входов портов
.equ  GPIO_SYNCCLR   , 0x48    @SYNCCLR  регистр выключени¤ дополнительной синхронизации входов портов
.equ  GPIO_QUALSET   , 0x4C    @QUALSET  регистр включени¤ фильтров портов
.equ  GPIO_QUALCLR   , 0x50    @QUALCLR  регистр отключени¤ фильтров портов
.equ  GPIO_QUALMODESET   , 0x54    @QUALMODESET  регистр режима фильтра порта
.equ  GPIO_QUALMODECLR   , 0x58    @QUALMODECLR  регистр сброса режима фильтра порта
.equ  GPIO_QUALSAMPLE    , 0x5C    @QUALSAMPLE  регистр настройки фильтра порта
.equ  GPIO_INTENSET      , 0x60    @INTENSET  регистр разрешени¤ прерываний порта
.equ  GPIO_INTENCLR      , 0x64    @INTENCLR  регистр сброса разрешени¤ прерываний порта
.equ  GPIO_NTTYPESET     , 0x68    @INTTYPESET  регистр типа прерываний порта
.equ  GPIO_INTTYPECLR    , 0x6C    @INTTYPECLR  регистр сброса типа прерываний порта
.equ  GPIO_INTPOLSET     , 0x70    @INTPOLSET  регистр пол¤рности событи¤ прерывани¤ порта
.equ  GPIO_INTPOLCLR     , 0x74    @INTPOLCLR  регистр сброса пол¤рности событи¤ прерывани¤ порта
.equ  GPIO_INTEDGESET    , 0x78    @INTEDGESET  регистр включени¤ прерывани¤ по любому перепаду
.equ  GPIO_INTEDGECLR    , 0x7C    @INTEDGECLR  регистр отключени¤ прерывани¤ по любому перепаду
.equ  GPIO_INTSTATUS     , 0x80    @INTSTATUS  регистр состо¤ни¤ и сброса прерываний порта
.equ  GPIO_DMAREQSET     , 0x84    @DMAREQSET  регистр включени¤ генерации запросов DMA по прерыванию порта
.equ  GPIO_DMAREQCLR     , 0x88    @DMAREQCLR  регистр отключени¤ генерации запросов DMA по прерыванию порта
.equ  GPIO_ADCSOCSET     , 0x8C    @ADCSOCSET  регистр включени¤ генерации запросов начала преобразовани¤ јѕ по прерыванию порта
.equ  GPIO_ADCSOCCLR     , 0x90    @ADCSOCCLR  регистр отключени¤ генерации запросов начала преобразовани¤ јѕ по прерыванию порта
.equ  GPIO_RXEVSET       , 0x94    @RXEVSET  регистр включени¤ генерации запросов RXEV к ¤дру по прерыванию порта
.equ  GPIO_RXEVCLR       , 0x98    @RXEVCLR  регистр отключени¤ генерации запросов RXEV к ¤дру по прерыванию порта
.equ  GPIO_LOCKKEY       , 0x9C    @LOCKKEY  регистр ключа блокировки
.equ  GPIO_LOCKSTAT      , 0x9C    @LOCKSTAT регистр статуса блокировки
.equ  GPIO_LOCKSET       , 0xA0    @LOCKSET  регистр включени¤ блокировки изменени¤ конфигурации вывода
.equ  GPIO_LOCKCLR       , 0xA4    @LOCKCLR  регистр отключени¤ блокировки изменени¤ конфигурации вывода
.equ  GPIO_MASKLB        , 0xA4    @јдрес: GPIOp + MASKLB + (4*i)h (i = 0h, Е, FFh)ива масок младшего байта порта
.equ  GPIO_MASKHB        , 0xA4    @јдрес: GPIOp + MASKHB + (4*i)h (i = 0h, Е, FFh)ива масок старшего байта порта


@.item     GPIO_DATA
.equ  GPIO_DATA_VAL_N, 0    @Биты 15-0   Чтение
.equ  GPIO_DATA_VAL_M, 0x0000FFFF    @Возвращает текущее состояние порта

@.item      GPIO_DATAOUT
.equ  GPIO_DATAOUT_VAL_N, 0    @Биты 15-0  Чтение  Возвращает текущее состояние порта
.equ  GPIO_DATAOU_VAL_M, 0x0000FFFF    @Возвращает текущее состояние порта
                                       @ Запись Устанавливает на выводах порта уровень сигнала,
                                       @ соответствующий записанному в биты значению

@.item      GPIO_DATAOUTSET
.equ  GPIO_DATAOUTSET_PIN15, 1 << 15    @Запись  единицы
.equ  GPIO_DATAOUTSET_PIN14, 1 << 14    @Устанавливает соответствующий бит n в регистре DATAOUT
.equ  GPIO_DATAOUTSET_PIN13, 1 << 13
.equ  GPIO_DATAOUTSET_PIN12, 1 << 12
.equ  GPIO_DATAOUTSET_PIN11, 1 << 11
.equ  GPIO_DATAOUTSET_PIN10, 1 << 10
.equ  GPIO_DATAOUTSET_PIN9, 1 << 9
.equ  GPIO_DATAOUTSET_PIN8, 1 << 8
.equ  GPIO_DATAOUTSET_PIN7, 1 << 7
.equ  GPIO_DATAOUTSET_PIN6, 1 << 6
.equ  GPIO_DATAOUTSET_PIN5, 1 << 5
.equ  GPIO_DATAOUTSET_PIN4, 1 << 4
.equ  GPIO_DATAOUTSET_PIN3, 1 << 3
.equ  GPIO_DATAOUTSET_PIN2, 1 << 2
.equ  GPIO_DATAOUTSET_PIN1, 1 << 1
.equ  GPIO_DATAOUTSET_PIN0, 1 << 0

@.item      GPIO_DATAOUTCLR
.equ  GPIO_DATAOUTCLR_PIN15, 1 << 15    @Запись  единицы
.equ  GPIO_DATAOUTCLR_PIN14, 1 << 14    @Сбрасывает соответствующий бит n в регистре DATAOUT и, как
.equ  GPIO_DATAOUTCLR_PIN13, 1 << 13    @следствие, устанавливает низкий уровень сигнала на выводе n
.equ  GPIO_DATAOUTCLR_PIN12, 1 << 12
.equ  GPIO_DATAOUTCLR_PIN11, 1 << 11
.equ  GPIO_DATAOUTCLR_PIN10, 1 << 10
.equ  GPIO_DATAOUTCLR_PIN9, 1 << 9
.equ  GPIO_DATAOUTCLR_PIN8, 1 << 8
.equ  GPIO_DATAOUTCLR_PIN7, 1 << 7
.equ  GPIO_DATAOUTCLR_PIN6, 1 << 6
.equ  GPIO_DATAOUTCLR_PIN5, 1 << 5
.equ  GPIO_DATAOUTCLR_PIN4, 1 << 4
.equ  GPIO_DATAOUTCLR_PIN3, 1 << 3
.equ  GPIO_DATAOUTCLR_PIN2, 1 << 2
.equ  GPIO_DATAOUTCLR_PIN1, 1 << 1
.equ  GPIO_DATAOUTCLR_PIN0, 1 << 0

@.item      GPIO_DATAOUTTGL
.equ  GPIO_DATAOUTTGL_PIN15, 1 << 15    @Запись  единицы
.equ  GPIO_DATAOUTTGL_PIN14, 1 << 14    @Изменяет состояние соответствующего бита n в регистре
.equ  GPIO_DATAOUTTGL_PIN13, 1 << 13    @DATAOUT на противоположное и, как следствие, состояние
.equ  GPIO_DATAOUTTGL_PIN12, 1 << 12    @сигнала на выводе n порта
.equ  GPIO_DATAOUTTGL_PIN11, 1 << 11
.equ  GPIO_DATAOUTTGL_PIN10, 1 << 10
.equ  GPIO_DATAOUTTGL_PIN9, 1 << 9
.equ  GPIO_DATAOUTTGL_PIN8, 1 << 8
.equ  GPIO_DATAOUTTGL_PIN7, 1 << 7
.equ  GPIO_DATAOUTTGL_PIN6, 1 << 6
.equ  GPIO_DATAOUTTGL_PIN5, 1 << 5
.equ  GPIO_DATAOUTTGL_PIN4, 1 << 4
.equ  GPIO_DATAOUTTGL_PIN3, 1 << 3
.equ  GPIO_DATAOUTTGL_PIN2, 1 << 2
.equ  GPIO_DATAOUTTGL_PIN1, 1 << 1
.equ  GPIO_DATAOUTTGL_PIN0, 1 << 0

@.item      GPIO_DENSET
.equ  GPIO_DENSET_PIN15, 1 << 15    @Запись  единицы
.equ  GPIO_DENSET_PIN14, 1 << 14    @Подключает вывод n к его цифровой схеме, т. е.
.equ  GPIO_DENSET_PIN13, 1 << 13    @разрешает функционирование вывода как входа/выхода порта
.equ  GPIO_DENSET_PIN12, 1 << 12    @
.equ  GPIO_DENSET_PIN11, 1 << 11
.equ  GPIO_DENSET_PIN10, 1 << 10
.equ  GPIO_DENSET_PIN9, 1 << 9
.equ  GPIO_DENSET_PIN8, 1 << 8
.equ  GPIO_DENSET_PIN7, 1 << 7
.equ  GPIO_DENSET_PIN6, 1 << 6
.equ  GPIO_DENSET_PIN5, 1 << 5
.equ  GPIO_DENSET_PIN4, 1 << 4
.equ  GPIO_DENSET_PIN3, 1 << 3
.equ  GPIO_DENSET_PIN2, 1 << 2
.equ  GPIO_DENSET_PIN1, 1 << 1
.equ  GPIO_DENSET_PIN0, 1 << 0

@.item      GPIO_DENCLR
.equ  GPIO_DENCLR_PIN15, 1 << 15    @Запись  единицы
.equ  GPIO_DENCLR_PIN14, 1 << 14    @Отключает вывод n от его цифровой схемы, т. е. запрещает
.equ  GPIO_DENCLR_PIN13, 1 << 13    @функционирование вывода как входа/выхода порта
.equ  GPIO_DENCLR_PIN12, 1 << 12    @
.equ  GPIO_DENCLR_PIN11, 1 << 11
.equ  GPIO_DENCLR_PIN10, 1 << 10
.equ  GPIO_DENCLR_PIN9, 1 << 9
.equ  GPIO_DENCLR_PIN8, 1 << 8
.equ  GPIO_DENCLR_PIN7, 1 << 7
.equ  GPIO_DENCLR_PIN6, 1 << 6
.equ  GPIO_DENCLR_PIN5, 1 << 5
.equ  GPIO_DENCLR_PIN4, 1 << 4
.equ  GPIO_DENCLR_PIN3, 1 << 3
.equ  GPIO_DENCLR_PIN2, 1 << 2
.equ  GPIO_DENCLR_PIN1, 1 << 1
.equ  GPIO_DENCLR_PIN0, 1 << 0

@.item      GPIO_INMODE
.equ  GPIO_INMODE_PIN15_N, 30    @ Поле выбора режима входаPIN15
.equ  GPIO_INMODE_PIN15, 0X00 << 30    @  Триггер Шмитта
.equ  GPIO_INMODE_PIN15, 0X01 << 30    @  КМОП-буфер
.equ  GPIO_INMODE_PIN15, 0X10 << 30    @ Зарезервировано
.equ  GPIO_INMODE_PIN15, 0X11 << 30    @ Входной буфер отключен
.equ  GPIO_INMODE_PIN14_N, 28    @ Поле выбора режима входаPIN14
.equ  GPIO_INMODE_PIN14, 0X00 << 28    @  Триггер Шмитта
.equ  GPIO_INMODE_PIN14, 0X01 << 28    @  КМОП-буфер
.equ  GPIO_INMODE_PIN14, 0X10 << 28    @ Зарезервировано
.equ  GPIO_INMODE_PIN14, 0X11 << 28    @ Входной буфер отключен
.equ  GPIO_INMODE_PIN13_N, 26    @ Поле выбора режима входаPIN13
.equ  GPIO_INMODE_PIN13, 0X00 << 26    @  Триггер Шмитта
.equ  GPIO_INMODE_PIN13, 0X01 << 26    @  КМОП-буфер
.equ  GPIO_INMODE_PIN13, 0X10 << 26    @ Зарезервировано
.equ  GPIO_INMODE_PIN13, 0X11 << 26    @ Входной буфер отключен
.equ  GPIO_INMODE_PIN12_N, 24    @ Поле выбора режима входаPIN12
.equ  GPIO_INMODE_PIN12, 0X00 << 24    @  Триггер Шмитта
.equ  GPIO_INMODE_PIN12, 0X01 << 24    @  КМОП-буфер
.equ  GPIO_INMODE_PIN12, 0X10 << 24    @ Зарезервировано
.equ  GPIO_INMODE_PIN12, 0X11 << 24    @ Входной буфер отключен
.equ  GPIO_INMODE_PIN11_N, 22    @ Поле выбора режима входаPIN11
.equ  GPIO_INMODE_PIN11, 0X00 << 22    @  Триггер Шмитта
.equ  GPIO_INMODE_PIN11, 0X01 << 22    @  КМОП-буфер
.equ  GPIO_INMODE_PIN11, 0X10 << 22    @ Зарезервировано
.equ  GPIO_INMODE_PIN11, 0X11 << 22    @ Входной буфер отключен
.equ  GPIO_INMODE_PIN10_N, 20    @ Поле выбора режима входаPIN10
.equ  GPIO_INMODE_PIN10, 0X00 << 20    @  Триггер Шмитта
.equ  GPIO_INMODE_PIN10, 0X01 << 20    @  КМОП-буфер
.equ  GPIO_INMODE_PIN10, 0X10 << 20    @ Зарезервировано
.equ  GPIO_INMODE_PIN10, 0X11 << 20    @ Входной буфер отключен
.equ  GPIO_INMODE_PIN9_N, 18    @ Поле выбора режима входаPIN9
.equ  GPIO_INMODE_PIN9, 0X00 << 18    @  Триггер Шмитта
.equ  GPIO_INMODE_PIN9, 0X01 << 18    @  КМОП-буфер
.equ  GPIO_INMODE_PIN9, 0X10 << 18    @ Зарезервировано
.equ  GPIO_INMODE_PIN9, 0X11 << 18    @ Входной буфер отключен
.equ  GPIO_INMODE_PIN8_N , 16    @ Поле выбора режима входаPIN8
.equ  GPIO_INMODE_PIN8   , 0X00 << 16    @  Триггер Шмитта
.equ  GPIO_INMODE_PIN8   , 0X01 << 16    @  КМОП-буфер
.equ  GPIO_INMODE_PIN8   , 0X10 << 16    @ Зарезервировано
.equ  GPIO_INMODE_PIN8   , 0X11 << 16    @ Входной буфер отключен
.equ  GPIO_INMODE_PIN7_N , 14    @ Поле выбора режима входаPIN7
.equ  GPIO_INMODE_PIN7   , 0X00 << 14    @  Триггер Шмитта
.equ  GPIO_INMODE_PIN7   , 0X01 << 14    @  КМОП-буфер
.equ  GPIO_INMODE_PIN7   , 0X10 << 14    @ Зарезервировано
.equ  GPIO_INMODE_PIN7   , 0X11 << 14    @ Входной буфер отключен
.equ  GPIO_INMODE_PIN6_N , 12    @ Поле выбора режима входаPIN6
.equ  GPIO_INMODE_PIN6   , 0X00 << 12    @  Триггер Шмитта
.equ  GPIO_INMODE_PIN6   , 0X01 << 12    @  КМОП-буфер
.equ  GPIO_INMODE_PIN6   , 0X10 << 12    @ Зарезервировано
.equ  GPIO_INMODE_PIN6   , 0X11 << 12    @ Входной буфер отключен
.equ  GPIO_INMODE_PIN5_N , 10    @ Поле выбора режима входаPIN5
.equ  GPIO_INMODE_PIN5   , 0X00 << 10    @  Триггер Шмитта
.equ  GPIO_INMODE_PIN5   , 0X01 << 10    @  КМОП-буфер
.equ  GPIO_INMODE_PIN5   , 0X10 << 10    @ Зарезервировано
.equ  GPIO_INMODE_PIN5   , 0X11 << 10    @ Входной буфер отключен
.equ  GPIO_INMODE_PIN4_N , 8    @ Поле выбора режима входаPIN4
.equ  GPIO_INMODE_PIN4   , 0X00 << 8    @  Триггер Шмитта
.equ  GPIO_INMODE_PIN4   , 0X01 << 8    @  КМОП-буфер
.equ  GPIO_INMODE_PIN4   , 0X10 << 8    @ Зарезервировано
.equ  GPIO_INMODE_PIN4   , 0X11 << 8    @ Входной буфер отключен
.equ  GPIO_INMODE_PIN3_N , 6    @ Поле выбора режима входаPIN3
.equ  GPIO_INMODE_PIN3   , 0X00 << 6    @  Триггер Шмитта
.equ  GPIO_INMODE_PIN3   , 0X01 << 6    @  КМОП-буфер
.equ  GPIO_INMODE_PIN3   , 0X10 << 6    @ Зарезервировано
.equ  GPIO_INMODE_PIN3   , 0X11 << 6    @ Входной буфер отключен
.equ  GPIO_INMODE_PIN2_N , 4    @ Поле выбора режима входаPIN2
.equ  GPIO_INMODE_PIN2   , 0X00 << 4    @  Триггер Шмитта
.equ  GPIO_INMODE_PIN2   , 0X01 << 4    @  КМОП-буфер
.equ  GPIO_INMODE_PIN2   , 0X10 << 4    @ Зарезервировано
.equ  GPIO_INMODE_PIN2   , 0X11 << 4    @ Входной буфер отключен
.equ  GPIO_INMODE_PIN1_N , 2    @ Поле выбора режима входаPIN1
.equ  GPIO_INMODE_PIN1   , 0X00 << 2    @  Триггер Шмитта
.equ  GPIO_INMODE_PIN1   , 0X01 << 2    @  КМОП-буфер
.equ  GPIO_INMODE_PIN1   , 0X10 << 2    @ Зарезервировано
.equ  GPIO_INMODE_PIN1   , 0X11 << 2    @ Входной буфер отключен
.equ  GPIO_INMODE_PIN0_N , 0    @ Поле выбора режима входаPIN0
.equ  GPIO_INMODE_PIN0   , 0X00 << 0    @  Триггер Шмитта
.equ  GPIO_INMODE_PIN0   , 0X01 << 0    @  КМОП-буфер
.equ  GPIO_INMODE_PIN0   , 0X10 << 0    @ Зарезервировано
.equ  GPIO_INMODE_PIN0   , 0X11 << 0    @ Входной буфер отключен

@.item      GPIO_PULLMODE
.equ  GPIO_PULLMODE_PIN15_N, 30    @ Поле выбора режима входаPIN15
.equ  GPIO_PULLMODE_PIN15, 0X00 << 30    @  Подтяжка отключена
.equ  GPIO_PULLMODE_PIN15, 0X01 << 30    @  Подтяжка к уровню логической единицы (Pull-up)
.equ  GPIO_PULLMODE_PIN15, 0X10 << 30    @ Подтяжка к уровню логического нуля (Pull-down)
.equ  GPIO_PULLMODE_PIN15, 0X11 << 30    @ Зарезервировано
.equ  GPIO_PULLMODE_PIN14_N, 28    @ Поле выбора режима входаPIN14
.equ  GPIO_PULLMODE_PIN14, 0X00 << 28    @  Подтяжка отключена
.equ  GPIO_PULLMODE_PIN14, 0X01 << 28    @  Подтяжка к уровню логической единицы (Pull-up)
.equ  GPIO_PULLMODE_PIN14, 0X10 << 28    @ Подтяжка к уровню логического нуля (Pull-down)
.equ  GPIO_PULLMODE_PIN14, 0X11 << 28    @
.equ  GPIO_PULLMODE_PIN13_N, 26    @ Поле выбора режима входаPIN13
.equ  GPIO_PULLMODE_PIN13, 0X00 << 26    @  Подтяжка отключена
.equ  GPIO_PULLMODE_PIN13, 0X01 << 26    @  Подтяжка к уровню логической единицы (Pull-up)
.equ  GPIO_PULLMODE_PIN13, 0X10 << 26    @ Подтяжка к уровню логического нуля (Pull-down)
.equ  GPIO_PULLMODE_PIN13, 0X11 << 26    @
.equ  GPIO_PULLMODE_PIN12_N, 24    @ Поле выбора режима входаPIN12
.equ  GPIO_PULLMODE_PIN12, 0X00 << 24    @  Подтяжка отключена
.equ  GPIO_PULLMODE_PIN12, 0X01 << 24    @  Подтяжка к уровню логической единицы (Pull-up)
.equ  GPIO_PULLMODE_PIN12, 0X10 << 24    @ Подтяжка к уровню логического нуля (Pull-down)
.equ  GPIO_PULLMODE_PIN12, 0X11 << 24    @
.equ  GPIO_PULLMODE_PIN11_N, 22    @ Поле выбора режима входаPIN11
.equ  GPIO_PULLMODE_PIN11, 0X00 << 22    @  Подтяжка отключена
.equ  GPIO_PULLMODE_PIN11, 0X01 << 22    @  Подтяжка к уровню логической единицы (Pull-up)
.equ  GPIO_PULLMODE_PIN11, 0X10 << 22    @ Подтяжка к уровню логического нуля (Pull-down)
.equ  GPIO_PULLMODE_PIN11, 0X11 << 22    @
.equ  GPIO_PULLMODE_PIN10_N, 20    @ Поле выбора режима входаPIN10
.equ  GPIO_PULLMODE_PIN10, 0X00 << 20    @  Подтяжка отключена
.equ  GPIO_PULLMODE_PIN10, 0X01 << 20    @  Подтяжка к уровню логической единицы (Pull-up)
.equ  GPIO_PULLMODE_PIN10, 0X10 << 20    @ Подтяжка к уровню логического нуля (Pull-down)
.equ  GPIO_PULLMODE_PIN10, 0X11 << 20    @
.equ  GPIO_PULLMODE_PIN9_N, 18    @ Поле выбора режима входаPIN9
.equ  GPIO_PULLMODE_PIN9, 0X00 << 18    @  Подтяжка отключена
.equ  GPIO_PULLMODE_PIN9, 0X01 << 18    @  Подтяжка к уровню логической единицы (Pull-up)
.equ  GPIO_PULLMODE_PIN9, 0X10 << 18    @ Подтяжка к уровню логического нуля (Pull-down)
.equ  GPIO_PULLMODE_PIN9, 0X11 << 18    @
.equ  GPIO_PULLMODE_PIN8_N , 16    @ Поле выбора режима входаPIN8
.equ  GPIO_PULLMODE_PIN8   , 0X00 << 16    @  Подтяжка отключена
.equ  GPIO_PULLMODE_PIN8   , 0X01 << 16    @  Подтяжка к уровню логической единицы (Pull-up)
.equ  GPIO_PULLMODE_PIN8   , 0X10 << 16    @ Подтяжка к уровню логического нуля (Pull-down)
.equ  GPIO_PULLMODE_PIN8   , 0X11 << 16    @
.equ  GPIO_PULLMODE_PIN7_N , 14    @ Поле выбора режима входаPIN7
.equ  GPIO_PULLMODE_PIN7   , 0X00 << 14    @  Подтяжка отключена
.equ  GPIO_PULLMODE_PIN7   , 0X01 << 14    @ Подтяжка к уровню логической единицы (Pull-up)
.equ  GPIO_PULLMODE_PIN7   , 0X10 << 14    @ Подтяжка к уровню логического нуля (Pull-down)
.equ  GPIO_PULLMODE_PIN7   , 0X11 << 14    @
.equ  GPIO_PULLMODE_PIN6_N , 12    @ Поле выбора режима входаPIN6
.equ  GPIO_PULLMODE_PIN6   , 0X00 << 12    @  Подтяжка отключена
.equ  GPIO_PULLMODE_PIN6   , 0X01 << 12    @  Подтяжка к уровню логической единицы (Pull-up)
.equ  GPIO_PULLMODE_PIN6   , 0X10 << 12    @ Подтяжка к уровню логического нуля (Pull-down)
.equ  GPIO_PULLMODE_PIN6   , 0X11 << 12    @
.equ  GPIO_PULLMODE_PIN5_N , 10    @ Поле выбора режима входаPIN5
.equ  GPIO_PULLMODE_PIN5   , 0X00 << 10    @  Подтяжка отключена
.equ  GPIO_PULLMODE_PIN5   , 0X01 << 10    @  Подтяжка к уровню логической единицы (Pull-up)
.equ  GPIO_PULLMODE_PIN5   , 0X10 << 10    @ Подтяжка к уровню логического нуля (Pull-down)
.equ  GPIO_PULLMODE_PIN5   , 0X11 << 10    @
.equ  GPIO_PULLMODE_PIN4_N , 8    @ Поле выбора режима входаPIN4
.equ  GPIO_PULLMODE_PIN4   , 0X00 << 8    @  Подтяжка отключена
.equ  GPIO_PULLMODE_PIN4   , 0X01 << 8    @  Подтяжка к уровню логической единицы (Pull-up)
.equ  GPIO_PULLMODE_PIN4   , 0X10 << 8    @ Подтяжка к уровню логического нуля (Pull-down)
.equ  GPIO_PULLMODE_PIN4   , 0X11 << 8    @
.equ  GPIO_PULLMODE_PIN3_N , 6    @ Поле выбора режима входаPIN3
.equ  GPIO_PULLMODE_PIN3   , 0X00 << 6    @  Подтяжка отключена
.equ  GPIO_PULLMODE_PIN3   , 0X01 << 6    @  Подтяжка к уровню логической единицы (Pull-up)
.equ  GPIO_PULLMODE_PIN3   , 0X10 << 6    @ Подтяжка к уровню логического нуля (Pull-down)
.equ  GPIO_PULLMODE_PIN3   , 0X11 << 6    @
.equ  GPIO_PULLMODE_PIN2_N , 4    @ Поле выбора режима входаPIN2
.equ  GPIO_PULLMODE_PIN2   , 0X00 << 4    @  Подтяжка отключена
.equ  GPIO_PULLMODE_PIN2   , 0X01 << 4    @ Подтяжка к уровню логической единицы (Pull-up)
.equ  GPIO_PULLMODE_PIN2   , 0X10 << 4    @ Подтяжка к уровню логического нуля (Pull-down)
.equ  GPIO_PULLMODE_PIN2   , 0X11 << 4    @
.equ  GPIO_PULLMODE_PIN1_N , 2    @ Поле выбора режима входаPIN1
.equ  GPIO_PULLMODE_PIN1   , 0X00 << 2    @  Подтяжка отключена
.equ  GPIO_PULLMODE_PIN1   , 0X01 << 2    @  Подтяжка к уровню логической единицы (Pull-up)
.equ  GPIO_PULLMODE_PIN1   , 0X10 << 2    @ Подтяжка к уровню логического нуля (Pull-down)
.equ  GPIO_PULLMODE_PIN1   , 0X11 << 2    @
.equ  GPIO_PULLMODE_PIN0_N , 0    @ Поле выбора режима входаPIN0
.equ  GPIO_PULLMODE_PIN0   , 0X00 << 0    @  Подтяжка отключена
.equ  GPIO_PULLMODE_PIN0   , 0X01 << 0    @  Подтяжка к уровню логической единицы (Pull-up)
.equ  GPIO_PULLMODE_PIN0   , 0X10 << 0    @ Подтяжка к уровню логического нуля (Pull-down)
.equ  GPIO_PULLMODE_PIN0   , 0X11 << 0    @

@.item     GPIO_OUTMODE
.equ  GPIO_OUTMODE_PIN15_N, 30    @ Поле выбора режима входаPIN15
.equ  GPIO_OUTMODE_PIN15 , 0X00 << 30    @  Двухтактный выход (Push-Pull
.equ  GPIO_OUTMODE_PIN15 , 0X01 << 30    @  Выход с открытым стоком (Open Drain)
.equ  GPIO_OUTMODE_PIN15 , 0X10 << 30    @ Выход с открытым истоком (Open Source)
.equ  GPIO_OUTMODE_PIN15 , 0X11 << 30    @ Зарезервировано
.equ  GPIO_OUTMODE_PIN14_N, 28    @ Поле выбора режима входаPIN14
.equ  GPIO_OUTMODE_PIN14 , 0X00 << 28    @  Двухтактный выход (Push-Pull
.equ  GPIO_OUTMODE_PIN14 , 0X01 << 28    @  Выход с открытым стоком (Open Drain)
.equ  GPIO_OUTMODE_PIN14 , 0X10 << 28    @ Выход с открытым истоком (Open Source)
.equ  GPIO_OUTMODE_PIN14 , 0X11 << 28    @
.equ  GPIO_OUTMODE_PIN13_N, 26    @ Поле выбора режима входаPIN13
.equ  GPIO_OUTMODE_PIN13 , 0X00 << 26    @  Двухтактный выход (Push-Pull
.equ  GPIO_OUTMODE_PIN13 , 0X01 << 26    @ Выход с открытым стоком (Open Drain)
.equ  GPIO_OUTMODE_PIN13 , 0X10 << 26    @ Выход с открытым истоком (Open Source)
.equ  GPIO_OUTMODE_PIN13 , 0X11 << 26    @
.equ  GPIO_OUTMODE_PIN12_N, 24    @ Поле выбора режима входаPIN12
.equ  GPIO_OUTMODE_PIN12 , 0X00 << 24    @  Двухтактный выход (Push-Pull
.equ  GPIO_OUTMODE_PIN12 , 0X01 << 24    @  Выход с открытым стоком (Open Drain)
.equ  GPIO_OUTMODE_PIN12 , 0X10 << 24    @ Выход с открытым истоком (Open Source)
.equ  GPIO_OUTMODE_PIN12 , 0X11 << 24    @
.equ  GPIO_OUTMODE_PIN11_N, 22    @ Поле выбора режима входаPIN11
.equ  GPIO_OUTMODE_PIN11 , 0X00 << 22    @  Двухтактный выход (Push-Pull
.equ  GPIO_OUTMODE_PIN11 , 0X01 << 22    @  Выход с открытым стоком (Open Drain)
.equ  GPIO_OUTMODE_PIN11 , 0X10 << 22    @ Выход с открытым истоком (Open Source)
.equ  GPIO_OUTMODE_PIN11 , 0X11 << 22    @
.equ  GPIO_OUTMODE_PIN10_N, 20    @ Поле выбора режима входаPIN10
.equ  GPIO_OUTMODE_PIN10 , 0X00 << 20    @  Двухтактный выход (Push-Pull
.equ  GPIO_OUTMODE_PIN10 , 0X01 << 20    @  Выход с открытым стоком (Open Drain)
.equ  GPIO_OUTMODE_PIN10 , 0X10 << 20    @ Выход с открытым истоком (Open Source)
.equ  GPIO_OUTMODE_PIN10 , 0X11 << 20    @
.equ  GPIO_OUTMODE_PIN9_N, 18    @ Поле выбора режима входаPIN9
.equ  GPIO_OUTMODE_PIN9  , 0X00 << 18    @ Двухтактный выход (Push-Pull
.equ  GPIO_OUTMODE_PIN9  , 0X01 << 18    @ Выход с открытым стоком (Open Drain)
.equ  GPIO_OUTMODE_PIN9  , 0X10 << 18    @ Выход с открытым истоком (Open Source)
.equ  GPIO_OUTMODE_PIN9  , 0X11 << 18    @
.equ  GPIO_OUTMODE_PIN8_N, 16    @ Поле выбора режима входаPIN8
.equ  GPIO_OUTMODE_PIN8  , 0X00 << 16    @  Двухтактный выход (Push-Pull
.equ  GPIO_OUTMODE_PIN8  , 0X01 << 16    @  Выход с открытым стоком (Open Drain)
.equ  GPIO_OUTMODE_PIN8  , 0X10 << 16    @ Выход с открытым истоком (Open Source)
.equ  GPIO_OUTMODE_PIN8  , 0X11 << 16    @
.equ  GPIO_OUTMODE_PIN7_N, 14    @ Поле выбора режима входаPIN7
.equ  GPIO_OUTMODE_PIN7  , 0X00 << 14    @  Двухтактный выход (Push-Pull
.equ  GPIO_OUTMODE_PIN7  , 0X01 << 14    @ Выход с открытым стоком (Open Drain)
.equ  GPIO_OUTMODE_PIN7  , 0X10 << 14    @ Выход с открытым истоком (Open Source)
.equ  GPIO_OUTMODE_PIN7  , 0X11 << 14    @
.equ  GPIO_OUTMODE_PIN6_N, 12    @ Поле выбора режима входаPIN6
.equ  GPIO_OUTMODE_PIN6  , 0X00 << 12    @  Двухтактный выход (Push-Pull
.equ  GPIO_OUTMODE_PIN6  , 0X01 << 12    @  Выход с открытым стоком (Open Drain)
.equ  GPIO_OUTMODE_PIN6  , 0X10 << 12    @ Выход с открытым истоком (Open Source)
.equ  GPIO_OUTMODE_PIN6  , 0X11 << 12    @
.equ  GPIO_OUTMODE_PIN5_N, 10    @ Поле выбора режима входаPIN5
.equ  GPIO_OUTMODE_PIN5  , 0X00 << 10    @ Двухтактный выход (Push-Pull
.equ  GPIO_OUTMODE_PIN5  , 0X01 << 10    @  Выход с открытым стоком (Open Drain)
.equ  GPIO_OUTMODE_PIN5  , 0X10 << 10    @ Выход с открытым истоком (Open Source)
.equ  GPIO_OUTMODE_PIN5  , 0X11 << 10    @
.equ  GPIO_OUTMODE_PIN4_N, 8    @ Поле выбора режима входаPIN4
.equ  GPIO_OUTMODE_PIN4  , 0X00 << 8    @  Двухтактный выход (Push-Pull
.equ  GPIO_OUTMODE_PIN4  , 0X01 << 8    @  Выход с открытым стоком (Open Drain)
.equ  GPIO_OUTMODE_PIN4  , 0X10 << 8    @ Выход с открытым истоком (Open Source)
.equ  GPIO_OUTMODE_PIN4  , 0X11 << 8    @
.equ  GPIO_OUTMODE_PIN3_N, 6    @ Поле выбора режима входаPIN3
.equ  GPIO_OUTMODE_PIN3  , 0X00 << 6    @  Двухтактный выход (Push-Pull
.equ  GPIO_OUTMODE_PIN3  , 0X01 << 6    @  Выход с открытым стоком (Open Drain)
.equ  GPIO_OUTMODE_PIN3  , 0X10 << 6    @ Выход с открытым истоком (Open Source)
.equ  GPIO_OUTMODE_PIN3  , 0X11 << 6    @
.equ  GPIO_OUTMODE_PIN2_N, 4    @ Поле выбора режима входаPIN2
.equ  GPIO_OUTMODE_PIN2  , 0X00 << 4    @  Двухтактный выход (Push-Pull
.equ  GPIO_OUTMODE_PIN2  , 0X01 << 4    @ Выход с открытым стоком (Open Drain)
.equ  GPIO_OUTMODE_PIN2  , 0X10 << 4    @ Выход с открытым истоком (Open Source)
.equ  GPIO_OUTMODE_PIN2  , 0X11 << 4    @
.equ  GPIO_OUTMODE_PIN1_N, 2    @ Поле выбора режима входаPIN1
.equ  GPIO_OUTMODE_PIN1  , 0X00 << 2    @  Двухтактный выход (Push-Pull
.equ  GPIO_OUTMODE_PIN1  , 0X01 << 2    @  Выход с открытым стоком (Open Drain)
.equ  GPIO_OUTMODE_PIN1  , 0X10 << 2    @ Выход с открытым истоком (Open Source)
.equ  GPIO_OUTMODE_PIN1  , 0X11 << 2    @
.equ  GPIO_OUTMODE_PIN0_N, 0    @ Поле выбора режима входаPIN0
.equ  GPIO_OUTMODE_PIN0  , 0X00 << 0    @  Двухтактный выход (Push-Pull
.equ  GPIO_OUTMODE_PIN0  , 0X01 << 0    @  Выход с открытым стоком (Open Drain)
.equ  GPIO_OUTMODE_PIN0  , 0X10 << 0    @  Выход с открытым истоком (Open Source)одтяжка к уровню логического нуля (Pull-down)
.equ  GPIO_OUTMODE_PIN0  , 0X11 << 0    @


@.item     GPIO_DRIVEMODE
.equ  GPIO_DRIVEMODE_PIN15_N, 30    @ Поле выбора режима входаPIN15
.equ  GPIO_DRIVEMODE_PIN15 , 0X00 << 30    @  Высокая нагрузочная способность и высокая скорость
.equ  GPIO_DRIVEMODE_PIN15 , 0X01 << 30    @  Высокая нагрузочная способность и низкая скорость
.equ  GPIO_DRIVEMODE_PIN15 , 0X10 << 30    @ Низкая нагрузочная способность и высокая скорость
.equ  GPIO_DRIVEMODE_PIN15 , 0X11 << 30    @ Низкая нагрузочная способность и низкая скорость
.equ  GPIO_DRIVEMODE_PIN14_N, 28    @ Поле выбора режима входаPIN14
.equ  GPIO_DRIVEMODE_PIN14 , 0X00 << 28    @  Высокая нагрузочная способность и высокая скорость
.equ  GPIO_DRIVEMODE_PIN14 , 0X01 << 28    @  Высокая нагрузочная способность и низкая скорость
.equ  GPIO_DRIVEMODE_PIN14 , 0X10 << 28    @ Низкая нагрузочная способность и высокая скорость
.equ  GPIO_DRIVEMODE_PIN14 , 0X11 << 28    @ Низкая нагрузочная способность и низкая скорость
.equ  GPIO_DRIVEMODE_PIN13_N, 26    @ Поле выбора режима входаPIN13
.equ  GPIO_DRIVEMODE_PIN13 , 0X00 << 26    @  Высокая нагрузочная способность и высокая скорость
.equ  GPIO_DRIVEMODE_PIN13 , 0X01 << 26    @ Высокая нагрузочная способность и низкая скорость
.equ  GPIO_DRIVEMODE_PIN13 , 0X10 << 26    @ Низкая нагрузочная способность и высокая скорость
.equ  GPIO_DRIVEMODE_PIN13 , 0X11 << 26    @ Низкая нагрузочная способность и низкая скорость
.equ  GPIO_DRIVEMODE_PIN12_N, 24    @ Поле выбора режима входаPIN12
.equ  GPIO_DRIVEMODE_PIN12 , 0X00 << 24    @  Высокая нагрузочная способность и высокая скорость
.equ  GPIO_DRIVEMODE_PIN12 , 0X01 << 24    @  Высокая нагрузочная способность и низкая скорость
.equ  GPIO_DRIVEMODE_PIN12 , 0X10 << 24    @ Низкая нагрузочная способность и высокая скорость
.equ  GPIO_DRIVEMODE_PIN12 , 0X11 << 24    @ Низкая нагрузочная способность и низкая скорость
.equ  GPIO_DRIVEMODE_PIN11_N, 22    @ Поле выбора режима входаPIN11
.equ  GPIO_DRIVEMODE_PIN11 , 0X00 << 22    @  Высокая нагрузочная способность и высокая скорость
.equ  GPIO_DRIVEMODE_PIN11 , 0X01 << 22    @ Высокая нагрузочная способность и низкая скорость
.equ  GPIO_DRIVEMODE_PIN11 , 0X10 << 22    @ Низкая нагрузочная способность и высокая скорость
.equ  GPIO_DRIVEMODE_PIN11 , 0X11 << 22    @ Низкая нагрузочная способность и низкая скорость
.equ  GPIO_DRIVEMODE_PIN10_N, 20    @ Поле выбора режима входаPIN10
.equ  GPIO_DRIVEMODE_PIN10 , 0X00 << 20    @  Высокая нагрузочная способность и высокая скорость
.equ  GPIO_DRIVEMODE_PIN10 , 0X01 << 20    @  Высокая нагрузочная способность и низкая скорость
.equ  GPIO_DRIVEMODE_PIN10 , 0X10 << 20    @ Низкая нагрузочная способность и высокая скорость
.equ  GPIO_DRIVEMODE_PIN10 , 0X11 << 20    @
.equ  GPIO_DRIVEMODE_PIN9_N, 18    @ Поле выбора режима входаPIN9
.equ  GPIO_DRIVEMODE_PIN9  , 0X00 << 18    @ Высокая нагрузочная способность и высокая скорость
.equ  GPIO_DRIVEMODE_PIN9  , 0X01 << 18    @ Высокая нагрузочная способность и низкая скорость
.equ  GPIO_DRIVEMODE_PIN9  , 0X10 << 18    @ Низкая нагрузочная способность и высокая скорость
.equ  GPIO_DRIVEMODE_PIN9  , 0X11 << 18    @ Низкая нагрузочная способность и низкая скорость
.equ  GPIO_DRIVEMODE_PIN8_N, 16    @ Поле выбора режима входаPIN8
.equ  GPIO_DRIVEMODE_PIN8  , 0X00 << 16    @  Высокая нагрузочная способность и высокая скорость
.equ  GPIO_DRIVEMODE_PIN8  , 0X01 << 16    @ Высокая нагрузочная способность и низкая скорость
.equ  GPIO_DRIVEMODE_PIN8  , 0X10 << 16    @ Низкая нагрузочная способность и высокая скорость
.equ  GPIO_DRIVEMODE_PIN8  , 0X11 << 16    @ Низкая нагрузочная способность и низкая скорость
.equ  GPIO_DRIVEMODE_PIN7_N, 14    @ Поле выбора режима входаPIN7
.equ  GPIO_DRIVEMODE_PIN7  , 0X00 << 14    @  Высокая нагрузочная способность и высокая скорость
.equ  GPIO_DRIVEMODE_PIN7  , 0X01 << 14    @ Высокая нагрузочная способность и низкая скорость
.equ  GPIO_DRIVEMODE_PIN7  , 0X10 << 14    @ Низкая нагрузочная способность и высокая скорость
.equ  GPIO_DRIVEMODE_PIN7  , 0X11 << 14    @ Низкая нагрузочная способность и низкая скорость
.equ  GPIO_DRIVEMODE_PIN6_N, 12    @ Поле выбора режима входаPIN6
.equ  GPIO_DRIVEMODE_PIN6  , 0X00 << 12    @  Высокая нагрузочная способность и высокая скорость
.equ  GPIO_DRIVEMODE_PIN6  , 0X01 << 12    @  Высокая нагрузочная способность и низкая скорость
.equ  GPIO_DRIVEMODE_PIN6  , 0X10 << 12    @ Низкая нагрузочная способность и высокая скорость
.equ  GPIO_DRIVEMODE_PIN6  , 0X11 << 12    @ Низкая нагрузочная способность и низкая скорость
.equ  GPIO_DRIVEMODE_PIN5_N, 10    @ Поле выбора режима входаPIN5
.equ  GPIO_DRIVEMODE_PIN5, 0X00 << 10    @ Высокая нагрузочная способность и высокая скорость
.equ  GPIO_DRIVEMODE_PIN5  , 0X01 << 10    @  Высокая нагрузочная способность и низкая скорость
.equ  GPIO_DRIVEMODE_PIN5  , 0X10 << 10    @ Низкая нагрузочная способность и высокая скорость
.equ  GPIO_DRIVEMODE_PIN5  , 0X11 << 10    @ Низкая нагрузочная способность и низкая скорость
.equ  GPIO_DRIVEMODE_PIN4_N, 8    @ Поле выбора режима входаPIN4
.equ  GPIO_DRIVEMODE_PIN4  , 0X00 << 8    @  Высокая нагрузочная способность и высокая скорость
.equ  GPIO_DRIVEMODE_PIN4  , 0X01 << 8    @  Высокая нагрузочная способность и низкая скорость
.equ  GPIO_DRIVEMODE_PIN4  , 0X10 << 8    @ Низкая нагрузочная способность и высокая скорость
.equ  GPIO_DRIVEMODE_PIN4  , 0X11 << 8    @ Низкая нагрузочная способность и низкая скорость
.equ  GPIO_DRIVEMODE_PIN3_N, 6    @ Поле выбора режима входаPIN3
.equ  GPIO_DRIVEMODE_PIN3  , 0X00 << 6    @  Высокая нагрузочная способность и высокая скорость
.equ  GPIO_DRIVEMODE_PIN3  , 0X01 << 6    @  Высокая нагрузочная способность и низкая скорость
.equ  GPIO_DRIVEMODE_PIN3  , 0X10 << 6    @ Низкая нагрузочная способность и высокая скорость
.equ  GPIO_DRIVEMODE_PIN3  , 0X11 << 6    @ Низкая нагрузочная способность и низкая скорость
.equ  GPIO_DRIVEMODE_PIN2_N, 4    @ Поле выбора режима входаPIN2
.equ  GPIO_DRIVEMODE_PIN2  , 0X00 << 4    @  Высокая нагрузочная способность и высокая скорость
.equ  GPIO_DRIVEMODE_PIN2  , 0X01 << 4    @ Высокая нагрузочная способность и низкая скорость
.equ  GPIO_DRIVEMODE_PIN2  , 0X10 << 4    @ Низкая нагрузочная способность и высокая скорость
.equ  GPIO_DRIVEMODE_PIN2  , 0X11 << 4    @ Низкая нагрузочная способность и низкая скорость
.equ  GPIO_DRIVEMODE_PIN1_N, 2    @ Поле выбора режима входаPIN1
.equ  GPIO_DRIVEMODE_PIN1  , 0X00 << 2    @ Высокая нагрузочная способность и высокая скорость
.equ  GPIO_DRIVEMODE_PIN1  , 0X01 << 2    @ Высокая нагрузочная способность и низкая скорость
.equ  GPIO_DRIVEMODE_PIN1  , 0X10 << 2    @ Низкая нагрузочная способность и высокая скорость
.equ  GPIO_DRIVEMODE_PIN1  , 0X11 << 2    @ Низкая нагрузочная способность и низкая скорость
.equ  GPIO_DRIVEMODE_PIN0_N, 0    @ Поле выбора режима входаPIN0
.equ  GPIO_DRIVEMODE_PIN0  , 0X00 << 0    @  Высокая нагрузочная способность и высокая скорость
.equ  GPIO_DRIVEMODE_PIN0  , 0X01 << 0    @ Высокая нагрузочная способность и низкая скорость
.equ  GPIO_DRIVEMODE_PIN0, 0X10 << 0    @ Низкая нагрузочная способность и высокая скорость
.equ  GPIO_DRIVEMODE_PIN0  , 0X11 << 0    @ Низкая нагрузочная способность и низкая скорость

@.item      GPIO_OUTENSET
.equ  GPIO_OUTENSET_PIN15, 1 << 15    @Запись  единицы
.equ  GPIO_OUTENSET_PIN14, 1 << 14    @ Разрешает управлять состоянием вывода
.equ  GPIO_OUTENSET_PIN13, 1 << 13    @ соответствующего бита регистра DATAOUT
.equ  GPIO_OUTENSET_PIN12, 1 << 12    @
.equ  GPIO_OUTENSET_PIN11, 1 << 11
.equ  GPIO_OUTENSET_PIN10, 1 << 10
.equ  GPIO_OUTENSET_PIN9, 1 << 9
.equ  GPIO_OUTENSET_PIN8, 1 << 8
.equ  GPIO_OUTENSET_PIN7, 1 << 7
.equ  GPIO_OUTENSET_PIN6, 1 << 6
.equ  GPIO_OUTENSET_PIN5, 1 << 5
.equ  GPIO_OUTENSET_PIN4, 1 << 4
.equ  GPIO_OUTENSET_PIN3, 1 << 3
.equ  GPIO_OUTENSET_PIN2, 1 << 2
.equ  GPIO_OUTENSET_PIN1, 1 << 1
.equ  GPIO_OUTENSET_PIN0, 1 << 0

@.item      GPIO_ALTFUNCSET
.equ  GPIO_ALTFUNCSET_PIN15, 1 << 15    @Запись  единицы
.equ  GPIO_ALTFUNCSET_PIN14, 1 << 14    @ Сбрасывает соответствующий бит n регистра OUTENSET
.equ  GPIO_ALTFUNCSET_PIN13, 1 << 13    @ запрещает управлять состоянием вывода с помощью
.equ  GPIO_ALTFUNCSET_PIN12, 1 << 12    @ соответствующего бита регистра DATAOUT
.equ  GPIO_ALTFUNCSET_PIN11, 1 << 11
.equ  GPIO_ALTFUNCSET_PIN10, 1 << 10
.equ  GPIO_ALTFUNCSET_PIN9, 1 << 9
.equ  GPIO_OUTENCLR_PIN8, 1 << 8
.equ  GPIO_OUTENCLR_PIN7, 1 << 7
.equ  GPIO_OUTENCLR_PIN6, 1 << 6
.equ  GPIO_OUTENCLR_PIN5, 1 << 5
.equ  GPIO_OUTENCLR_PIN4, 1 << 4
.equ  GPIO_OUTENCLR_PIN3, 1 << 3
.equ  GPIO_OUTENCLR_PIN2, 1 << 2
.equ  GPIO_OUTENCLR_PIN1, 1 << 1
.equ  GPIO_OUTENCLR_PIN0, 1 << 0

@.item      GPIO_ALTFUNCSET
.equ  GPIO_ALTFUNCSET_PIN15, 1 << 15    @Запись  единицы
.equ  GPIO_ALTFUNCSET_PIN14, 1 << 14    @ Включает режим альтернативной функции вывода n
.equ  GPIO_ALTFUNCSET_PIN13, 1 << 13    @ Режим альтернативной функции выводов A2 – A6 (выводы JTAG)
.equ  GPIO_ALTFUNCSET_PIN12, 1 << 12    @ порта A, которому соответствуют биты PIN2 – PIN6, включен по умолчанию.
.equ  GPIO_ALTFUNCSET_PIN11, 1 << 11
.equ  GPIO_ALTFUNCSET_PIN10, 1 << 10
.equ  GPIO_ALTFUNCSET_PIN9, 1 << 9
.equ  GPIO_ALTFUNCSET_PIN8, 1 << 8
.equ  GPIO_ALTFUNCSET_PIN7, 1 << 7
.equ  GPIO_ALTFUNCSET_PIN6, 1 << 6
.equ  GPIO_ALTFUNCSET_PIN5, 1 << 5
.equ  GPIO_ALTFUNCSET_PIN4, 1 << 4
.equ  GPIO_ALTFUNCSET_PIN3, 1 << 3
.equ  GPIO_ALTFUNCSET_PIN2, 1 << 2
.equ  GPIO_ALTFUNCSET_PIN1, 1 << 1
.equ  GPIO_ALTFUNCSET_PIN0, 1 << 0

@.item      GPIO_ALTFUNCCLR
.equ  GPIO_ALTFUNCCLR_PIN15, 1 << 15    @Запись  единицы
.equ  GPIO_ALTFUNCCLR_PIN14, 1 << 14    @Включает режим входа/выхода общего назначения
.equ  GPIO_ALTFUNCCLR_PIN13, 1 << 13
.equ  GPIO_ALTFUNCCLR_PIN12, 1 << 12
.equ  GPIO_ALTFUNCCLR_PIN11, 1 << 11
.equ  GPIO_ALTFUNCCLR_PIN10, 1 << 10
.equ  GPIO_ALTFUNCCLR_PIN9, 1 << 9
.equ  GPIO_ALTFUNCCLR_PIN8, 1 << 8
.equ  GPIO_ALTFUNCCLR_PIN7, 1 << 7
.equ  GPIO_ALTFUNCCLR_PIN6, 1 << 6
.equ  GPIO_ALTFUNCCLR_PIN5, 1 << 5
.equ  GPIO_ALTFUNCCLR_PIN4, 1 << 4
.equ  GPIO_ALTFUNCCLR_PIN3, 1 << 3
.equ  GPIO_ALTFUNCCLR_PIN2, 1 << 2
.equ  GPIO_ALTFUNCCLR_PIN1, 1 << 1
.equ  GPIO_ALTFUNCCLR_PIN0, 1 << 0

@.item     GPIO_SYNCSET
.equ  GPIO_SYNCSET_PIN15 , 1 << 15    @Запись  единицы
.equ  GPIO_SYNCSET_PIN14 , 1 << 14    @Подключает дополнительную схему для получения
.equ  GPIO_SYNCSET_PIN13 , 1 << 13    @четырехтактной синхронизации
.equ  GPIO_SYNCSET_PIN12 , 1 << 12
.equ  GPIO_SYNCSET_PIN11 , 1 << 11
.equ  GPIO_SYNCSET_PIN10 , 1 << 10
.equ  GPIO_SYNCSET_PIN9  , 1 << 9
.equ  GPIO_SYNCSET_PIN8  , 1 << 8
.equ  GPIO_SYNCSET_PIN7  , 1 << 7
.equ  GPIO_SYNCSET_PIN6  , 1 << 6
.equ  GPIO_SYNCSET_PIN5  , 1 << 5
.equ  GPIO_SYNCSET_PIN4  , 1 << 4
.equ  GPIO_SYNCSET_PIN3  , 1 << 3
.equ  GPIO_SYNCSET_PIN2  , 1 << 2
.equ  GPIO_SYNCSET_PIN1  , 1 << 1
.equ  GPIO_SYNCSET_PIN0  , 1 << 0

@.item     GPIO_SYNCCLR
.equ  GPIO_SYNCCLR_PIN15 , 1 << 15    @Запись  единицы
.equ  GPIO_SYNCCLR_PIN14 , 1 << 14    @Отключает дополнительную схему синхронизации вывода n
.equ  GPIO_SYNCCLR_PIN13 , 1 << 13
.equ  GPIO_SYNCCLR_PIN12 , 1 << 12
.equ  GPIO_SYNCCLR_PIN11 , 1 << 11
.equ  GPIO_SYNCCLR_PIN10 , 1 << 10
.equ  GPIO_SYNCCLR_PIN9  , 1 << 9
.equ  GPIO_SYNCCLR_PIN8  , 1 << 8
.equ  GPIO_SYNCCLR_PIN7  , 1 << 7
.equ  GPIO_SYNCCLR_PIN6  , 1 << 6
.equ  GPIO_SYNCCLR_PIN5  , 1 << 5
.equ  GPIO_SYNCCLR_PIN4  , 1 << 4
.equ  GPIO_SYNCCLR_PIN3  , 1 << 3
.equ  GPIO_SYNCCLR_PIN2  , 1 << 2
.equ  GPIO_SYNCCLR_PIN1  , 1 << 1
.equ  GPIO_SYNCCLR_PIN0  , 1 << 0

@.item     GPIO_QUALSET
.equ  GPIO_QUALSET_PIN15 , 1 << 15    @Запись  единицы
.equ  GPIO_QUALSET_PIN14 , 1 << 14    @Подключает входной фильтр вывода n
.equ  GPIO_QUALSET_PIN13 , 1 << 13
.equ  GPIO_QUALSET_PIN12 , 1 << 12
.equ  GPIO_QUALSET_PIN11 , 1 << 11
.equ  GPIO_QUALSET_PIN10 , 1 << 10
.equ  GPIO_QUALSET_PIN9  , 1 << 9
.equ  GPIO_QUALSET_PIN8  , 1 << 8
.equ  GPIO_QUALSET_PIN7  , 1 << 7
.equ  GPIO_QUALSET_PIN6  , 1 << 6
.equ  GPIO_QUALSET_PIN5  , 1 << 5
.equ  GPIO_QUALSET_PIN4  , 1 << 4
.equ  GPIO_QUALSET_PIN3  , 1 << 3
.equ  GPIO_QUALSET_PIN2  , 1 << 2
.equ  GPIO_QUALSET_PIN1  , 1 << 1
.equ  GPIO_QUALSET_PIN0  , 1 << 0

@.item     GPIO_QUALCLR
.equ  GPIO_QUALCLR_PIN15 , 1 << 15    @Запись  единицы
.equ  GPIO_QUALCLR_PIN14 , 1 << 14    @Отключает входной фильтр вывода n
.equ  GPIO_QUALCLR_PIN13 , 1 << 13
.equ  GPIO_QUALCLR_PIN12 , 1 << 12
.equ  GPIO_QUALCLR_PIN11 , 1 << 11
.equ  GPIO_QUALCLR_PIN10 , 1 << 10
.equ  GPIO_QUALCLR_PIN9  , 1 << 9
.equ  GPIO_QUALCLR_PIN8  , 1 << 8
.equ  GPIO_QUALCLR_PIN7  , 1 << 7
.equ  GPIO_QUALCLR_PIN6  , 1 << 6
.equ  GPIO_QUALCLR_PIN5  , 1 << 5
.equ  GPIO_QUALCLR_PIN4  , 1 << 4
.equ  GPIO_QUALCLR_PIN3  , 1 << 3
.equ  GPIO_QUALCLR_PIN2  , 1 << 2
.equ  GPIO_QUALCLR_PIN1  , 1 << 1
.equ  GPIO_QUALCLR_PIN0  , 1 << 0

@.item     GPIO_QUALMODESET
.equ  GPIO_QUALMODESET_PIN15, 1 << 15    @Запись  единицы
.equ  GPIO_QUALMODESET_PIN14, 1 << 14    @Включает режим измерения уровня сигнала на выводе n по
.equ  GPIO_QUALMODESET_PIN13, 1 << 13    @шести отсчетам
.equ  GPIO_QUALMODESET_PIN12, 1 << 12
.equ  GPIO_QUALMODESET_PIN11, 1 << 11
.equ  GPIO_QUALMODESET_PIN10, 1 << 10
.equ  GPIO_QUALMODESET_PIN9, 1 << 9
.equ  GPIO_QUALMODESET_PIN8, 1 << 8
.equ  GPIO_QUALMODESET_PIN7, 1 << 7
.equ  GPIO_QUALMODESET_PIN6, 1 << 6
.equ  GPIO_QUALMODESET_PIN5, 1 << 5
.equ  GPIO_QUALMODESET_PIN4, 1 << 4
.equ  GPIO_QUALMODESET_PIN3, 1 << 3
.equ  GPIO_QUALMODESET_PIN2, 1 << 2
.equ  GPIO_QUALMODESET_PIN1, 1 << 1
.equ  GPIO_QUALMODESET_PIN0, 1 << 0

@.item     GPIO_QUALMODECLR
.equ  GPIO_QUALMODECLR_PIN15, 1 << 15    @Запись  единицы
.equ  GPIO_QUALMODECLR_PIN14, 1 << 14    @Сбрасывает соответствующий бит n в регистре QUALMODESET
.equ  GPIO_QUALMODECLR_PIN13, 1 << 13    @и включает режим измерения уровня сигнала на выводе n по
.equ  GPIO_QUALMODECLR_PIN12, 1 << 12    @трем отсчетам
.equ  GPIO_QUALMODECLR_PIN11, 1 << 11
.equ  GPIO_QUALMODECLR_PIN10, 1 << 10
.equ  GPIO_QUALMODECLR_PIN9, 1 << 9
.equ  GPIO_QUALMODECLR_PIN8, 1 << 8
.equ  GPIO_QUALMODECLR_PIN7, 1 << 7
.equ  GPIO_QUALMODECLR_PIN6, 1 << 6
.equ  GPIO_QUALMODECLR_PIN5, 1 << 5
.equ  GPIO_QUALMODECLR_PIN4, 1 << 4
.equ  GPIO_QUALMODECLR_PIN3, 1 << 3
.equ  GPIO_QUALMODECLR_PIN2, 1 << 2
.equ  GPIO_QUALMODECLR_PIN1, 1 << 1
.equ  GPIO_QUALMODECLR_PIN0, 1 << 0


@.item     GPIO_QUALSAMPLE
.equ  GPIO_QUALSAMPLE_PERIOD_N, 0    @Биты 7-0   Временной интервал (в тактах FCLK) между отсчетами при
.equ  GPIO_QUALSAMPLE_PERIOD_M, 0x000000FF    @измерениях уровней сигналов на выводах порта.

@.item     GPIO_INTENSET
.equ  GPIO_INTENSET_PIN15, 1 << 15    @Запись  единицы
.equ  GPIO_INTENSET_PIN14, 1 << 14    @Разрешает прерывания вывода n
.equ  GPIO_INTENSET_PIN13, 1 << 13
.equ  GPIO_INTENSET_PIN12, 1 << 12
.equ  GPIO_INTENSET_PIN11, 1 << 11
.equ  GPIO_INTENSET_PIN10, 1 << 10
.equ  GPIO_INTENSET_PIN9, 1 << 9
.equ  GPIO_INTENSET_PIN8, 1 << 8
.equ  GPIO_INTENSET_PIN7, 1 << 7
.equ  GPIO_INTENSET_PIN6, 1 << 6
.equ  GPIO_INTENSET_PIN5, 1 << 5
.equ  GPIO_INTENSET_PIN4, 1 << 4
.equ  GPIO_INTENSET_PIN3, 1 << 3
.equ  GPIO_INTENSET_PIN2, 1 << 2
.equ  GPIO_INTENSET_PIN1, 1 << 1
.equ  GPIO_INTENSET_PIN0, 1 << 0

@.item     GPIO_INTENCLR
.equ  GPIO_INTENCLR_PIN15, 1 << 15    @Запись  единицы
.equ  GPIO_INTENCLR_PIN14, 1 << 14    @Сбрасывает соответствующий бит n в регистре INTENSET
.equ  GPIO_INTENCLR_PIN13, 1 << 13    @ запрещает прерывания вывода n
.equ  GPIO_INTENCLR_PIN12, 1 << 12
.equ  GPIO_INTENCLR_PIN11, 1 << 11
.equ  GPIO_INTENCLR_PIN10, 1 << 10
.equ  GPIO_INTENCLR_PIN9, 1 << 9
.equ  GPIO_INTENCLR_PIN8, 1 << 8
.equ  GPIO_INTENCLR_PIN7, 1 << 7
.equ  GPIO_INTENCLR_PIN6, 1 << 6
.equ  GPIO_INTENCLR_PIN5, 1 << 5
.equ  GPIO_INTENCLR_PIN4, 1 << 4
.equ  GPIO_INTENCLR_PIN3, 1 << 3
.equ  GPIO_INTENCLR_PIN2, 1 << 2
.equ  GPIO_INTENCLR_PIN1, 1 << 1
.equ  GPIO_INTENCLR_PIN0, 1 << 0

@.item     GPIO_INTTYPESET
.equ  GPIO_INTTYPESET_PIN15, 1 << 15    @Запись  единицы
.equ  GPIO_INTTYPESET_PIN14, 1 << 14    @Выбирает прерывания по фронту сигнала на выводе n
.equ  GPIO_INTTYPESET_PIN13, 1 << 13    @
.equ  GPIO_INTTYPESET_PIN12, 1 << 12
.equ  GPIO_INTTYPESET_PIN11, 1 << 11
.equ  GPIO_INTTYPESET_PIN10, 1 << 10
.equ  GPIO_INTTYPESET_PIN9, 1 << 9
.equ  GPIO_INTTYPESET_PIN8, 1 << 8
.equ  GPIO_INTTYPESET_PIN7, 1 << 7
.equ  GPIO_INTTYPESET_PIN6, 1 << 6
.equ  GPIO_INTTYPESET_PIN5, 1 << 5
.equ  GPIO_INTTYPESET_PIN4, 1 << 4
.equ  GPIO_INTTYPESET_PIN3, 1 << 3
.equ  GPIO_INTTYPESET_PIN2, 1 << 2
.equ  GPIO_INTTYPESET_PIN1, 1 << 1
.equ  GPIO_INTTYPESET_PIN0, 1 << 0

@.item     GPIO_INTTYPECLR
.equ  GPIO_INTTYPECLR_PIN15, 1 << 15    @Запись  единицы
.equ  GPIO_INTTYPECLR_PIN14, 1 << 14    @Сбрасывает соответствующий бит n в регистре INTTYPESET и
.equ  GPIO_INTTYPECLR_PIN13, 1 << 13    @выбирает прерывания по уровню сигнала на выводе n
.equ  GPIO_INTTYPECLR_PIN12, 1 << 12
.equ  GPIO_INTTYPECLR_PIN11, 1 << 11
.equ  GPIO_INTTYPECLR_PIN10, 1 << 10
.equ  GPIO_INTTYPECLR_PIN9, 1 << 9
.equ  GPIO_INTTYPECLR_PIN8, 1 << 8
.equ  GPIO_INTTYPECLR_PIN7, 1 << 7
.equ  GPIO_INTTYPECLR_PIN6, 1 << 6
.equ  GPIO_INTTYPECLR_PIN5, 1 << 5
.equ  GPIO_INTTYPECLR_PIN4, 1 << 4
.equ  GPIO_INTTYPECLR_PIN3, 1 << 3
.equ  GPIO_INTTYPECLR_PIN2, 1 << 2
.equ  GPIO_INTTYPECLR_PIN1, 1 << 1
.equ  GPIO_INTTYPECLR_PIN0, 1 << 0

@.item     GPIO_INTPOLSET
.equ  GPIO_INTPOLSET_PIN15, 1 << 15    @Запись  единицы
.equ  GPIO_INTPOLSET_PIN14, 1 << 14    @Выбирает прерывания по высокому уровню или
.equ  GPIO_INTPOLSET_PIN13, 1 << 13    @положительному фронту
.equ  GPIO_INTPOLSET_PIN12, 1 << 12
.equ  GPIO_INTPOLSET_PIN11, 1 << 11
.equ  GPIO_INTPOLSET_PIN10, 1 << 10
.equ  GPIO_INTPOLSET_PIN9, 1 << 9
.equ  GPIO_INTPOLSET_PIN8, 1 << 8
.equ  GPIO_INTPOLSET_PIN7, 1 << 7
.equ  GPIO_INTPOLSET_PIN6, 1 << 6
.equ  GPIO_INTPOLSET_PIN5, 1 << 5
.equ  GPIO_INTPOLSET_PIN4, 1 << 4
.equ  GPIO_INTPOLSET_PIN3, 1 << 3
.equ  GPIO_INTPOLSET_PIN2, 1 << 2
.equ  GPIO_INTPOLSET_PIN1, 1 << 1
.equ  GPIO_INTPOLSET_PIN0, 1 << 0

@.item     GPIO_INTPOLCLR
.equ  GPIO_INTPOLCLR_PIN15, 1 << 15    @Запись  единицы
.equ  GPIO_INTPOLCLR_PIN14, 1 << 14    @Сбрасывает соответствующий бит n в регистре INTPOLCLR и
.equ  GPIO_INTPOLCLR_PIN13, 1 << 13    @выбирает прерывания по низкому уровню или отрицательному фронту
.equ  GPIO_INTPOLCLR_PIN12, 1 << 12
.equ  GPIO_INTPOLCLR_PIN11, 1 << 11
.equ  GPIO_INTPOLCLR_PIN10, 1 << 10
.equ  GPIO_INTPOLCLR_PIN9, 1 << 9
.equ  GPIO_INTPOLCLR_PIN8, 1 << 8
.equ  GPIO_INTPOLCLR_PIN7, 1 << 7
.equ  GPIO_INTPOLCLR_PIN6, 1 << 6
.equ  GPIO_INTPOLCLR_PIN5, 1 << 5
.equ  GPIO_INTPOLCLR_PIN4, 1 << 4
.equ  GPIO_INTPOLCLR_PIN3, 1 << 3
.equ  GPIO_INTPOLCLR_PIN2, 1 << 2
.equ  GPIO_INTPOLCLR_PIN1, 1 << 1
.equ  GPIO_INTPOLCLR_PIN0, 1 << 0

@.item     GPIO_INTEDGESET
.equ  GPIO_INTEDGESET_PIN15, 1 << 15    @Запись  единицы
.equ  GPIO_INTEDGESET_PIN14, 1 << 14    @Разрешает прерывания по любому фронту сигнала на выводе n
.equ  GPIO_INTEDGESET_PIN13, 1 << 13
.equ  GPIO_INTEDGESET_PIN12, 1 << 12
.equ  GPIO_INTEDGESET_PIN11, 1 << 11
.equ  GPIO_INTEDGESET_PIN10, 1 << 10
.equ  GPIO_INTEDGESET_PIN9, 1 << 9
.equ  GPIO_INTEDGESET_PIN8, 1 << 8
.equ  GPIO_INTEDGESET_PIN7, 1 << 7
.equ  GPIO_INTEDGESET_PIN6, 1 << 6
.equ  GPIO_INTEDGESET_PIN5, 1 << 5
.equ  GPIO_INTEDGESET_PIN4, 1 << 4
.equ  GPIO_INTEDGESET_PIN3, 1 << 3
.equ  GPIO_INTEDGESET_PIN2, 1 << 2
.equ  GPIO_INTEDGESET_PIN1, 1 << 1
.equ  GPIO_INTEDGESET_PIN0, 1 << 0

@.item     GPIO_NTEDGECLR
.equ  GPIO_NTEDGECLR_PIN15, 1 << 15    @Запись  единицы
.equ  GPIO_NTEDGECLR_PIN14, 1 << 14    @Сбрасывает соответствующий бит n в регистре INTEDGESET и
.equ  GPIO_NTEDGECLR_PIN13, 1 << 13    @запрещает прерывания по любому фронту сигнала на выводе n
.equ  GPIO_NTEDGECLR_PIN12, 1 << 12
.equ  GPIO_NTEDGECLR_PIN11, 1 << 11
.equ  GPIO_NTEDGECLR_PIN10, 1 << 10
.equ  GPIO_NTEDGECLR_PIN9, 1 << 9
.equ  GPIO_NTEDGECLR_PIN8, 1 << 8
.equ  GPIO_NTEDGECLR_PIN7, 1 << 7
.equ  GPIO_NTEDGECLR_PIN6, 1 << 6
.equ  GPIO_NTEDGECLR_PIN5, 1 << 5
.equ  GPIO_NTEDGECLR_PIN4, 1 << 4
.equ  GPIO_NTEDGECLR_PIN3, 1 << 3
.equ  GPIO_NTEDGECLR_PIN2, 1 << 2
.equ  GPIO_NTEDGECLR_PIN1, 1 << 1
.equ  GPIO_NTEDGECLR_PIN0, 1 << 0

@.item     GPIO_INTSTATUS
.equ  GPIO_INTSTATUS_PIN15, 1 << 15    @Запись  единицы
.equ  GPIO_INTSTATUS_PIN14, 1 << 14    @Обнуляет бит PINn и таким образом сбрасывает флаг
.equ  GPIO_INTSTATUS_PIN13, 1 << 13    @прерывания, если он был установлен
.equ  GPIO_INTSTATUS_PIN12, 1 << 12
.equ  GPIO_INTSTATUS_PIN11, 1 << 11
.equ  GPIO_INTSTATUS_PIN10, 1 << 10
.equ  GPIO_INTSTATUS_PIN9, 1 << 9
.equ  GPIO_INTSTATUS_PIN8, 1 << 8
.equ  GPIO_INTSTATUS_PIN7, 1 << 7
.equ  GPIO_INTSTATUS_PIN6, 1 << 6
.equ  GPIO_INTSTATUS_PIN5, 1 << 5
.equ  GPIO_INTSTATUS_PIN4, 1 << 4
.equ  GPIO_INTSTATUS_PIN3, 1 << 3
.equ  GPIO_INTSTATUS_PIN2, 1 << 2
.equ  GPIO_INTSTATUS_PIN1, 1 << 1
.equ  GPIO_INTSTATUS_PIN0, 1 << 0

@.item     GPIO_DMAREQSET
.equ  GPIO_DMAREQSET_PIN15, 1 << 15    @Запись  единицы
.equ  GPIO_DMAREQSET_PIN14, 1 << 14    @Разрешает генерирование запросов DMA по прерыванию
.equ  GPIO_DMAREQSET_PIN13, 1 << 13    @вывода n (в том числе немаскированному)
.equ  GPIO_DMAREQSET_PIN12, 1 << 12
.equ  GPIO_DMAREQSET_PIN11, 1 << 11
.equ  GPIO_DMAREQSET_PIN10, 1 << 10
.equ  GPIO_DMAREQSET_PIN9, 1 << 9
.equ  GPIO_DMAREQSET_PIN8, 1 << 8
.equ  GPIO_DMAREQSET_PIN7, 1 << 7
.equ  GPIO_DMAREQSET_PIN6, 1 << 6
.equ  GPIO_DMAREQSET_PIN5, 1 << 5
.equ  GPIO_DMAREQSET_PIN4, 1 << 4
.equ  GPIO_DMAREQSET_PIN3, 1 << 3
.equ  GPIO_DMAREQSET_PIN2, 1 << 2
.equ  GPIO_DMAREQSET_PIN1, 1 << 1
.equ  GPIO_DMAREQSET_PIN0, 1 << 0

@.item     GPIO_DMAREQCLR
.equ  GPIO_DMAREQCLR_PIN15, 1 << 15    @Запись  единицы
.equ  GPIO_DMAREQCLR_PIN14, 1 << 14    @Сбрасывает соответствующий бит n в регистре DMAREQSET и
.equ  GPIO_DMAREQCLR_PIN13, 1 << 13    @запрещает генерирование запросов DMA по прерыванию вывода n
.equ  GPIO_DMAREQCLR_PIN12, 1 << 12
.equ  GPIO_DMAREQCLR_PIN11, 1 << 11
.equ  GPIO_DMAREQCLR_PIN10, 1 << 10
.equ  GPIO_DMAREQCLR_PIN9, 1 << 9
.equ  GPIO_DMAREQCLR_PIN8, 1 << 8
.equ  GPIO_DMAREQCLR_PIN7, 1 << 7
.equ  GPIO_DMAREQCLR_PIN6, 1 << 6
.equ  GPIO_DMAREQCLR_PIN5, 1 << 5
.equ  GPIO_DMAREQCLR_PIN4, 1 << 4
.equ  GPIO_DMAREQCLR_PIN3, 1 << 3
.equ  GPIO_DMAREQCLR_PIN2, 1 << 2
.equ  GPIO_DMAREQCLR_PIN1, 1 << 1
.equ  GPIO_DMAREQCLR_PIN0, 1 << 0

@.item     GPIO_ADCSOCSET
.equ  GPIO_ADCSOCSET_PIN15, 1 << 15    @Запись  единицы
.equ  GPIO_ADCSOCSET_PIN14, 1 << 14    @Разрешает генерирование запросов начала преобразования АЦП
.equ  GPIO_ADCSOCSET_PIN13, 1 << 13    @по прерыванию вывода n (в том числе немаскированному)
.equ  GPIO_ADCSOCSET_PIN12, 1 << 12
.equ  GPIO_ADCSOCSET_PIN11, 1 << 11
.equ  GPIO_ADCSOCSET_PIN10, 1 << 10
.equ  GPIO_ADCSOCSET_PIN9, 1 << 9
.equ  GPIO_ADCSOCSET_PIN8, 1 << 8
.equ  GPIO_ADCSOCSET_PIN7, 1 << 7
.equ  GPIO_ADCSOCSET_PIN6, 1 << 6
.equ  GPIO_ADCSOCSET_PIN5, 1 << 5
.equ  GPIO_ADCSOCSET_PIN4, 1 << 4
.equ  GPIO_ADCSOCSET_PIN3, 1 << 3
.equ  GPIO_ADCSOCSET_PIN2, 1 << 2
.equ  GPIO_ADCSOCSET_PIN1, 1 << 1
.equ  GPIO_ADCSOCSET_PIN0, 1 << 0

@.item     GPIO_ADCSOCCLR
.equ  GPIO_ADCSOCCLR_PIN15, 1 << 15    @Запись  единицы
.equ  GPIO_ADCSOCCLR_PIN14, 1 << 14    @Сбрасывает соответствующий бит n в регистре ADCSOCSET и
.equ  GPIO_ADCSOCCLR_PIN13, 1 << 13    @запрещает генерирование запросов АЦП по прерыванию вывода n
.equ  GPIO_ADCSOCCLR_PIN12, 1 << 12
.equ  GPIO_ADCSOCCLR_PIN11, 1 << 11
.equ  GPIO_ADCSOCCLR_PIN10, 1 << 10
.equ  GPIO_ADCSOCCLR_PIN9, 1 << 9
.equ  GPIO_ADCSOCCLR_PIN8, 1 << 8
.equ  GPIO_ADCSOCCLR_PIN7, 1 << 7
.equ  GPIO_ADCSOCCLR_PIN6, 1 << 6
.equ  GPIO_ADCSOCCLR_PIN5, 1 << 5
.equ  GPIO_ADCSOCCLR_PIN4, 1 << 4
.equ  GPIO_ADCSOCCLR_PIN3, 1 << 3
.equ  GPIO_ADCSOCCLR_PIN2, 1 << 2
.equ  GPIO_ADCSOCCLR_PIN1, 1 << 1
.equ  GPIO_ADCSOCCLR_PIN0, 1 << 0

@.item     GPIO_RXEVSET
.equ  GPIO_RXEVSET_PIN15, 1 << 15    @Запись  единицы
.equ  GPIO_RXEVSET_PIN14, 1 << 14    @Разрешает генерирование запросов RXEV к ядру по
.equ  GPIO_RXEVSET_PIN13, 1 << 13    @прерыванию вывода n (в том числе немаскированному)
.equ  GPIO_RXEVSET_PIN12, 1 << 12
.equ  GPIO_RXEVSET_PIN11, 1 << 11
.equ  GPIO_RXEVSET_PIN10, 1 << 10
.equ  GPIO_RXEVSET_PIN9, 1 << 9
.equ  GPIO_RXEVSET_PIN8, 1 << 8
.equ  GPIO_RXEVSET_PIN7, 1 << 7
.equ  GPIO_RXEVSET_PIN6, 1 << 6
.equ  GPIO_RXEVSET_PIN5, 1 << 5
.equ  GPIO_RXEVSET_PIN4, 1 << 4
.equ  GPIO_RXEVSET_PIN3, 1 << 3
.equ  GPIO_RXEVSET_PIN2, 1 << 2
.equ  GPIO_RXEVSET_PIN1, 1 << 1
.equ  GPIO_RXEVSET_PIN0, 1 << 0

@.item     GPIO_RXEVCLR
.equ  GPIO_RXEVCLR_PIN15 , 1 << 15    @Запись  единицы
.equ  GPIO_RXEVCLR_PIN14 , 1 << 14    @Сбрасывает соответствующий бит n в регистре RXEVSET и
.equ  GPIO_RXEVCLR_PIN13 , 1 << 13    @запрещает генерирование запросов RXEV к ядру по
.equ  GPIO_RXEVCLR_PIN12 , 1 << 12    @прерыванию вывода n
.equ  GPIO_RXEVCLR_PIN11 , 1 << 11
.equ  GPIO_RXEVCLR_PIN10 , 1 << 10
.equ  GPIO_RXEVCLR_PIN9  , 1 << 9
.equ  GPIO_RXEVCLR_PIN8  , 1 << 8
.equ  GPIO_RXEVCLR_PIN7  , 1 << 7
.equ  GPIO_RXEVCLR_PIN6  , 1 << 6
.equ  GPIO_RXEVCLR_PIN5  , 1 << 5
.equ  GPIO_RXEVCLR_PIN4  , 1 << 4
.equ  GPIO_RXEVCLR_PIN3  , 1 << 3
.equ  GPIO_RXEVCLR_PIN2  , 1 << 2
.equ  GPIO_RXEVCLR_PIN1  , 1 << 1
.equ  GPIO_RXEVCLR_PIN0  , 1 << 0

@.item     GPIO_LOCKKEY
.equ  GPIO_LOCKKEY_VAL_N , 0    @Биты 31 0   Значение ключа – ADEADBEEh   Разрешает доступ к регистрам
.equ  GPIO_LOCKKEY_VAL_M , 0xFFFFFFFF    @Запись любого значения
                                         @Блокирует доступ к регистрам LOCKSET и
                                         @LOCKCLR

@.item     GPIO_LOCKSTAT
.equ  GPIO_LOCKSTAT_WREN_N, 0    @Бит 0   Индикатор доступа регистров LOCKSET и LOCKCLR для записи
.equ  GPIO_LOCKSTAT_WREN_M, 1 << 0   @1  Разрешено

@.item     GPIO_LOCKSET
.equ  GPIO_LOCKSET_PIN15 , 1 << 15    @Запись  единицы
.equ  GPIO_LOCKSET_PIN14 , 1 << 14    @Блокирует изменение конфигурации вывода n.
.equ  GPIO_LOCKSET_PIN13 , 1 << 13    @Исключения:
.equ  GPIO_LOCKSET_PIN12 , 1 << 12    @регистр флагов прерываний INTSTATUS ; QUALSAMPLE
.equ  GPIO_LOCKSET_PIN11 , 1 << 11
.equ  GPIO_LOCKSET_PIN10 , 1 << 10
.equ  GPIO_LOCKSET_PIN9  , 1 << 9
.equ  GPIO_LOCKSET_PIN8  , 1 << 8
.equ  GPIO_LOCKSET_PIN7  , 1 << 7
.equ  GPIO_LOCKSET_PIN6  , 1 << 6
.equ  GPIO_LOCKSET_PIN5  , 1 << 5
.equ  GPIO_LOCKSET_PIN4  , 1 << 4
.equ  GPIO_LOCKSET_PIN3  , 1 << 3
.equ  GPIO_LOCKSET_PIN2  , 1 << 2
.equ  GPIO_LOCKSET_PIN1  , 1 << 1
.equ  GPIO_LOCKSET_PIN0  , 1 << 0

@.item     GPIO_LOCKCLR
.equ  GPIO_LOCKCLR_PIN15 , 1 << 15    @Запись  единицы
.equ  GPIO_LOCKCLR_PIN14 , 1 << 14    @Сбрасывает соответствующий бит n в регистре
.equ  GPIO_LOCKCLR_PIN13 , 1 << 13    @LOCKSET и разрешает изменения конфигурации
.equ  GPIO_LOCKCLR_PIN12 , 1 << 12    @вывода n
.equ  GPIO_LOCKCLR_PIN11 , 1 << 11
.equ  GPIO_LOCKCLR_PIN10 , 1 << 10
.equ  GPIO_LOCKCLR_PIN9  , 1 << 9
.equ  GPIO_LOCKCLR_PIN8  , 1 << 8
.equ  GPIO_LOCKCLR_PIN7  , 1 << 7
.equ  GPIO_LOCKCLR_PIN6  , 1 << 6
.equ  GPIO_LOCKCLR_PIN5  , 1 << 5
.equ  GPIO_LOCKCLR_PIN4  , 1 << 4
.equ  GPIO_LOCKCLR_PIN3  , 1 << 3
.equ  GPIO_LOCKCLR_PIN2  , 1 << 2
.equ  GPIO_LOCKCLR_PIN1  , 1 << 1
.equ  GPIO_LOCKCLR_PIN0  , 1 << 0

@.item     GPIO_MASKLB
.equ  GPIO_MASKLB_VAL_N  , 0    @Биты 7-0  Доступ по маске для младших восьми бит порта
.equ  GPIO_MASKLB_VAL_M  , 0x000000FF

@.item     GPIO_MASKHB
.equ  GPIO_MASKHB_VAL_N  , 8    @Биты 15-8 Доступ по маске для старших восьми бит порта
.equ  GPIO_MASKHB_VAL_M  , 0x0000FF00



