kywwilson11 opened a new pull request, #16500:
URL: https://github.com/apache/nuttx/pull/16500

   First commit of ADC for G0. Have it working basically. Need to make changes 
regarding adccmn stuff.
   
   Added changes to make stm32_adc.c compatible with both G0 and other families.
   
   Add oversampling support. This is for G0 and L0. Add ADC oversampling to 
Kconfig. Use adccmn_modifyreg for all, updated hw file to accomodate G0.
   
   Style fixes. Move init of oversampling to a function, and call it if 
OVERSAMPLE is configured.
   
   Limited changes to stm32_bringup.c
   
   Style fixes to hardware/stm32_adc.h
   
   *Note: Please adhere to [Contributing 
Guidelines](https://github.com/apache/nuttx/blob/master/CONTRIBUTING.md).*
   
   ## Summary
   
   Added support for the STM32G0 series to the STM32F0L0G0 driver. Previously 
it was untested. Additions were needed to hardware/stm32_adc.h initially. Then 
basic configuration support was added. Once that was working, oversampling 
support was added. Oversampling should work for the STM32L0 series as well. 
   
   ## Impact
   
   This should impact the STM32F0L0G0 architecture. The primary goal of this 
pull request was to add ADC support for the G0 series. I saw oversampling on 
the L0 series was identical to the G0, so the L0 technically has the added 
ability to oversample. But this is untested.
   
   Oversampling support is configured through Kconfig. It will only have an 
impact if it is enabled. It can only be enabled by L0 and G0 for this 
architecture family (STM32F0L0G0). 
   
   Also support was added for the nucleo-g0b1re board. 
   
   ## Testing
   
   HW: Nucleo-G0B1RE
   IDE: VsCode with OpenOCD support
   Nuttx Apps: Used built-in example ADC app. 
   
   Using the new nucleo-g0b1re:adc configuration, I performed tests with and 
without oversampling. 
   By default oversampling is enabled. Oversampling is configured with a ratio 
of 256x and 4 shift bits for a 16-bit result. Here is my testing:
   
   
![g0b1re_adc_oversample_16](https://github.com/user-attachments/assets/7c407f66-7f57-41a9-bbdf-24abfe8e7d98)
   
   
   For testing without oversampling, my testing is below:
   
   
   
![g0b1re_adc](https://github.com/user-attachments/assets/c26a5176-666d-4e92-8402-fa5e4ad468b5)
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscr...@nuttx.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org

Reply via email to