Skip to main content
Explorer
January 29, 2024
Solved

Internal ADC questions on stm32h750

  • January 29, 2024
  • 2 replies
  • 1461 views

Hello,

I am using an stm32h750. I have an ADC group that includes 4 inputs from GPIO ports and the 3 internal ADCs (VBAT, CPU Temp, Reference Voltage). It's set up with DMA. The conversions run at 150hz.

We use a coincell battery voltage as input to VBAT. The 150hz frequency of voltage reading is causing it to drain too quickly. The request is that this voltage is read much less frequently (like a few times a day)

I'm brainstorming solutions. My original thought was to just remove VBAT from the ADC group and read it directly at application level, but I didn't know it was an internal ADC at that point, so I don't think this is possible?

Second thought, after searching the forum, was to use injection mode. But, unless I'm misunderstanding, this is only possible at the group level, not individual channel? Am I wrong here?

My final dirty idea was to configure my ADC group normally at startup, get a good VBAT value, reconfigure the group without VBAT (I did this by disabling DMA, reconfiguring ADC group without VBAT, then starting DMA again), let that run for a long time, then reconfigure it with VBAT for a short time, etc

I implemented my final solution, but it didn't seem to have any impact on current draw. My question is - is my approach even viable? Maybe I just implemented it incorrectly?

Thanks in advanced for any support

    This topic has been closed for replies.
    Best answer by STOne-32

    Dear @MikeB1283 ,

    Welcome in our community ! 

    A quick comment, if you can check this : 

    IMG_6319.jpeg

    Hope it helps you .

    Cheers,

    STOne-32

    2 replies

    STOne-32Answer
    Technical Moderator
    January 29, 2024

    Dear @MikeB1283 ,

    Welcome in our community ! 

    A quick comment, if you can check this : 

    IMG_6319.jpeg

    Hope it helps you .

    Cheers,

    STOne-32

    MikeB1283Author
    Explorer
    January 29, 2024

    Hello @STOne-32 ! Thank you so much. I was actually looking at this signal at some point. I tried clearing it but didn't see it have any affect initially. I believe I was looking in the wrong spot. Now that I'm looking in the right spot, I believe it is performing as I'd hope. Thanks again. This is solved.