Перейти к содержанию

Регистры SYSCFG STM32L1

Регистры SYSCFG STM32L1: режим загрузки и память по адресу 0, подтяжка линии DP интерфейса USB, внешние конденсаторы ЖК-индикатора и выбор порта для линий EXTI0–EXTI15.

SYSCFG_MEMRMP показывает режим загрузки по выводам BOOT и отображает с адреса 0 флеш-память, системную память, внешнюю память FSMC (у устройств с FSMC) или SRAM. SYSCFG_PMC включает внутреннюю подтяжку линии DP интерфейса USB — без неё хост не увидит устройство — и подключает внешние конденсаторы шин питания ЖК-индикатора (RM0038, раздел 8.5).

Регистры EXTICR1–EXTICR4 выбирают порт для каждой линии EXTI0–EXTI15. Тактирование SYSCFG — бит SYSCFGEN в RCC_APB2ENR. Блок RI (маршрутизация аналоговых сигналов и сенсорных кнопок) на этой странице не показан.

ЭкземплярБазовый адресЕсть у
SYSCFG0x4001 0000всех

Регистры блока

РегистрСмещениеНазначениеПосле сброса
SYSCFG_MEMRMP0x00Режим загрузки и отображение памяти0x0000 00XX (X — память, выбранная выводами BOOT)
SYSCFG_PMC0x04Подтяжка USB и конденсаторы ЖК-индикатора0x0000 0000
SYSCFG_EXTICR10x08Источники линий EXTI0–EXTI30x0000
SYSCFG_EXTICR20x0CИсточники линий EXTI4–EXTI70x0000
SYSCFG_EXTICR30x10Источники линий EXTI8–EXTI110x0000
SYSCFG_EXTICR40x14Источники линий EXTI12–EXTI150x0000

Конструктор значения

Выберите регистр и значения полей — конструктор покажет 32-битное значение и строку на C с макросами CMSIS. Поля, которые вы не меняете, берутся из значения после сброса.

Значение: 0x00000000

0000 0000 0000 0000 0000 0000 0000 0000

SYSCFG->MEMRMP = 0x00000000;

SYSCFG_MEMRMP — режим загрузки и отображение памяти

Смещение 0x00, адрес 0x4001 0000, 32 бит, после сброса 0x0000 00XX (X — память, выбранная выводами BOOT). В коде: SYSCFG->MEMRMP.

31302928272625242322212019181716
—
1514131211109876543210
—BOOT_MODE—MEM_MODE
  • BOOT_MODE (биты 9:8) — Режим загрузки, выбранный выводами BOOT при сбросе (только чтение).
    BOOT_MODEЗначение
    00Загрузка из основной флеш-памяти
    01Загрузка из системной памяти
    11Загрузка из SRAM
  • MEM_MODE (биты 1:0) — Память, отображаемая с адреса 0x0000 0000.
    MEM_MODEЗначение
    00Основная флеш-память
    01Системная память (загрузчик)
    10Внешняя память FSMC
    11Встроенная SRAM

SYSCFG_PMC — подтяжка USB и конденсаторы ЖК-индикатора

Смещение 0x04, адрес 0x4001 0004, 32 бит, после сброса 0x0000 0000. В коде: SYSCFG->PMC.

31302928272625242322212019181716
—
1514131211109876543210
—LCD_CAPAUSB_PU
  • LCD_CAPA (биты 5:1) — Подключение внешних конденсаторов шин питания ЖК-индикатора к выводам LCD_VCAP (только у STM32L100, STM32L152, STM32L162).
  • USB_PU (бит 0) — Внутренняя подтяжка линии DP интерфейса USB.

SYSCFG_EXTICR1 — источники линий EXTI0–EXTI3

Смещение 0x08, адрес 0x4001 0008, 32 бит, после сброса 0x0000. В коде: SYSCFG->EXTICR[0].

