Struct nrf91::saadc_ns::RegisterBlock
source · #[repr(C)]pub struct RegisterBlock {Show 32 fields
pub tasks_start: TASKS_START,
pub tasks_sample: TASKS_SAMPLE,
pub tasks_stop: TASKS_STOP,
pub tasks_calibrateoffset: TASKS_CALIBRATEOFFSET,
pub subscribe_start: SUBSCRIBE_START,
pub subscribe_sample: SUBSCRIBE_SAMPLE,
pub subscribe_stop: SUBSCRIBE_STOP,
pub subscribe_calibrateoffset: SUBSCRIBE_CALIBRATEOFFSET,
pub events_started: EVENTS_STARTED,
pub events_end: EVENTS_END,
pub events_done: EVENTS_DONE,
pub events_resultdone: EVENTS_RESULTDONE,
pub events_calibratedone: EVENTS_CALIBRATEDONE,
pub events_stopped: EVENTS_STOPPED,
pub events_ch: [EVENTS_CH; 8],
pub publish_started: PUBLISH_STARTED,
pub publish_end: PUBLISH_END,
pub publish_done: PUBLISH_DONE,
pub publish_resultdone: PUBLISH_RESULTDONE,
pub publish_calibratedone: PUBLISH_CALIBRATEDONE,
pub publish_stopped: PUBLISH_STOPPED,
pub publish_ch: [PUBLISH_CH; 8],
pub inten: INTEN,
pub intenset: INTENSET,
pub intenclr: INTENCLR,
pub status: STATUS,
pub enable: ENABLE,
pub ch: [CH; 8],
pub resolution: RESOLUTION,
pub oversample: OVERSAMPLE,
pub samplerate: SAMPLERATE,
pub result: RESULT,
/* private fields */
}
Expand description
Register block
Fields
tasks_start: TASKS_START
0x00 - Start the ADC and prepare the result buffer in RAM
tasks_sample: TASKS_SAMPLE
0x04 - Take one ADC sample, if scan is enabled all channels are sampled
tasks_stop: TASKS_STOP
0x08 - Stop the ADC and terminate any on-going conversion
tasks_calibrateoffset: TASKS_CALIBRATEOFFSET
0x0c - Starts offset auto-calibration
subscribe_start: SUBSCRIBE_START
0x80 - Subscribe configuration for task START
subscribe_sample: SUBSCRIBE_SAMPLE
0x84 - Subscribe configuration for task SAMPLE
subscribe_stop: SUBSCRIBE_STOP
0x88 - Subscribe configuration for task STOP
subscribe_calibrateoffset: SUBSCRIBE_CALIBRATEOFFSET
0x8c - Subscribe configuration for task CALIBRATEOFFSET
events_started: EVENTS_STARTED
0x100 - The ADC has started
events_end: EVENTS_END
0x104 - The ADC has filled up the Result buffer
events_done: EVENTS_DONE
0x108 - A conversion task has been completed. Depending on the mode, multiple conversions might be needed for a result to be transferred to RAM.
events_resultdone: EVENTS_RESULTDONE
0x10c - A result is ready to get transferred to RAM.
events_calibratedone: EVENTS_CALIBRATEDONE
0x110 - Calibration is complete
events_stopped: EVENTS_STOPPED
0x114 - The ADC has stopped
events_ch: [EVENTS_CH; 8]
0x118 - Peripheral events.
publish_started: PUBLISH_STARTED
0x180 - Publish configuration for event STARTED
publish_end: PUBLISH_END
0x184 - Publish configuration for event END
publish_done: PUBLISH_DONE
0x188 - Publish configuration for event DONE
publish_resultdone: PUBLISH_RESULTDONE
0x18c - Publish configuration for event RESULTDONE
publish_calibratedone: PUBLISH_CALIBRATEDONE
0x190 - Publish configuration for event CALIBRATEDONE
publish_stopped: PUBLISH_STOPPED
0x194 - Publish configuration for event STOPPED
publish_ch: [PUBLISH_CH; 8]
0x198 - Publish configuration for events
inten: INTEN
0x300 - Enable or disable interrupt
intenset: INTENSET
0x304 - Enable interrupt
intenclr: INTENCLR
0x308 - Disable interrupt
status: STATUS
0x400 - Status
enable: ENABLE
0x500 - Enable or disable ADC
ch: [CH; 8]
0x510 - Unspecified
resolution: RESOLUTION
0x5f0 - Resolution configuration
oversample: OVERSAMPLE
0x5f4 - Oversampling configuration. OVERSAMPLE should not be combined with SCAN. The RESOLUTION is applied before averaging, thus for high OVERSAMPLE a higher RESOLUTION should be used.
samplerate: SAMPLERATE
0x5f8 - Controls normal or continuous sample rate
result: RESULT
0x62c - RESULT EasyDMA channel