Dúvida stm8 x Cosmic

olá
estou começando a usar o stm8s105 com compilador C cosmic.
eu fiz um pequeno projeto, usando prescaler de 8 no clock interno
e ajustei o port D3 como saída, push pull, fast:
na main, coloquei comando apenas para ligar e desligar o pino:
analisando no scope, vi o primeiro pulso do port tem duração de 1us, o segundo de 500ns e os outros com 1us.
pergunta: não era para todos terem o mesmo tempo? pelo assembly vi que o compilador faz um mov e clear na porta e leva um ciclo de máquina...
estou começando a usar o stm8s105 com compilador C cosmic.
eu fiz um pequeno projeto, usando prescaler de 8 no clock interno
- Código: Selecionar todos
CLK_CKDIVR= 0b00011000;
e ajustei o port D3 como saída, push pull, fast:
- Código: Selecionar todos
PD_DDR=0B00001000;
PD_CR1=0B00001000;
PD_CR2=0B00001000;
PD_ODR=0B00000000;
//LED ACESO
#define led_on PD_ODR=0B00001000
//LED APAGADO
#define led_off PD_ODR=0B00000000
na main, coloquei comando apenas para ligar e desligar o pino:
- Código: Selecionar todos
led_on;
led_off;
led_on;
led_off;
led_on;
led_off;
led_on;
led_off;
for (;;) {}
analisando no scope, vi o primeiro pulso do port tem duração de 1us, o segundo de 500ns e os outros com 1us.
pergunta: não era para todos terem o mesmo tempo? pelo assembly vi que o compilador faz um mov e clear na porta e leva um ciclo de máquina...