31302928272625242322212019181716
—
1514131211109876543210
EXTI3EXTI2EXTI1EXTI0
  • EXTI3 (биты 15:12) — Порт, вывод 3 которого подключён к линии EXTI3.
    EXTI3ЗначениеМакрос CMSIS
    0000Порт A (PA3)SYSCFG_EXTICR1_EXTI3_PA
    0001Порт B (PB3)SYSCFG_EXTICR1_EXTI3_PB
    0010Порт C (PC3)SYSCFG_EXTICR1_EXTI3_PC
    0011Порт D (PD3)SYSCFG_EXTICR1_EXTI3_PD
    0100Порт E (PE3)SYSCFG_EXTICR1_EXTI3_PE
    0110Порт F (PF3) (только у STM32L100xC, STM32L151xC/xCA/xD/xDX/xE, STM32L152xC/xCA/xD/xDX/xE, STM32L162)SYSCFG_EXTICR1_EXTI3_PF
    0111Порт G (PG3) (только у STM32L100xC, STM32L151xC/xCA/xD/xDX/xE, STM32L152xC/xCA/xD/xDX/xE, STM32L162)SYSCFG_EXTICR1_EXTI3_PG
  • EXTI2 (биты 11:8) — Порт, вывод 2 которого подключён к линии EXTI2.
    EXTI2ЗначениеМакрос CMSIS
    0000Порт A (PA2)SYSCFG_EXTICR1_EXTI2_PA
    0001Порт B (PB2)SYSCFG_EXTICR1_EXTI2_PB
    0010Порт C (PC2)SYSCFG_EXTICR1_EXTI2_PC
    0011Порт D (PD2)SYSCFG_EXTICR1_EXTI2_PD
    0100Порт E (PE2)SYSCFG_EXTICR1_EXTI2_PE
    0101Порт H (PH2)SYSCFG_EXTICR1_EXTI2_PH
    0110Порт F (PF2) (только у STM32L100xC, STM32L151xC/xCA/xD/xDX/xE, STM32L152xC/xCA/xD/xDX/xE, STM32L162)SYSCFG_EXTICR1_EXTI2_PF
    0111Порт G (PG2) (только у STM32L100xC, STM32L151xC/xCA/xD/xDX/xE, STM32L152xC/xCA/xD/xDX/xE, STM32L162)SYSCFG_EXTICR1_EXTI2_PG
  • EXTI1 (биты 7:4) — Порт, вывод 1 которого подключён к линии EXTI1.
    EXTI1ЗначениеМакрос CMSIS
    0000Порт A (PA1)SYSCFG_EXTICR1_EXTI1_PA
    0001Порт B (PB1)SYSCFG_EXTICR1_EXTI1_PB
    0010Порт C (PC1)SYSCFG_EXTICR1_EXTI1_PC
    0011Порт D (PD1)SYSCFG_EXTICR1_EXTI1_PD
    0100Порт E (PE1)SYSCFG_EXTICR1_EXTI1_PE
    0101Порт H (PH1)SYSCFG_EXTICR1_EXTI1_PH
    0110Порт F (PF1) (только у STM32L100xC, STM32L151xC/xCA/xD/xDX/xE, STM32L152xC/xCA/xD/xDX/xE, STM32L162)SYSCFG_EXTICR1_EXTI1_PF
    0111Порт G (PG1) (только у STM32L100xC, STM32L151xC/xCA/xD/xDX/xE, STM32L152xC/xCA/xD/xDX/xE, STM32L162)SYSCFG_EXTICR1_EXTI1_PG
  • EXTI0 (биты 3:0) — Порт, вывод 0 которого подключён к линии EXTI0.
    EXTI0ЗначениеМакрос CMSIS
    0000Порт A (PA0)SYSCFG_EXTICR1_EXTI0_PA
    0001Порт B (PB0)SYSCFG_EXTICR1_EXTI0_PB
    0010Порт C (PC0)SYSCFG_EXTICR1_EXTI0_PC
    0011Порт D (PD0)SYSCFG_EXTICR1_EXTI0_PD
    0100Порт E (PE0)SYSCFG_EXTICR1_EXTI0_PE
    0101Порт H (PH0)SYSCFG_EXTICR1_EXTI0_PH
    0110Порт F (PF0) (только у STM32L100xC, STM32L151xC/xCA/xD/xDX/xE, STM32L152xC/xCA/xD/xDX/xE, STM32L162)SYSCFG_EXTICR1_EXTI0_PF
    0111Порт G (PG0) (только у STM32L100xC, STM32L151xC/xCA/xD/xDX/xE, STM32L152xC/xCA/xD/xDX/xE, STM32L162)SYSCFG_EXTICR1_EXTI0_PG

