Según la hoja de datos de STM32F103C8T6, sus pines GPIO tienen una limitación de velocidad de hardware de 50MHz. Necesito alcanzar una velocidad por encima de 10MHz, pero incluso con los códigos de ensamblaje obtengo solo 7.99MHz.
Se está ejecutando a la velocidad máxima recomendada de 72MHz (8MHz Crystal + PLL).
¿Alguien puede guiarme? Por favor revise el siguiente bucle de lenguaje ensamblador que estoy usando para alternar los pines GPIO.
asm(".equ GPIOB_ODR, 0x4001080C");
asm("ldr r6, = GPIOB_ODR");
asm("loop:");
asm("mov r1, #0xFFFFFFFF");
asm("strh r1, [r6]");
asm("mov r1, #0x00000000");
asm("strh r1, [r6]");
asm("b loop");