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

Регистры АЦП STM32F3

Регистры АЦП STM32F3: регулятор напряжения и калибровка, включение, регулярная последовательность до 16 каналов и инжектированная до 4, время выборки, смещения, три аналоговых сторожа, дифференциальные входы, DMA и двойной режим пар ADC1/ADC2 и ADC3/ADC4.

АЦП STM32F3 — другой блок, чем у STM32F0 и F1: 12-битный, до 5 млн выборок в секунду, с регулярной группой (SQR1–SQR4, результат в DR) и инжектированной (JSQR, результаты в JDR1–JDR4) и очередью контекстов JSQR. Перед работой включается регулятор напряжения ADVREGEN (переход через состояние 00, затем пауза tADCVREG_STUP), выполняется калибровка ADCAL отдельно для несимметричных и дифференциальных входов, и только потом ADEN (RM0316, раздел 15.5).

Пары ADC1/ADC2 и ADC3/ADC4 имеют общие регистры ADC_CSR, ADC_CCR и ADC_CDR (по смещению 0x300 от ведущего): двойной режим, внутренние каналы VREFINT, датчик температуры и VBAT, тактирование CKMODE — асинхронно от PLL (делитель ADCPRE в RCC_CFGR2) или синхронно от HCLK. У STM32F303x6/x8 и F328 АЦП два, у остальных четыре.

ЭкземплярБазовый адресЕсть у
ADC10x5000 0000всех
ADC20x5000 0100всех
ADC30x5000 0400STM32F303xC/xE, STM32F358, STM32F398
ADC40x5000 0500STM32F303xC/xE, STM32F358, STM32F398
ADC12_COMMON0x5000 0300всех
ADC34_COMMON0x5000 0700STM32F303xC/xE, STM32F358, STM32F398

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

РегистрСмещениеНазначениеПосле сброса
ADC_ISR0x00Флаги состояния и прерываний0x0000 0000
ADC_IER0x04Разрешение прерываний0x0000 0000
ADC_CR0x08Регулятор, калибровка, включение, запуск и остановка0x2000 0000
ADC_CFGR0x0CРежимы преобразования, внешний запуск, разрядность, DMA, сторож 10x0000 0000 (в описании регистра напечатано 0x0000 00000; значение — по карте регистров на с. 417)
ADC_SMPR10x14Время выборки каналов 0–90x0000 0000
ADC_SMPR20x18Время выборки каналов 10–180x0000 0000
ADC_TR10x20Пороги аналогового сторожа 10x0FFF 0000
ADC_TR20x24Пороги аналогового сторожа 20x00FF 0000
ADC_TR30x28Пороги аналогового сторожа 30x00FF 0000
ADC_SQR10x30Длина регулярной последовательности и каналы 1–40x0000 0000
ADC_SQR20x34Регулярная последовательность: каналы 5–90x0000 0000
ADC_SQR30x38Регулярная последовательность: каналы 10–140x0000 0000
ADC_SQR40x3CРегулярная последовательность: каналы 15–160x0000 0000
ADC_DR0x40Результат регулярного преобразования0x0000 0000
ADC_JSQR0x4CИнжектированная последовательность и её запуск0x0000 0000
ADC_OFR10x60Смещение 10x0000 0000
ADC_OFR20x64Смещение 20x0000 0000
ADC_OFR30x68Смещение 30x0000 0000
ADC_OFR40x6CСмещение 40x0000 0000
ADC_JDR10x80Результат инжектированного канала 10x0000 0000
ADC_JDR20x84Результат инжектированного канала 20x0000 0000
ADC_JDR30x88Результат инжектированного канала 30x0000 0000
ADC_JDR40x8CРезультат инжектированного канала 40x0000 0000
ADC_AWD2CR0xA0Каналы аналогового сторожа 20x0000 0000
ADC_AWD3CR0xA4Каналы аналогового сторожа 30x0000 0000
ADC_DIFSEL0xB0Дифференциальные входы0x0000 0000
ADC_CALFACT0xB4Калибровочные коэффициенты0x0000 0000
ADC_CSR0x00Флаги ведущего и ведомого АЦП пары0x0000 0000
ADC_CCR0x08Общие настройки: двойной режим, тактирование, внутренние каналы0x0000 0000
ADC_CDR0x0CРезультаты пары АЦП в двойном режиме0x0000 0000

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

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

Значение: 0x00000000

0000 0000 0000 0000 0000 0000 0000 0000

ADC1->ISR = 0x00000000;