SYSCFG_EXTICR2 — источники линий EXTI4–EXTI7

Смещение 0x0C, адрес 0x4001 000C, 32 бит, после сброса 0x0000. В коде: SYSCFG->EXTICR[1].

31302928272625242322212019181716
—
1514131211109876543210
EXTI7EXTI6EXTI5EXTI4
  • EXTI7 (биты 15:12) — Порт, вывод 7 которого подключён к линии EXTI7.
    EXTI7ЗначениеМакрос CMSIS
    0000Порт A (PA7)SYSCFG_EXTICR2_EXTI7_PA
    0001Порт B (PB7)SYSCFG_EXTICR2_EXTI7_PB
    0010Порт C (PC7)SYSCFG_EXTICR2_EXTI7_PC
    0011Порт D (PD7)SYSCFG_EXTICR2_EXTI7_PD
    0100Порт E (PE7)SYSCFG_EXTICR2_EXTI7_PE
    0110Порт F (PF7) (только у STM32L100xC, STM32L151xC/xCA/xD/xDX/xE, STM32L152xC/xCA/xD/xDX/xE, STM32L162)SYSCFG_EXTICR2_EXTI7_PF
    0111Порт G (PG7) (только у STM32L100xC, STM32L151xC/xCA/xD/xDX/xE, STM32L152xC/xCA/xD/xDX/xE, STM32L162)SYSCFG_EXTICR2_EXTI7_PG
  • EXTI6 (биты 11:8) — Порт, вывод 6 которого подключён к линии EXTI6.
    EXTI6ЗначениеМакрос CMSIS
    0000Порт A (PA6)SYSCFG_EXTICR2_EXTI6_PA
    0001Порт B (PB6)SYSCFG_EXTICR2_EXTI6_PB
    0010Порт C (PC6)SYSCFG_EXTICR2_EXTI6_PC
    0011Порт D (PD6)SYSCFG_EXTICR2_EXTI6_PD
    0100Порт E (PE6)SYSCFG_EXTICR2_EXTI6_PE
    0110Порт F (PF6) (только у STM32L100xC, STM32L151xC/xCA/xD/xDX/xE, STM32L152xC/xCA/xD/xDX/xE, STM32L162)SYSCFG_EXTICR2_EXTI6_PF
    0111Порт G (PG6) (только у STM32L100xC, STM32L151xC/xCA/xD/xDX/xE, STM32L152xC/xCA/xD/xDX/xE, STM32L162)SYSCFG_EXTICR2_EXTI6_PG
  • EXTI5 (биты 7:4) — Порт, вывод 5 которого подключён к линии EXTI5.
    EXTI5ЗначениеМакрос CMSIS
    0000Порт A (PA5)SYSCFG_EXTICR2_EXTI5_PA
    0001Порт B (PB5)SYSCFG_EXTICR2_EXTI5_PB
    0010Порт C (PC5)SYSCFG_EXTICR2_EXTI5_PC
    0011Порт D (PD5)SYSCFG_EXTICR2_EXTI5_PD
    0100Порт E (PE5)SYSCFG_EXTICR2_EXTI5_PE
    0110Порт F (PF5) (только у STM32L100xC, STM32L151xC/xCA/xD/xDX/xE, STM32L152xC/xCA/xD/xDX/xE, STM32L162)SYSCFG_EXTICR2_EXTI5_PF
    0111Порт G (PG5) (только у STM32L100xC, STM32L151xC/xCA/xD/xDX/xE, STM32L152xC/xCA/xD/xDX/xE, STM32L162)SYSCFG_EXTICR2_EXTI5_PG
  • EXTI4 (биты 3:0) — Порт, вывод 4 которого подключён к линии EXTI4.
    EXTI4ЗначениеМакрос CMSIS
    0000Порт A (PA4)SYSCFG_EXTICR2_EXTI4_PA
    0001Порт B (PB4)SYSCFG_EXTICR2_EXTI4_PB
    0010Порт C (PC4)SYSCFG_EXTICR2_EXTI4_PC
    0011Порт D (PD4)SYSCFG_EXTICR2_EXTI4_PD
    0100Порт E (PE4)SYSCFG_EXTICR2_EXTI4_PE
    0110Порт F (PF4) (только у STM32L100xC, STM32L151xC/xCA/xD/xDX/xE, STM32L152xC/xCA/xD/xDX/xE, STM32L162)SYSCFG_EXTICR2_EXTI4_PF
    0111Порт G (PG4) (только у STM32L100xC, STM32L151xC/xCA/xD/xDX/xE, STM32L152xC/xCA/xD/xDX/xE, STM32L162)SYSCFG_EXTICR2_EXTI4_PG

