You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/Library/ADC.md
+5-5Lines changed: 5 additions & 5 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -29,7 +29,7 @@ An overview of possible errors for ADC:
29
29
*`0x2002`: Passed ADC instance is not either `ADC1`, `ADC2` nor `ADC3`
30
30
*`0x2003`: ADC failed to disable
31
31
*`0x2004`: ADC failed to power up
32
-
*`0x2005`: Selected pin for ADC is not reachable. Refer to the [table]({% link Library/ADC.md %}#notes) to find proper pins for each ADC instance
32
+
*`0x2005`: Selected pin for ADC is not reachable. Refer to the [table] to find proper pins for each ADC instance
33
33
*`0x2006`: Unexpected pin number during initialization. Must be at least 1
34
34
*`0x2007`: Unexpected address or memory size for DMA
35
35
*`0x2008`: Unexpected sampling frequency. Must be at least 1kHz
@@ -80,7 +80,7 @@ typedef struct {
80
80
*`mem_address`: DMA buffer address in memory (first element of the array)
81
81
*`mem_size`: DMA buffer size
82
82
83
-
#### Notes {#adc_table_id}
83
+
#### Notes {#adc_mapping}
84
84
{: .no_toc}
85
85
86
86
Be aware of which pins you can use with selected ADC. Table below shows ADC connections. For example, you can't access `ADC3` with pin `A7`, cause it is only connected to `ADC1`.
* **In older board revisions**, microphone #2 is wired to pin `A9` (`PC3_C`), which is routed only to `ADC3`. This conflicts with project requiring x4 microphones, using `ADC1` and `ADC2` with x2 channels per ADC. To solve this problem, `_C` pins could be shorted to their `non_C` counterparts. This way pin `A4` (`PC3`) is bridged to `A9` (`PC3_C`), allowing microphone #2 to be accessed via any ADC, since `PC3` is shared between `ADC1` and `ADC2`. Refer to the table at [settings section]({% link Library/ADC.md %}#notes) for better understanding.
271
+
* **In older board revisions**, microphone #2 is wired to pin `A9` (`PC3_C`), which is routed only to `ADC3`. This conflicts with project requiring x4 microphones, using `ADC1` and `ADC2` with x2 channels per ADC. To solve this problem, `_C` pins could be shorted to their `non_C` counterparts. This way pin `A4` (`PC3`) is bridged to `A9` (`PC3_C`), allowing microphone #2 to be accessed via any ADC, since `PC3` is shared between `ADC1` and `ADC2`. Refer to the [table] at settings section for better understanding.
The STM32H7 microcontroller is equipped with three ADC modules, each capable of accessing multiple channels (refer to the [table] above). Reading the ADC values from a single channel is straightforward, as the data is stored consecutively in an array.
661
+
The STM32H7 microcontroller is equipped with three ADC modules, each capable of accessing multiple channels (refer to the ADC mapping [table] above). Reading the ADC values from a single channel is straightforward, as the data is stored consecutively in an array.
662
662
663
663
However, when reading data from multiple channels within a single ADC module, users must use different approach. The data for each channel is interleaved in the array, meaning that the data for each channel is stored one after the other, rather than all data from first channel followed by all data from second channel, and so forth. This structure is illustrated clearly in the following figure giving an example of using two channels with one ADC module.
0 commit comments