ADC_ISR — флаги состояния и прерываний

Смещение 0x00, 32 бит, после сброса 0x0000 0000. В коде: ADC1->ISR.

31302928272625242322212019181716
—
1514131211109876543210
—JQOVFAWD3AWD2AWD1JEOSJEOCOVREOSEOCEOSMPADRDY
  • JQOVF (бит 10) — Переполнение очереди контекстов инжектированной группы (JSQR).
  • AWD1–AWD3 (по биту на каждый y, положение — на карте битов) — Сработал аналоговый сторож y.
  • JEOS (бит 6) — Окончание инжектированной последовательности.
  • JEOC (бит 5) — Окончание инжектированного преобразования.
  • OVR (бит 4) — Переполнение: новый результат, а DR не прочитан.
  • EOS (бит 3) — Окончание регулярной последовательности.
  • EOC (бит 2) — Окончание регулярного преобразования; сбрасывается чтением DR.
  • EOSMP (бит 1) — Окончание выборки регулярного канала.
  • ADRDY (бит 0) — АЦП готов к преобразованиям.

ADC_IER — разрешение прерываний

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

31302928272625242322212019181716
—
1514131211109876543210
—JQOVFIEAWD3IEAWD2IEAWD1IEJEOSIEJEOCIEOVRIEEOSIEEOCIEEOSMPIEADRDYIE
  • JQOVFIE (бит 10) — Прерывание по переполнению очереди контекстов инжектированной группы (JSQR).
  • AWD3IE (бит 9) — Прерывание аналогового сторожа 3.
  • AWD2IE (бит 8) — Прерывание аналогового сторожа 2.
  • AWD1IE (бит 7) — Прерывание аналогового сторожа 1.
  • JEOSIE (бит 6) — Прерывание по окончании инжектированной последовательности.
  • JEOCIE (бит 5) — Прерывание по окончании инжектированного преобразования.
  • OVRIE (бит 4) — Прерывание по переполнению.
  • EOSIE (бит 3) — Прерывание по окончании регулярной последовательности.
  • EOCIE (бит 2) — Прерывание по окончании регулярного преобразования.
  • EOSMPIE (бит 1) — Прерывание по окончании выборки регулярного канала.
  • ADRDYIE (бит 0) — Прерывание: АЦП готов к преобразованиям.

ADC_CR — регулятор, калибровка, включение, запуск и остановка

Смещение 0x08, 32 бит, после сброса 0x2000 0000. В коде: ADC1->CR.

31302928272625242322212019181716
ADCALADCALDIFADVREGEN—
1514131211109876543210
—JADSTPADSTPJADSTARTADSTARTADDISADEN
  • ADCAL (бит 31) — Запуск калибровки; сбрасывается по окончании. АЦП должен быть выключен.
  • ADCALDIF (бит 30) — Калибровка для дифференциальных (1) или несимметричных (0) входов.
  • ADVREGEN (биты 29:28) — Регулятор напряжения АЦП: 01 — включён, 10 — выключен; переход идёт через 00. После включения — пауза tADCVREG_STUP.
  • JADSTP (бит 5) — Остановка инжектированных преобразований.
  • ADSTP (бит 4) — Остановка регулярных преобразований.
  • JADSTART (бит 3) — Запуск инжектированных преобразований (или ожидание триггера).
  • ADSTART (бит 2) — Запуск регулярных преобразований (или ожидание триггера).
  • ADDIS (бит 1) — Выключение АЦП.
  • ADEN (бит 0) — Включение АЦП; готовность — флаг ADRDY.

ADC_CFGR — режимы преобразования, внешний запуск, разрядность, DMA, сторож 1

Смещение 0x0C, 32 бит, после сброса 0x0000 0000 (в описании регистра напечатано 0x0000 00000; значение — по карте регистров на с. 417). В коде: ADC1->CFGR.

