ra8-firmware 0.1.0
Bare-metal firmware for the Renesas RA8 family (RA8D2 / RA8P1)
Loading...
Searching...
No Matches
ra8_adc_b_regs.h
Go to the documentation of this file.
1
63
64#pragma once
65
66#ifdef __cplusplus
67extern "C" {
68#endif
69
70#include <stdint.h>
71
72#include "ra8_attributes.h"
73
78typedef enum : uintptr_t {
79 k_ra8_adc_b_base_addr = 0x40338000UL,
81
105
140
145typedef enum : uint8_t {
148
153typedef enum : uint32_t {
156
161typedef enum : uint32_t {
164
175typedef enum : uint8_t {
179
184typedef enum : uint32_t {
185 k_ra8_admdr_mask_admd0 = 0x0000000FUL,
186 k_ra8_admdr_mask_admd1 = 0x00000F00UL,
188
205
226
231typedef enum : uint32_t {
232 k_ra8_adchcr_mask_sgsel = 0x0000001FUL,
233 k_ra8_adchcr_mask_cnvcs = 0x00007F00UL,
234 k_ra8_adchcr_mask_ainmd = 0x00008000UL,
237
251
275
280typedef enum : uint8_t {
283
288typedef enum : uint8_t {
291
296typedef enum : uint32_t {
299
316
325
330typedef enum : uint32_t {
334
349
363
368typedef enum : uint8_t {
372
377typedef enum : uint32_t {
378 k_ra8_adexdr_mask_data = 0x0000FFFFUL,
380 k_ra8_adexdr_mask_err = 0x80000000UL,
382
387typedef enum : uint32_t {
388 k_ra8_adsger_mask_sgren = 0x000001FFUL,
390
395typedef enum : uint32_t {
398
403typedef enum : uint32_t {
404 k_ra8_adstr_mask_adst = 0x00000001UL,
406
417
422typedef enum : uint32_t {
423 k_ra8_adsr_mask_adact0 = 0x00000001UL,
424 k_ra8_adsr_mask_adact1 = 0x00000002UL,
425 k_ra8_adsr_mask_adact = 0x00000003UL,
426 k_ra8_adsr_mask_calact0 = 0x00010000UL,
427 k_ra8_adsr_mask_calact1 = 0x00020000UL,
429
434typedef enum : uint32_t {
438
443typedef enum : uint32_t {
444 k_ra8_addr_mask_data = 0x0000FFFFUL,
445 k_ra8_addr_mask_err = 0x80000000UL,
447
452typedef enum : uint32_t {
455
460typedef enum : uint32_t {
463
472
477typedef enum : uint32_t {
478 k_ra8_adcmptbr_mask_low = 0x0000FFFFUL,
481
492
506
521
526typedef enum : uint32_t {
528 k_ra8_addopcrb_mask_adc = 0x00000F00UL,
531
536typedef enum : uint8_t {
541
554
560static inline volatile uint32_t* ra8_adc_b_adclkenr(void)
561{
562 return (volatile uint32_t*)((uintptr_t)k_ra8_adc_b_base_addr +
563 (uintptr_t)k_ra8_adc_b_off_adclkenr);
564}
565
571static inline volatile uint32_t* ra8_adc_b_adclksr(void)
572{
573 return (volatile uint32_t*)((uintptr_t)k_ra8_adc_b_base_addr +
574 (uintptr_t)k_ra8_adc_b_off_adclksr);
575}
576
582static inline volatile uint32_t* ra8_adc_b_adclkcr(void)
583{
584 return (volatile uint32_t*)((uintptr_t)k_ra8_adc_b_base_addr +
585 (uintptr_t)k_ra8_adc_b_off_adclkcr);
586}
587
593static inline volatile uint32_t* ra8_adc_b_admdr(void)
594{
595 return (volatile uint32_t*)((uintptr_t)k_ra8_adc_b_base_addr + (uintptr_t)k_ra8_adc_b_off_admdr);
596}
597
603static inline volatile uint32_t* ra8_adc_b_adsger(void)
604{
605 return (volatile uint32_t*)((uintptr_t)k_ra8_adc_b_base_addr + (uintptr_t)k_ra8_adc_b_off_adsger);
606}
607
613static inline volatile uint32_t* ra8_adc_b_adintcr(void)
614{
615 return (volatile uint32_t*)((uintptr_t)k_ra8_adc_b_base_addr +
616 (uintptr_t)k_ra8_adc_b_off_adintcr);
617}
618
624static inline volatile uint32_t* ra8_adc_b_adsystr(void)
625{
626 return (volatile uint32_t*)((uintptr_t)k_ra8_adc_b_base_addr +
627 (uintptr_t)k_ra8_adc_b_off_adsystr);
628}
629
635static inline volatile uint32_t* ra8_adc_b_adstopr(void)
636{
637 return (volatile uint32_t*)((uintptr_t)k_ra8_adc_b_base_addr +
638 (uintptr_t)k_ra8_adc_b_off_adstopr);
639}
640
646static inline volatile uint32_t* ra8_adc_b_adsr(void)
647{
648 return (volatile uint32_t*)((uintptr_t)k_ra8_adc_b_base_addr + (uintptr_t)k_ra8_adc_b_off_adsr);
649}
650
658static inline volatile uint32_t* ra8_adc_b_adchcr(uint8_t ch)
659{
660 if (ch >= k_ra8_adc_b_max_channels) {
661 return nullptr;
662 }
663 return (volatile uint32_t*)((uintptr_t)k_ra8_adc_b_base_addr +
664 (uintptr_t)k_ra8_adc_b_off_adchcr0 +
665 ((uintptr_t)ch * (uintptr_t)k_ra8_adc_b_adchcr_stride));
666}
667
676static inline volatile uint32_t* ra8_adc_b_adstr(uint8_t group)
677{
678 if (group >= k_ra8_adc_b_scan_groups) {
679 return nullptr;
680 }
681 return (volatile uint32_t*)((uintptr_t)k_ra8_adc_b_base_addr + (uintptr_t)k_ra8_adc_b_off_adstr0 +
682 ((uintptr_t)group * (uintptr_t)k_ra8_adc_b_adstr_stride));
683}
684
690static inline volatile uint32_t* ra8_adc_b_adtrgenr(void)
691{
692 return (volatile uint32_t*)((uintptr_t)k_ra8_adc_b_base_addr +
693 (uintptr_t)k_ra8_adc_b_off_adtrgenr);
694}
695
701static inline volatile uint32_t* ra8_adc_b_adcmpenr(void)
702{
703 return (volatile uint32_t*)((uintptr_t)k_ra8_adc_b_base_addr +
704 (uintptr_t)k_ra8_adc_b_off_adcmpenr);
705}
706
712static inline volatile uint32_t* ra8_adc_b_adcmpintcr(void)
713{
714 return (volatile uint32_t*)((uintptr_t)k_ra8_adc_b_base_addr +
715 (uintptr_t)k_ra8_adc_b_off_adcmpintcr);
716}
717
725static inline volatile uint32_t* ra8_adc_b_adcmpmdr(uint8_t which)
726{
727 if (which == 0U) {
728 return (volatile uint32_t*)((uintptr_t)k_ra8_adc_b_base_addr +
729 (uintptr_t)k_ra8_adc_b_off_adcmpmdr0);
730 }
731 if (which == 1U) {
732 return (volatile uint32_t*)((uintptr_t)k_ra8_adc_b_base_addr +
733 (uintptr_t)k_ra8_adc_b_off_adcmpmdr1);
734 }
735 return nullptr;
736}
737
745static inline volatile uint32_t* ra8_adc_b_adcmptbr(uint8_t table)
746{
747 if (table >= k_ra8_adc_b_cmp_tables) {
748 return nullptr;
749 }
750 return (volatile uint32_t*)((uintptr_t)k_ra8_adc_b_base_addr +
751 (uintptr_t)k_ra8_adc_b_off_adcmptbr0 +
752 ((uintptr_t)table * (uintptr_t)k_ra8_adc_b_cmptbr_stride));
753}
754
767static inline volatile uint32_t* ra8_adc_b_addopcrb(uint8_t ch)
768{
769 if (ch >= k_ra8_adc_b_max_channels) {
770 return nullptr;
771 }
772 return (volatile uint32_t*)((uintptr_t)k_ra8_adc_b_base_addr +
773 (uintptr_t)k_ra8_adc_b_off_addopcrb0 +
774 ((uintptr_t)ch * (uintptr_t)k_ra8_adc_b_adchcr_stride));
775}
776
786static inline volatile uint32_t* ra8_adc_b_addr(uint8_t ch)
787{
788 if (ch >= k_ra8_adc_b_result_regs) {
789 return nullptr;
790 }
791 return (volatile uint32_t*)((uintptr_t)k_ra8_adc_b_base_addr + (uintptr_t)k_ra8_adc_b_off_addr0 +
792 ((uintptr_t)ch * (uintptr_t)k_ra8_adc_b_addr_stride));
793}
794
803static inline volatile uint32_t* ra8_adc_b_adsgdcr(uint8_t group)
804{
805 if (group >= k_ra8_adc_b_scan_groups) {
806 return nullptr;
807 }
808 return (volatile uint32_t*)((uintptr_t)k_ra8_adc_b_base_addr +
809 (uintptr_t)k_ra8_adc_b_off_adsgdcr0 +
810 ((uintptr_t)group * (uintptr_t)k_ra8_adc_b_adsgdcr_stride));
811}
812
825static inline volatile uint32_t* ra8_adc_b_addopcrc(uint8_t ch)
826{
827 if (ch >= k_ra8_adc_b_max_channels) {
828 return nullptr;
829 }
830 return (volatile uint32_t*)((uintptr_t)k_ra8_adc_b_base_addr +
831 (uintptr_t)k_ra8_adc_b_off_addopcrc0 +
832 ((uintptr_t)ch * (uintptr_t)k_ra8_adc_b_adchcr_stride));
833}
834
844static inline volatile uint32_t* ra8_adc_b_adexdr(uint8_t n)
845{
846 if (n >= k_ra8_adc_b_ext_data_regs) {
847 return nullptr;
848 }
849 return (volatile uint32_t*)((uintptr_t)k_ra8_adc_b_base_addr +
850 (uintptr_t)k_ra8_adc_b_off_adexdr0 +
851 ((uintptr_t)n * (uintptr_t)k_ra8_adc_b_adexdr_stride));
852}
853
859typedef enum : uint8_t {
863
889static inline uint8_t ra8_adc_b_adexdr_index_for_chan(uint8_t cnvcs)
890{
891 if (cnvcs < (uint8_t)k_ra8_adc_b_ext_chan_base) {
892 return (uint8_t)k_ra8_adc_b_adexdr_no_index;
893 }
894 return (uint8_t)(cnvcs - (uint8_t)k_ra8_adc_b_ext_chan_base);
895}
896
897#ifdef __cplusplus
898}
899#endif
ra8_adc_b_ext_chan_t
CNVCS[6:0] codes for the internal / extended-analog channels.
@ k_ra8_adc_b_chan_vbatt_div6
VBATT 1/6 voltage monitor.
@ k_ra8_adc_b_chan_int_ref_volt
Internal reference voltage.
@ k_ra8_adc_b_chan_dac1
D/A converter channel 1.
@ k_ra8_adc_b_chan_selfdiag_adc0
Self-diagnosis A/D unit 0.
@ k_ra8_adc_b_chan_temperature
On-chip temperature sensor.
@ k_ra8_adc_b_chan_dac0
D/A converter channel 0.
@ k_ra8_adc_b_chan_selfdiag_adc1
Self-diagnosis A/D unit 1.
ra8_adexdr_mask_t
ADEXDRn field masks (HUM Ch 53.2.13.2 p 3391).
@ k_ra8_adexdr_mask_diagsr
DIAGSR[2:0] diagnosis status.
@ k_ra8_adexdr_mask_data
DATA[15:0] conversion result.
@ k_ra8_adexdr_mask_err
ERR conversion-error flag.
static volatile uint32_t * ra8_adc_b_adcmpmdr(uint8_t which)
Pointer to ADCMPMDR0 / ADCMPMDR1 (compare-table mode select).
ra8_addopcrc_adprc_t
ADDOPCRCn.ADPRC[1:0] data-format codes (HUM Ch 53.2.3.4 p 3339).
@ k_ra8_addopcrc_adprc_12bit
12-bit data.
@ k_ra8_addopcrc_adprc_16bit
16-bit data.
@ k_ra8_addopcrc_adprc_14bit
14-bit data.
@ k_ra8_addopcrc_adprc_10bit
10-bit data.
static volatile uint32_t * ra8_adc_b_addopcrc(uint8_t ch)
Pointer to the per-virtual-channel ADDOPCRC[n] register.
static volatile uint32_t * ra8_adc_b_adclkenr(void)
Pointer to the 32-bit ADCLKENR register.
ra8_adchcr_mask_t
ADCHCRn bit masks.
@ k_ra8_adchcr_mask_cnvcs
[14:8]
@ k_ra8_adchcr_mask_sstsel
[19:16]
@ k_ra8_adchcr_mask_ainmd
[15]
@ k_ra8_adchcr_mask_sgsel
[4:0]
static volatile uint32_t * ra8_adc_b_admdr(void)
Pointer to the 32-bit ADMDR register.
ra8_adcmptbr_mask_t
ADCMPTBRn field masks (low + high 16-bit thresholds).
@ k_ra8_adcmptbr_mask_low
RA8 adcmptbr mask low.
@ k_ra8_adcmptbr_mask_high
RA8 adcmptbr mask high.
ra8_adstopr_mask_t
ADSTOPR force-stop bit masks.
@ k_ra8_adstopr_mask_adstop1
[8]
@ k_ra8_adstopr_mask_adstop0
[0]
ra8_adsgdcr_mask_t
ADSGDCRn bit masks (HUM Ch 53.2.4.1 p 3340).
@ k_ra8_adsgdcr_mask_diagval
DIAGVAL[2:0].
ra8_addopcrb_adc_t
ADDOPCRB.ADC averaging-times encoding.
@ k_ra8_adc_avg_16x
RA8 ADC avg 16x.
@ k_ra8_adc_avg_4x
RA8 ADC avg 4x.
@ k_ra8_adc_avg_2x
RA8 ADC avg 2x.
@ k_ra8_adc_avg_64x
RA8 ADC avg 64x.
@ k_ra8_adc_avg_1x
RA8 ADC avg 1x.
@ k_ra8_adc_avg_8x
RA8 ADC avg 8x.
ra8_admdr_mode_t
ADMDR per-unit mode codes (subset of HUM Ch 53 ADMD0/1 table).
@ k_ra8_admdr_mode_continuous
Continuous-scan repeating.
@ k_ra8_admdr_mode_one_cycle
Single-shot scan, one cycle.
@ k_ra8_admdr_mode_disabled
Unit disabled / single-shot SW.
static volatile uint32_t * ra8_adc_b_adcmpenr(void)
Pointer to the 32-bit ADCMPENR register (compare-table enable).
ra8_adchcr_bit_t
ADCHCRn bit positions (per virtual-channel config).
@ k_ra8_adchcr_bit_sgsel
Scan group selection.
@ k_ra8_adchcr_bit_sstsel
Sampling-state table selection.
@ k_ra8_adchcr_bit_ainmd
Analog input mode (single/diff).
@ k_ra8_adchcr_bit_cnvcs
Physical channel selection.
ra8_adsgdcr_bit_t
ADSGDCRn bit positions (HUM Ch 53.2.4.1 p 3340).
@ k_ra8_adsgdcr_bit_diagval
Self-diagnosis mode select [2:0].
static volatile uint32_t * ra8_adc_b_adclkcr(void)
Pointer to the 32-bit ADCLKCR register.
static volatile uint32_t * ra8_adc_b_addopcrb(uint8_t ch)
Pointer to the per-virtual-channel ADDOPCRB[n] register.
ra8_adcmpmd_t
CMPMDn 2-bit window-mode codes (per HUM Ch 53).
@ k_ra8_adcmpmd_inside
Match when low <= data <= high.
@ k_ra8_adcmpmd_disabled
Compare match disabled.
@ k_ra8_adcmpmd_greater_eq
Match when data >= high (single-sided).
@ k_ra8_adcmpmd_outside
Match when data < low OR data > high.
ra8_adchcr_ainmd_t
ADCHCRn.AINMD analog-input-mode codes (HUM Ch 53.2.3.1 p 3336).
@ k_ra8_adchcr_ainmd_differential
Differential input.
@ k_ra8_adchcr_ainmd_single_ended
Single-ended input.
ra8_adc_b_off_t
Register offsets inside the ADC_B block (subset modelled).
@ k_ra8_adc_b_off_adsystr
Synchronous SW Start.
@ k_ra8_adc_b_off_adexdr0
ADEXDR[0] – extended-analog result.
@ k_ra8_adc_b_off_adcmpmdr1
Compare-Match Mode CMPMD4..7.
@ k_ra8_adc_b_off_adstopr
Force Stop.
@ k_ra8_adc_b_off_adcmpintcr
Compare-Match Interrupt Enable.
@ k_ra8_adc_b_off_adcmptbr0
ADCMPTBR[0] (low/high pair).
@ k_ra8_adc_b_off_addopcrc0
ADDOPCRC[0] – ADPRC/SIGNSEL.
@ k_ra8_adc_b_off_adcmpmdr0
Compare-Match Mode CMPMD0..3.
@ k_ra8_adc_b_off_admdr
Per-unit Mode Selection.
@ k_ra8_adc_b_off_adsycr
Synchronous Operation Control.
@ k_ra8_adc_b_off_adclkenr
ADCLK Enable.
@ k_ra8_adc_b_off_adsger
Scan-Group Enable.
@ k_ra8_adc_b_off_addopcrb0
ADDOPCRB[0] – AVEMD/ADC/CMPTBLEm.
@ k_ra8_adc_b_off_adtrgenr
Trigger Enable per group.
@ k_ra8_adc_b_off_adclkcr
ADCLK Control.
@ k_ra8_adc_b_off_aderintcr
Conversion Error IE.
@ k_ra8_adc_b_off_adcmpenr
Compare-Match Enable (CMPENn[7:0]).
@ k_ra8_adc_b_off_adsgdcr0
ADSGDCR[0] scan-group self-diag.
@ k_ra8_adc_b_off_addr0
ADDR[0] – conversion results.
@ k_ra8_adc_b_off_adintcr
Per-group Scan-End IE.
@ k_ra8_adc_b_off_adclksr
ADCLK Status (RO).
@ k_ra8_adc_b_off_adchcr0
ADCHCR[0] – per-channel config.
@ k_ra8_adc_b_off_adsr
Conversion Status (RO).
@ k_ra8_adc_b_off_adstr0
ADSTR[0] per-group SW start.
ra8_adsgdcr_diag_t
ADSGDCRn.DIAGVAL[2:0] self-diagnosis mode codes.
@ k_ra8_adsgdcr_diag_off
No self-diagnosis channel.
@ k_ra8_adsgdcr_diag_mode3
Mode 3: positive FS (0x7FFF).
@ k_ra8_adsgdcr_diag_mode2
Mode 2: negative FS (0x8000).
@ k_ra8_adsgdcr_diag_mode1
Mode 1: zero differential (0x0000).
ra8_adclksr_mask_t
ADCLKSR bit masks (RO clock-running flag).
@ k_ra8_adclksr_mask_clksr
RA8 adclksr mask clksr.
static volatile uint32_t * ra8_adc_b_adintcr(void)
Pointer to the 32-bit ADINTCR register (per-group scan-end IE).
ra8_adsr_bit_t
ADSR bit positions (busy / calibration flags, RO).
@ k_ra8_adsr_bit_calact0
ADC0 calibration in progress.
@ k_ra8_adsr_bit_adact0
ADC0 conversion in progress.
@ k_ra8_adsr_bit_calact1
ADC1 calibration in progress.
@ k_ra8_adsr_bit_adact1
ADC1 conversion in progress.
ra8_admdr_bit_t
ADMDR bit positions (per-unit mode).
@ k_ra8_admdr_bit_admd0
ADC0 mode select [3:0].
@ k_ra8_admdr_bit_admd1
ADC1 mode select [11:8].
static volatile uint32_t * ra8_adc_b_addr(uint8_t ch)
Pointer to the per-virtual-channel ADDR[n] result register.
ra8_adcmpmd_layout_t
CMPMDn field layout inside ADCMPMDR0 / ADCMPMDR1.
@ k_ra8_adcmpmd_field_width
Each CMPMDn occupies 2 bits.
@ k_ra8_adcmpmd_per_reg
Four CMPMDn per ADCMPMDR.
@ k_ra8_adcmpmd_field_step
Stride between CMPMDn fields.
ra8_adc_b_limits_t
Channel counts, register strides, and array sizes.
@ k_ra8_adc_b_scan_groups
ADSGER / ADTRGENR / ADSYSTR width [8:0].
@ k_ra8_adc_b_ext_data_regs
ADEXDR[0..22] extended-analog result slots.
@ k_ra8_adc_b_result_regs
ADDR[0..22] result slots.
@ k_ra8_adc_b_adexdr_stride
ADEXDRn is 4 bytes per slot.
@ k_ra8_adc_b_addr_stride
ADDR[n] is 4 bytes per slot.
@ k_ra8_adc_b_max_channels
ADCHCR0..23 virtual-channel config slots.
@ k_ra8_adc_b_cmp_tables
ADCMPTBR0..7 / CMPMD0..7 / CMPENn[7:0].
@ k_ra8_adc_b_adstr_stride
ADSTR[n] is 4 bytes per slot.
@ k_ra8_adc_b_adchcr_stride
ADCHCRn occupies 16 bytes per slot.
@ k_ra8_adc_b_cmptbr_stride
ADCMPTBRn is 4 bytes per slot.
@ k_ra8_adc_b_adsgdcr_stride
ADSGDCRn is 4 bytes per slot.
@ k_ra8_adc_b_unit_count
Two independent ADC units (ADC0/ADC1).
ra8_addopcrc_mask_t
ADDOPCRCn bit masks (HUM Ch 53.2.3.4 p 3339).
@ k_ra8_addopcrc_mask_signsel
SIGNSEL.
@ k_ra8_addopcrc_mask_adprc
ADPRC[1:0].
ra8_addopcrb_bit_t
ADDOPCRB[ch] bit positions (per-channel oversampling + cmp enable).
@ k_ra8_addopcrb_bit_cmptblem
RA8 addopcrb bit cmptblem.
@ k_ra8_addopcrb_bit_avemd
RA8 addopcrb bit avemd.
@ k_ra8_addopcrb_bit_adc
RA8 addopcrb bit ADC.
ra8_adsger_mask_t
ADSGER scan-group-enable mask (SGREn[8:0]).
@ k_ra8_adsger_mask_sgren
RA8 adsger mask sgren.
ra8_addopcrb_mask_t
ADDOPCRB[ch] field masks.
@ k_ra8_addopcrb_mask_adc
[11:8]
@ k_ra8_addopcrb_mask_cmptblem
[23:16]
@ k_ra8_addopcrb_mask_avemd
[1:0]
ra8_addr_mask_t
ADDR[n] result-register field masks.
@ k_ra8_addr_mask_data
[15:0] conversion data.
@ k_ra8_addr_mask_err
[31] conversion error flag.
static volatile uint32_t * ra8_adc_b_adstr(uint8_t group)
Pointer to the per-scan-group ADSTR[n] register.
static volatile uint32_t * ra8_adc_b_adsystr(void)
Pointer to the 32-bit ADSYSTR register (synchronous SW start).
static uint8_t ra8_adc_b_adexdr_index_for_chan(uint8_t cnvcs)
Map a CNVCS extended-channel code to its ADEXDR index.
ra8_adexdr_bit_t
ADEXDRn bit positions (HUM Ch 53.2.13.2 p 3391).
@ k_ra8_adexdr_bit_err
A/D conversion error status.
@ k_ra8_adexdr_bit_diagsr
Self-diagnosis status [26:24].
ra8_adstr_mask_t
ADSTR[n] per-group SW start mask (ADST[0]).
@ k_ra8_adstr_mask_adst
RA8 adstr mask adst.
ra8_addopcrb_avemd_t
ADDOPCRB.AVEMD encoding (per HUM Ch 53).
@ k_ra8_avemd_off
Disabled (single-sample).
@ k_ra8_avemd_average
Sum then divide by N.
@ k_ra8_avemd_add
Sum N samples.
ra8_adc_b_adexdr_sentinel_t
Sentinel returned by ra8_adc_b_adexdr_index_for_chan for a CNVCS code that has no extended-data (ADEX...
@ k_ra8_adc_b_adexdr_no_index
CNVCS below the extended-channel base maps to no ADEXDR slot.
ra8_adclkenr_mask_t
ADCLKENR bit masks.
@ k_ra8_adclkenr_mask_clken
RA8 adclkenr mask clken.
static volatile uint32_t * ra8_adc_b_adchcr(uint8_t ch)
Pointer to the per-virtual-channel ADCHCR register.
ra8_adc_b_addr_t
Memory-mapped base address of the ADC_B register window.
@ k_ra8_adc_b_base_addr
FSP R_ADC_B0_BASE.
ra8_adcmptbr_bit_t
ADCMPTBRn (low,high) packed-pair bit positions.
@ k_ra8_adcmptbr_bit_high
High-side window level [31:16].
@ k_ra8_adcmptbr_bit_low
Low-side window level [15:0].
ra8_adsr_mask_t
ADSR bit masks.
@ k_ra8_adsr_mask_adact0
RA8 adsr mask adact0.
@ k_ra8_adsr_mask_adact1
RA8 adsr mask adact1.
@ k_ra8_adsr_mask_calact0
RA8 adsr mask calact0.
@ k_ra8_adsr_mask_calact1
RA8 adsr mask calact1.
@ k_ra8_adsr_mask_adact
Either unit busy.
static volatile uint32_t * ra8_adc_b_adtrgenr(void)
Pointer to the 32-bit ADTRGENR register (per-group HW trigger enable).
static volatile uint32_t * ra8_adc_b_adcmptbr(uint8_t table)
Pointer to a per-table ADCMPTBR[n] register (low/high pair).
ra8_addopcrc_signsel_t
ADDOPCRCn.SIGNSEL data-sign codes (HUM Ch 53.2.3.4 p 3340).
@ k_ra8_addopcrc_signsel_unsigned
Unsigned data format.
@ k_ra8_addopcrc_signsel_signed
Signed data format.
static volatile uint32_t * ra8_adc_b_adclksr(void)
Pointer to the 32-bit ADCLKSR register.
ra8_adc_b_ext_chan_base_t
CNVCS base of the extended-analog block (ADEXDR index origin).
@ k_ra8_adc_b_ext_chan_base
ADEXDR index n = CNVCS - this.
ra8_admdr_mask_t
ADMDR bit masks.
@ k_ra8_admdr_mask_admd1
ADMD1 [11:8].
@ k_ra8_admdr_mask_admd0
ADMD0 [3:0].
ra8_addopcrc_bit_t
ADDOPCRCn bit positions (HUM Ch 53.2.3.4 p 3339).
@ k_ra8_addopcrc_bit_signsel
Signed/unsigned select [20].
@ k_ra8_addopcrc_bit_adprc
Data-format select [17:16].
ra8_adtrgenr_mask_t
ADTRGENR per-group hardware-trigger enable mask (STTRGENn[8:0]).
@ k_ra8_adtrgenr_mask_sttrgen
RA8 adtrgenr mask sttrgen.
static volatile uint32_t * ra8_adc_b_adexdr(uint8_t n)
Pointer to the ADEXDR[n] extended-analog result register.
ra8_adclkenr_bit_t
ADCLKENR bit positions.
@ k_ra8_adclkenr_bit_clken
ADCLK enable.
static volatile uint32_t * ra8_adc_b_adstopr(void)
Pointer to the 32-bit ADSTOPR register (force-stop).
static volatile uint32_t * ra8_adc_b_adsgdcr(uint8_t group)
Pointer to the per-scan-group ADSGDCR[n] register (self-diagnosis).
static volatile uint32_t * ra8_adc_b_adsger(void)
Pointer to the 32-bit ADSGER register (scan-group enable).
ra8_adcmpenr_mask_t
ADCMPENR compare-table enable mask (CMPENn[7:0]).
@ k_ra8_adcmpenr_mask_cmpen
RA8 adcmpenr mask cmpen.
static volatile uint32_t * ra8_adc_b_adcmpintcr(void)
Pointer to the 32-bit ADCMPINTCR register (compare-match IE).
static volatile uint32_t * ra8_adc_b_adsr(void)
Pointer to the 32-bit ADSR register (status).
ra8_adsystr_mask_t
ADSYSTR synchronous SW start mask (ADSYSTn[8:0]).
@ k_ra8_adsystr_mask_adsystn
RA8 adsystr mask adsystn.
Annotation-attribute framework macros for ra8-firmware.
#define RA8_HW_REGISTER_ACCESS
Mark an MMIO accessor function (returns volatile register pointer).