SYSCFG_EXTICR3 — источники линий EXTI8–EXTI11

Смещение 0x10, адрес 0x4001 0010, 32 бит, после сброса 0x0000. В коде: SYSCFG->EXTICR[2].

31302928272625242322212019181716
—
1514131211109876543210
EXTI11EXTI10EXTI9EXTI8
  • EXTI11 (биты 15:12) — Порт, вывод 11 которого подключён к линии EXTI11.
    EXTI11ЗначениеМакрос CMSIS
    0000Порт A (PA11)SYSCFG_EXTICR3_EXTI11_PA
    0001Порт B (PB11)SYSCFG_EXTICR3_EXTI11_PB
    0010Порт C (PC11)SYSCFG_EXTICR3_EXTI11_PC
    0011Порт D (PD11)SYSCFG_EXTICR3_EXTI11_PD
    0100Порт E (PE11)SYSCFG_EXTICR3_EXTI11_PE
    0110Порт F (PF11) (только у STM32L100xC, STM32L151xC/xCA/xD/xDX/xE, STM32L152xC/xCA/xD/xDX/xE, STM32L162)SYSCFG_EXTICR3_EXTI11_PF
    0111Порт G (PG11) (только у STM32L100xC, STM32L151xC/xCA/xD/xDX/xE, STM32L152xC/xCA/xD/xDX/xE, STM32L162)SYSCFG_EXTICR3_EXTI11_PG
  • EXTI10 (биты 11:8) — Порт, вывод 10 которого подключён к линии EXTI10.
    EXTI10ЗначениеМакрос CMSIS
    0000Порт A (PA10)SYSCFG_EXTICR3_EXTI10_PA
    0001Порт B (PB10)SYSCFG_EXTICR3_EXTI10_PB
    0010Порт C (PC10)SYSCFG_EXTICR3_EXTI10_PC
    0011Порт D (PD10)SYSCFG_EXTICR3_EXTI10_PD
    0100Порт E (PE10)SYSCFG_EXTICR3_EXTI10_PE
    0110Порт F (PF10) (только у STM32L100xC, STM32L151xC/xCA/xD/xDX/xE, STM32L152xC/xCA/xD/xDX/xE, STM32L162)SYSCFG_EXTICR3_EXTI10_PF
    0111Порт G (PG10) (только у STM32L100xC, STM32L151xC/xCA/xD/xDX/xE, STM32L152xC/xCA/xD/xDX/xE, STM32L162)SYSCFG_EXTICR3_EXTI10_PG
  • EXTI9 (биты 7:4) — Порт, вывод 9 которого подключён к линии EXTI9.
    EXTI9ЗначениеМакрос CMSIS
    0000Порт A (PA9)SYSCFG_EXTICR3_EXTI9_PA
    0001Порт B (PB9)SYSCFG_EXTICR3_EXTI9_PB
    0010Порт C (PC9)SYSCFG_EXTICR3_EXTI9_PC
    0011Порт D (PD9)SYSCFG_EXTICR3_EXTI9_PD
    0100Порт E (PE9)SYSCFG_EXTICR3_EXTI9_PE
    0110Порт F (PF9) (только у STM32L100xC, STM32L151xC/xCA/xD/xDX/xE, STM32L152xC/xCA/xD/xDX/xE, STM32L162)SYSCFG_EXTICR3_EXTI9_PF
    0111Порт G (PG9) (только у STM32L100xC, STM32L151xC/xCA/xD/xDX/xE, STM32L152xC/xCA/xD/xDX/xE, STM32L162)SYSCFG_EXTICR3_EXTI9_PG
  • EXTI8 (биты 3:0) — Порт, вывод 8 которого подключён к линии EXTI8.
    EXTI8ЗначениеМакрос CMSIS
    0000Порт A (PA8)SYSCFG_EXTICR3_EXTI8_PA
    0001Порт B (PB8)SYSCFG_EXTICR3_EXTI8_PB
    0010Порт C (PC8)SYSCFG_EXTICR3_EXTI8_PC
    0011Порт D (PD8)SYSCFG_EXTICR3_EXTI8_PD
    0100Порт E (PE8)SYSCFG_EXTICR3_EXTI8_PE
    0110Порт F (PF8) (только у STM32L100xC, STM32L151xC/xCA/xD/xDX/xE, STM32L152xC/xCA/xD/xDX/xE, STM32L162)SYSCFG_EXTICR3_EXTI8_PF
    0111Порт G (PG8) (только у STM32L100xC, STM32L151xC/xCA/xD/xDX/xE, STM32L152xC/xCA/xD/xDX/xE, STM32L162)SYSCFG_EXTICR3_EXTI8_PG