31302928272625242322212019181716
—AWD1CHJAUTOJAWD1ENAWD1ENAWD1SGLJQMJDISCENDISCNUMDISCEN
1514131211109876543210
—AUTDLYCONTOVRMODEXTENEXTSELALIGNRES—DMACFGDMAEN
  • AWD1CH (биты 30:26) — Канал аналогового сторожа 1 при AWD1SGL = 1.
  • JAUTO (бит 25) — Автоматический запуск инжектированной группы после регулярной.
  • JAWD1EN (бит 24) — Сторож 1 следит за инжектированными каналами.
  • AWD1EN (бит 23) — Сторож 1 следит за регулярными каналами.
  • AWD1SGL (бит 22) — Сторож 1 следит за одним каналом (AWD1CH) или за всеми.
  • JQM (бит 21) — Режим очереди JSQR: при пустой очереди ждать триггер (0) или выключить инжектированную группу (1).
  • JDISCEN (бит 20) — Прерывистый режим инжектированной группы: по каналу на каждый триггер.
  • DISCNUM (биты 19:17) — Число регулярных каналов на один триггер в прерывистом режиме: 1…8.
  • DISCEN (бит 16) — Прерывистый режим регулярной группы.
  • AUTDLY (бит 14) — Автозадержка: следующее преобразование ждёт чтения результата.
  • CONT (бит 13) — Непрерывное преобразование регулярной группы.
  • OVRMOD (бит 12) — При переполнении: сохранить старый результат (0) или записать новый (1).
  • EXTEN (биты 11:10) — Внешний запуск регулярной группы: выключен, по нарастающему, спадающему или обоим фронтам.
  • EXTSEL (биты 9:6) — Источник внешнего запуска регулярной группы (таблица триггеров в RM0316).
  • ALIGN (бит 5) — Выравнивание результата: вправо или влево.
  • RES (биты 4:3) — Разрядность: 12, 10, 8 или 6 бит.
  • DMACFG (бит 1) — DMA: однократный (0) или циклический (1) режим.
  • DMAEN (бит 0) — Запрос DMA после каждого регулярного преобразования.

ADC_SMPR1 — время выборки каналов 0–9

Смещение 0x14, 32 бит, после сброса 0x0000 0000. В коде: ADC1->SMPR1.

31302928272625242322212019181716
—SMP9SMP8SMP7SMP6SMP5
1514131211109876543210
SMP5SMP4SMP3SMP2SMP1SMP0
  • SMP0–SMP9 (по 3 бита на каждый y, положение — на карте битов) — Время выборки канала y: 1,5…601,5 такта АЦП.
  • SMP5 (биты 17:15) — Время выборки канала 5: 1,5…601,5 такта АЦП.
  • SMP1 (биты 5:3) — Время выборки канала 1: 1,5…601,5 такта АЦП.

ADC_SMPR2 — время выборки каналов 10–18

Смещение 0x18, 32 бит, после сброса 0x0000 0000. В коде: ADC1->SMPR2.

31302928272625242322212019181716
—SMP18SMP17SMP16SMP15
1514131211109876543210
SMP15SMP14SMP13SMP12SMP11SMP10
  • SMP10–SMP18 (по 3 бита на каждый y, положение — на карте битов) — Время выборки канала y: 1,5…601,5 такта АЦП.

ADC_TR1 — пороги аналогового сторожа 1

Смещение 0x20, 32 бит, после сброса 0x0FFF 0000. В коде: ADC1->TR1.

31302928272625242322212019181716
—HT1
1514131211109876543210
—LT1
  • HT1 (биты 27:16) — Верхний порог аналогового сторожа 1 (12 бит).
  • LT1 (биты 11:0) — Нижний порог аналогового сторожа 1 (12 бит).

ADC_TR2 — пороги аналогового сторожа 2

Смещение 0x24, 32 бит, после сброса 0x00FF 0000. В коде: ADC1->TR2.

31302928272625242322212019181716
—HT2
1514131211109876543210
—LT2
  • HT2 (биты 23:16) — Верхний порог аналогового сторожа 2 (старшие 8 бит результата).
  • LT2 (биты 7:0) — Нижний порог аналогового сторожа 2 (старшие 8 бит результата).

ADC_TR3 — пороги аналогового сторожа 3

Смещение 0x28, 32 бит, после сброса 0x00FF 0000. В коде: ADC1->TR3.

31302928272625242322212019181716
—HT3
1514131211109876543210
—LT3
  • HT3 (биты 23:16) — Верхний порог аналогового сторожа 3 (старшие 8 бит результата).
  • LT3 (биты 7:0) — Нижний порог аналогового сторожа 3 (старшие 8 бит результата).

ADC_SQR1 — длина регулярной последовательности и каналы 1–4

Смещение 0x30, 32 бит, после сброса 0x0000 0000. В коде: ADC1->SQR1.

31302928272625242322212019181716
—SQ4—SQ3—SQ2
1514131211109876543210
SQ2—SQ1—L
  • SQ1–SQ4 (по 5 бита на каждый y, положение — на карте битов) — Номер канала на y-м месте регулярной последовательности.
  • L (биты 3:0) — Длина регулярной последовательности: 1…16 каналов (записывается L − 1).

