2020-11-08 07:28 AM
Hey,
im going to use the H743 MCU in ~400MHz core frequency with Free Artos operation system.
one of my uses is to sample an analog signal with external ADC in SPI Channel.
An interrupt to the MCU will inform “sample
now!�?.
im trying to figure how much time takes to the MCU from receiving the interrupt to turn to the ADC ( of course I’ll add the conversion time of the ADC), in case I’ll configure the interrupt in high priority.
is it take nS? uS? mS?
Actually I have around 5uS from the moment the interrupt appears until I should sample the data.
Best regards
Peleg
2020-11-08 10:10 AM
It's in the tens of cycles between the interrupt event (pin going low) and executing code inside the interrupt. How long it takes from there depends on how speedy your code is.
5us at 400 MHz is 2000 cycles which is plenty of time to start the ADC sampling, and probably to finish it as well, depending on your sampling settings.
2020-11-08 10:29 AM
Thank you!
Do you have any recommendation how to expedite the time between the interruption and sampling? A dedicated interrupt pin that reactive faster? A specific implementaion in HW/SW?
peleg
2020-11-08 10:53 AM
ADC conversions can be triggered directly from an external interrupt. That's going to be the fastest. See ADC_CFGR_EXTSEL = 0b00110 and "Table 202. ADC1, ADC2 and ADC3 - External triggers for regular channels" in reference manual.
2020-11-08 11:22 AM
what about case that I’ll work with external ADC (higher resolution, around 16 bit)..?
i thought about connecting the external interrupt directly to the external ADC, convert start pin\CS pin, but as I understand it won’t save much time because the MCU will be needed to activate the SPI channel and start communicate with the device.