SYSCFG_EXTICR4 — источники линий EXTI12–EXTI15

Смещение 0x14, адрес 0x4001 0014, 32 бит, после сброса 0x0000. В коде: SYSCFG->EXTICR[3].

31302928272625242322212019181716
—
1514131211109876543210
EXTI15EXTI14EXTI13EXTI12
  • EXTI15 (биты 15:12) — Порт, вывод 15 которого подключён к линии EXTI15.
    EXTI15ЗначениеМакрос CMSIS
    0000Порт A (PA15)SYSCFG_EXTICR4_EXTI15_PA
    0001Порт B (PB15)SYSCFG_EXTICR4_EXTI15_PB
    0010Порт C (PC15)SYSCFG_EXTICR4_EXTI15_PC
    0011Порт D (PD15)SYSCFG_EXTICR4_EXTI15_PD
    0100Порт E (PE15)SYSCFG_EXTICR4_EXTI15_PE
    0110Порт F (PF15) (только у STM32L100xC, STM32L151xC/xCA/xD/xDX/xE, STM32L152xC/xCA/xD/xDX/xE, STM32L162)SYSCFG_EXTICR4_EXTI15_PF
    0111Порт G (PG15) (только у STM32L100xC, STM32L151xC/xCA/xD/xDX/xE, STM32L152xC/xCA/xD/xDX/xE, STM32L162)SYSCFG_EXTICR4_EXTI15_PG
  • EXTI14 (биты 11:8) — Порт, вывод 14 которого подключён к линии EXTI14.
    EXTI14ЗначениеМакрос CMSIS
    0000Порт A (PA14)SYSCFG_EXTICR4_EXTI14_PA
    0001Порт B (PB14)SYSCFG_EXTICR4_EXTI14_PB
    0010Порт C (PC14)SYSCFG_EXTICR4_EXTI14_PC
    0011Порт D (PD14)SYSCFG_EXTICR4_EXTI14_PD
    0100Порт E (PE14)SYSCFG_EXTICR4_EXTI14_PE
    0110Порт F (PF14) (только у STM32L100xC, STM32L151xC/xCA/xD/xDX/xE, STM32L152xC/xCA/xD/xDX/xE, STM32L162)SYSCFG_EXTICR4_EXTI14_PF
    0111Порт G (PG14) (только у STM32L100xC, STM32L151xC/xCA/xD/xDX/xE, STM32L152xC/xCA/xD/xDX/xE, STM32L162)SYSCFG_EXTICR4_EXTI14_PG
  • EXTI13 (биты 7:4) — Порт, вывод 13 которого подключён к линии EXTI13.
    EXTI13ЗначениеМакрос CMSIS
    0000Порт A (PA13)SYSCFG_EXTICR4_EXTI13_PA
    0001Порт B (PB13)SYSCFG_EXTICR4_EXTI13_PB
    0010Порт C (PC13)SYSCFG_EXTICR4_EXTI13_PC
    0011Порт D (PD13)SYSCFG_EXTICR4_EXTI13_PD
    0100Порт E (PE13)SYSCFG_EXTICR4_EXTI13_PE
    0110Порт F (PF13) (только у STM32L100xC, STM32L151xC/xCA/xD/xDX/xE, STM32L152xC/xCA/xD/xDX/xE, STM32L162)SYSCFG_EXTICR4_EXTI13_PF
    0111Порт G (PG13) (только у STM32L100xC, STM32L151xC/xCA/xD/xDX/xE, STM32L152xC/xCA/xD/xDX/xE, STM32L162)SYSCFG_EXTICR4_EXTI13_PG
  • EXTI12 (биты 3:0) — Порт, вывод 12 которого подключён к линии EXTI12.
    EXTI12ЗначениеМакрос CMSIS
    0000Порт A (PA12)SYSCFG_EXTICR4_EXTI12_PA
    0001Порт B (PB12)SYSCFG_EXTICR4_EXTI12_PB
    0010Порт C (PC12)SYSCFG_EXTICR4_EXTI12_PC
    0011Порт D (PD12)SYSCFG_EXTICR4_EXTI12_PD
    0100Порт E (PE12)SYSCFG_EXTICR4_EXTI12_PE
    0110Порт F (PF12) (только у STM32L100xC, STM32L151xC/xCA/xD/xDX/xE, STM32L152xC/xCA/xD/xDX/xE, STM32L162)SYSCFG_EXTICR4_EXTI12_PF
    0111Порт G (PG12) (только у STM32L100xC, STM32L151xC/xCA/xD/xDX/xE, STM32L152xC/xCA/xD/xDX/xE, STM32L162)SYSCFG_EXTICR4_EXTI12_PG