ADC_SQR2 — регулярная последовательность: каналы 5–9

Смещение 0x34, 32 бит, после сброса 0x0000 0000. В коде: ADC1->SQR2.

31302928272625242322212019181716
—SQ9—SQ8—SQ7
1514131211109876543210
SQ7—SQ6—SQ5
  • SQ5–SQ9 (по 5 бита на каждый y, положение — на карте битов) — Номер канала на y-м месте регулярной последовательности.

ADC_SQR3 — регулярная последовательность: каналы 10–14

Смещение 0x38, 32 бит, после сброса 0x0000 0000. В коде: ADC1->SQR3.

31302928272625242322212019181716
—SQ14—SQ13—SQ12
1514131211109876543210
SQ12—SQ11—SQ10
  • SQ10–SQ14 (по 5 бита на каждый y, положение — на карте битов) — Номер канала на y-м месте регулярной последовательности.

ADC_SQR4 — регулярная последовательность: каналы 15–16

Смещение 0x3C, 32 бит, после сброса 0x0000 0000. В коде: ADC1->SQR4.

31302928272625242322212019181716
—
1514131211109876543210
—SQ16—SQ15
  • SQ16 (биты 10:6) — Номер канала на 16-м месте регулярной последовательности.
  • SQ15 (биты 4:0) — Номер канала на 15-м месте регулярной последовательности.

ADC_DR — результат регулярного преобразования

Смещение 0x40, 32 бит, после сброса 0x0000 0000. В коде: ADC1->DR.

31302928272625242322212019181716
—
1514131211109876543210
RDATA
  • RDATA (биты 15:0) — Результат регулярного преобразования.

ADC_JSQR — инжектированная последовательность и её запуск

Смещение 0x4C, 32 бит, после сброса 0x0000 0000. В коде: ADC1->JSQR.

31302928272625242322212019181716
—JSQ4—JSQ3—JSQ2
1514131211109876543210
JSQ2—JSQ1JEXTENJEXTSELJL
  • JSQ1–JSQ4 (по 5 бита на каждый y, положение — на карте битов) — Номер канала на y-м месте инжектированной последовательности.
  • JEXTEN (биты 7:6) — Внешний запуск инжектированной группы: выключен, по нарастающему, спадающему или обоим фронтам.
  • JEXTSEL (биты 5:2) — Источник внешнего запуска инжектированной группы (таблица триггеров в RM0316).
  • JL (биты 1:0) — Длина инжектированной последовательности: 1…4 канала (записывается JL − 1).

ADC_OFR1 — смещение 1

Смещение 0x60, 32 бит, после сброса 0x0000 0000. В коде: ADC1->OFR1.

31302928272625242322212019181716
OFFSET1_ENOFFSET1_CH—
1514131211109876543210
—OFFSET1
  • OFFSET1_EN (бит 31) — Включение смещения 1.
  • OFFSET1_CH (биты 30:26) — Канал, к которому применяется смещение 1.
  • OFFSET1 (биты 11:0) — Значение смещения 1: вычитается из результата канала.

ADC_OFR2 — смещение 2

Смещение 0x64, 32 бит, после сброса 0x0000 0000. В коде: ADC1->OFR2.

31302928272625242322212019181716
OFFSET2_ENOFFSET2_CH—
1514131211109876543210
—OFFSET2
  • OFFSET2_EN (бит 31) — Включение смещения 2.
  • OFFSET2_CH (биты 30:26) — Канал, к которому применяется смещение 2.
  • OFFSET2 (биты 11:0) — Значение смещения 2: вычитается из результата канала.

ADC_OFR3 — смещение 3

Смещение 0x68, 32 бит, после сброса 0x0000 0000. В коде: ADC1->OFR3.

31302928272625242322212019181716
OFFSET3_ENOFFSET3_CH—
1514131211109876543210
—OFFSET3
  • OFFSET3_EN (бит 31) — Включение смещения 3.
  • OFFSET3_CH (биты 30:26) — Канал, к которому применяется смещение 3.
  • OFFSET3 (биты 11:0) — Значение смещения 3: вычитается из результата канала.

ADC_OFR4 — смещение 4

Смещение 0x6C, 32 бит, после сброса 0x0000 0000. В коде: ADC1->OFR4.

