Hello!
I do!
When properly done, there is no speed penalty. Basically configuring a peripheral is just about writing configs.
For instance if you configure a SPI port, you will write register specifying its speed, polarity, phase, etc. So first
for the configuration, writing it in assembler, C or C++ doesn't change anything.
Next, as for exchanging data, everything is made by the hardware, therefore there is no speed issue either.
I usually setup the hardware to use DMA, so I get a callback function called when a buffer is ready.
But I suppose you will have as many different opinions as there are users on this site.
Dora.