Частые вопросы

Почему компьютер не видит USB-устройство на STM32L1?

У STM32L1 подтягивающий резистор линии DP встроенный и включается программно: установите SYSCFG->PMC |= SYSCFG_PMC_USB_PU после инициализации USB. Без подтяжки хост не обнаруживает подключение.

Источники

  1. STMicroelectronics. RM0038: Reference manual (Rev 18) — раздел 8.5: описание регистров, назначение полей и значения после сброса
  2. STMicroelectronics. cmsis-device-l1 v2.3.4: заголовки CMSIS stm32l100xb.h, stm32l100xba.h, stm32l100xc.h, stm32l151xb.h, stm32l151xba.h, stm32l151xc.h, stm32l151xca.h, stm32l151xd.h, stm32l151xdx.h, stm32l151xe.h, stm32l152xb.h, stm32l152xba.h, stm32l152xc.h, stm32l152xca.h, stm32l152xd.h, stm32l152xdx.h, stm32l152xe.h, stm32l162xc.h, stm32l162xca.h, stm32l162xd.h, stm32l162xdx.h, stm32l162xe.h — структуры периферии, смещения, адреса экземпляров и макросы полей; лицензия Apache-2.0

Нашли ошибку в регистрах? ·

Другие регистры STM32L1

Калькуляторы и статьи