31302928272625242322212019181716
OFFSET4_ENOFFSET4_CH—
1514131211109876543210
—OFFSET4
  • OFFSET4_EN (бит 31) — Включение смещения 4.
  • OFFSET4_CH (биты 30:26) — Канал, к которому применяется смещение 4.
  • OFFSET4 (биты 11:0) — Значение смещения 4: вычитается из результата канала.

ADC_JDR1 — результат инжектированного канала 1

Смещение 0x80, 32 бит, после сброса 0x0000 0000. В коде: ADC1->JDR1.

31302928272625242322212019181716
—
1514131211109876543210
JDATA
  • JDATA (биты 15:0) — Результат инжектированного преобразования.

ADC_JDR2 — результат инжектированного канала 2

Смещение 0x84, 32 бит, после сброса 0x0000 0000. В коде: ADC1->JDR2.

31302928272625242322212019181716
—
1514131211109876543210
JDATA
  • JDATA (биты 15:0) — Результат инжектированного преобразования.

ADC_JDR3 — результат инжектированного канала 3

Смещение 0x88, 32 бит, после сброса 0x0000 0000. В коде: ADC1->JDR3.

31302928272625242322212019181716
—
1514131211109876543210
JDATA
  • JDATA (биты 15:0) — Результат инжектированного преобразования.

ADC_JDR4 — результат инжектированного канала 4

Смещение 0x8C, 32 бит, после сброса 0x0000 0000. В коде: ADC1->JDR4.

31302928272625242322212019181716
—
1514131211109876543210
JDATA
  • JDATA (биты 15:0) — Результат инжектированного преобразования.

ADC_AWD2CR — каналы аналогового сторожа 2

Смещение 0xA0, 32 бит, после сброса 0x0000 0000. В коде: ADC1->AWD2CR.

31302928272625242322212019181716
—AWD2CH
1514131211109876543210
AWD2CH—
  • AWD2CH (биты 18:1) — Каналы аналогового сторожа 2: по биту на канал.

ADC_AWD3CR — каналы аналогового сторожа 3

Смещение 0xA4, 32 бит, после сброса 0x0000 0000. В коде: ADC1->AWD3CR.

31302928272625242322212019181716
—AWD3CH
1514131211109876543210
AWD3CH—
  • AWD3CH (биты 18:1) — Каналы аналогового сторожа 3: по биту на канал.

ADC_DIFSEL — дифференциальные входы

Смещение 0xB0, 32 бит, после сброса 0x0000 0000. В коде: ADC1->DIFSEL.

31302928272625242322212019181716
—DIFSEL
1514131211109876543210
DIFSEL—
  • DIFSEL (биты 18:1) — Дифференциальный режим каналов: по биту на канал.

ADC_CALFACT — калибровочные коэффициенты

Смещение 0xB4, 32 бит, после сброса 0x0000 0000. В коде: ADC1->CALFACT.

31302928272625242322212019181716
—CALFACT_D
1514131211109876543210
—CALFACT_S
  • CALFACT_D (биты 22:16) — Калибровочный коэффициент дифференциального режима.
  • CALFACT_S (биты 6:0) — Калибровочный коэффициент несимметричного режима.

ADC_CSR — флаги ведущего и ведомого АЦП пары

Смещение 0x00, 32 бит, после сброса 0x0000 0000. В коде: ADC12_COMMON->CSR.

