¿Hay una función de espera activa _delay_ms () en SDCC para STM8 MCU?
(Solo encontré delay100tcy () para pic16 en incluye) Si no existe, ¿cuál es la implementación más simple? La macro FCPU es conocida.
¿Hay una función de espera activa _delay_ms () en SDCC para STM8 MCU?
(Solo encontré delay100tcy () para pic16 en incluye) Si no existe, ¿cuál es la implementación más simple? La macro FCPU es conocida.
Adaptado de aquí :
#define T_COUNT(x) (( F_CPU * x / 1000000UL )-5)/5)
static inline void _delay_cycl( unsigned short __ticks )
{
__asm__("nop\n nop\n");
do {
__ticks--;
} while ( __ticks );
__asm__("nop\n");
static inline void _delay_us( const unsigned short __us )
{
_delay_cycl( (unsigned short)( T_COUNT(__us) );
}
static inline void _delay_ms( unsigned short __ms )
{
while ( __ms-- )
{
_delay_us( 1000 );
}
}
Lea otras preguntas en las etiquetas microcontroller stm8