Alguém pode me ajudar?
Estive esses dias mexendo aqui com um placa ARM (STM32F103VCT6) e estava tentando saber qual a velocidade máxima que conseguiria num pino como saída.
Fiz um programa bem simples onde coloquei uma linha só dentro do "loop infinito", como abaixo:
- Código: Selecionar todos
while(1){
GPIOC->ODR ^= GPIO_Pin_3;
//asm("nop");
}
Como podem ver, somente para ficar alernando o estado de PC3.
Configurei o clock para o máximo, com crital de 8MHz, PLL com multiplicador x9 onde, SYSCLK e APB2 seriam 72MHz. Fiz isso pelo STM32CubeMX e depois converti para usar no CooCox (1.7.

Para minha surpresa, no pino em questão só consegui 1.8MHz com CooCox e 3.2Mhz com um programa igual que fiz no Keil uVision 5.
Minha dúvida é: seria só isso mesmo? Ou tem algo que fiz de errado ou deixei de fazer para conseguir uma frequência mais alta nessa saída?
Obrigado.