31302928272625242322212019181716
—JQOVF_SLVAWD3_SLVAWD2_SLVAWD1_SLVJEOS_SLVJEOC_SLVOVR_SLVEOS_SLVEOC_SLVEOSMP_SLVADRDY_SLV
1514131211109876543210
—JQOVF_MSTAWD3_MSTAWD2_MSTAWD1_MSTJEOS_MSTJEOC_MSTOVR_MSTEOS_MSTEOC_MSTEOSMP_MSTADRDY_MST
  • JQOVF_SLV (бит 26) — Копия флага JQOVF ведомого АЦП пары (только чтение).
  • AWD3_SLV (бит 25) — Копия флага AWD3 ведомого АЦП пары (только чтение).
  • AWD2_SLV (бит 24) — Копия флага AWD2 ведомого АЦП пары (только чтение).
  • AWD1_SLV (бит 23) — Копия флага AWD1 ведомого АЦП пары (только чтение).
  • JEOS_SLV (бит 22) — Копия флага JEOS ведомого АЦП пары (только чтение).
  • JEOC_SLV (бит 21) — Копия флага JEOC ведомого АЦП пары (только чтение).
  • OVR_SLV (бит 20) — Копия флага OVR ведомого АЦП пары (только чтение).
  • EOS_SLV (бит 19) — Копия флага EOS ведомого АЦП пары (только чтение).
  • EOC_SLV (бит 18) — Копия флага EOC ведомого АЦП пары (только чтение).
  • EOSMP_SLV (бит 17) — Копия флага EOSMP ведомого АЦП пары (только чтение).
  • ADRDY_SLV (бит 16) — Копия флага ADRDY ведомого АЦП пары (только чтение).
  • JQOVF_MST (бит 10) — Копия флага JQOVF ведущего АЦП пары (только чтение).
  • AWD3_MST (бит 9) — Копия флага AWD3 ведущего АЦП пары (только чтение).
  • AWD2_MST (бит 8) — Копия флага AWD2 ведущего АЦП пары (только чтение).
  • AWD1_MST (бит 7) — Копия флага AWD1 ведущего АЦП пары (только чтение).
  • JEOS_MST (бит 6) — Копия флага JEOS ведущего АЦП пары (только чтение).
  • JEOC_MST (бит 5) — Копия флага JEOC ведущего АЦП пары (только чтение).
  • OVR_MST (бит 4) — Копия флага OVR ведущего АЦП пары (только чтение).
  • EOS_MST (бит 3) — Копия флага EOS ведущего АЦП пары (только чтение).
  • EOC_MST (бит 2) — Копия флага EOC ведущего АЦП пары (только чтение).
  • EOSMP_MST (бит 1) — Копия флага EOSMP ведущего АЦП пары (только чтение).
  • ADRDY_MST (бит 0) — Копия флага ADRDY ведущего АЦП пары (только чтение).

ADC_CCR — общие настройки: двойной режим, тактирование, внутренние каналы

Смещение 0x08, 32 бит, после сброса 0x0000 0000. В коде: ADC12_COMMON->CCR.

31302928272625242322212019181716
—VBATENTSENVREFEN—CKMODE
1514131211109876543210
MDMADMACFG—DELAY—DUAL
  • VBATEN (бит 24) — Внутренний канал VBAT / 3.
  • TSEN (бит 23) — Внутренний канал датчика температуры.
  • VREFEN (бит 22) — Внутренний канал опорного напряжения VREFINT.
  • CKMODE (биты 17:16) — Тактирование: асинхронный такт из RCC (00) или синхронный HCLK / 1, / 2, / 4.
  • MDMA (биты 15:14) — DMA в двойном режиме: выключен, 12/10 бит или 8/6 бит.
  • DMACFG (бит 13) — DMA: однократный (0) или циклический (1) режим.
  • DELAY (биты 11:8) — Задержка между выборками ведущего и ведомого АЦП в чередующемся режиме.
  • DUAL (биты 4:0) — Режим пары АЦП: независимый, одновременный, чередующийся, поочерёдный запуск.

ADC_CDR — результаты пары АЦП в двойном режиме

Смещение 0x0C, 32 бит, после сброса 0x0000 0000. В коде: ADC12_COMMON->CDR.

31302928272625242322212019181716
RDATA_SLV
1514131211109876543210
RDATA_MST
  • RDATA_SLV (биты 31:16) — Результат ведомого АЦП в двойном режиме.
  • RDATA_MST (биты 15:0) — Результат ведущего АЦП в двойном режиме.

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

Почему АЦП STM32F303 не включается после ADEN?

Сначала нужен регулятор: ADVREGEN = 00, затем 01 и пауза около 10 мкс. Затем калибровка — ADCAL = 1 при ADEN = 0 — и ожидание её конца. Только после этого ADEN = 1 и ожидание флага ADRDY.

Чем инжектированная группа отличается от регулярной?

Инжектированная группа (до 4 каналов) прерывает регулярную по своему триггеру и кладёт результаты в отдельные регистры JDR1–JDR4. Её удобно запускать от таймера в момент середины ШИМ, а регулярную группу оставить для медленных измерений.

Источники

  1. STMicroelectronics. RM0316: Reference manual (Rev 10) — раздел 15.5–15.6: описание регистров, назначение полей и значения после сброса
  2. STMicroelectronics. cmsis-device-f3 v2.3.9: заголовки CMSIS stm32f303x8.h, stm32f303xc.h, stm32f303xe.h, stm32f328xx.h, stm32f358xx.h, stm32f398xx.h — структуры периферии, смещения, адреса экземпляров и макросы полей; лицензия Apache-2.0

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

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

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