diff options
| -rw-r--r-- | src/ao_dbg.c | 54 | 
1 files changed, 15 insertions, 39 deletions
diff --git a/src/ao_dbg.c b/src/ao_dbg.c index e7fbd7ad..2988aed4 100644 --- a/src/ao_dbg.c +++ b/src/ao_dbg.c @@ -175,54 +175,30 @@ ao_dbg_set_pins(void)  	DBG_PORT_DIR &= ~DBG_DATA;  } -static void -ao_dbg_long_delay(void) -{ -	uint8_t	n; - -	for (n = 0; n < 20; n++) -		_asm nop _endasm; -} - -#define AO_RESET_LOW_DELAY	AO_MS_TO_TICKS(100) -#define AO_RESET_HIGH_DELAY	AO_MS_TO_TICKS(100) +#define ao_reset_delay()	ao_delay(AO_MS_TO_TICKS(20))  void  ao_dbg_debug_mode(void)  { -	ao_dbg_set_pins(); -	ao_dbg_long_delay(); -	ao_dbg_send_bits(DBG_CLOCK|DBG_DATA|DBG_RESET_N, DBG_CLOCK|DBG_DATA|DBG_RESET_N); -	ao_dbg_long_delay(); -	ao_dbg_send_bits(DBG_CLOCK|DBG_DATA|DBG_RESET_N,     0    |DBG_DATA|    0    ); -	ao_delay(AO_RESET_LOW_DELAY); -	ao_dbg_send_bits(DBG_CLOCK|DBG_DATA|DBG_RESET_N, DBG_CLOCK|DBG_DATA|    0    ); -	ao_dbg_long_delay(); -	ao_dbg_send_bits(DBG_CLOCK|DBG_DATA|DBG_RESET_N,     0    |DBG_DATA|    0    ); -	ao_dbg_long_delay(); -	ao_dbg_send_bits(DBG_CLOCK|DBG_DATA|DBG_RESET_N, DBG_CLOCK|DBG_DATA|    0    ); -	ao_dbg_long_delay(); -	ao_dbg_send_bits(DBG_CLOCK|DBG_DATA|DBG_RESET_N,     0    |DBG_DATA|DBG_RESET_N); -	ao_delay(AO_RESET_HIGH_DELAY); +	ao_dbg_set_pins();	ao_reset_delay(); +	ao_dbg_send_bits(DBG_CLOCK|DBG_DATA|DBG_RESET_N, DBG_CLOCK|DBG_DATA|DBG_RESET_N);	ao_reset_delay(); +	ao_dbg_send_bits(DBG_CLOCK|DBG_DATA|DBG_RESET_N, DBG_CLOCK|DBG_DATA|    0      );  	ao_reset_delay(); +	ao_dbg_send_bits(DBG_CLOCK|DBG_DATA|DBG_RESET_N,     0    |DBG_DATA|    0      );  	ao_reset_delay(); +	ao_dbg_send_bits(DBG_CLOCK|DBG_DATA|DBG_RESET_N, DBG_CLOCK|DBG_DATA|    0      );	ao_reset_delay(); +	ao_dbg_send_bits(DBG_CLOCK|DBG_DATA|DBG_RESET_N,     0    |DBG_DATA|    0      );	ao_reset_delay(); +	ao_dbg_send_bits(DBG_CLOCK|DBG_DATA|DBG_RESET_N, DBG_CLOCK|DBG_DATA|    0      );	ao_reset_delay(); +	ao_dbg_send_bits(DBG_CLOCK|DBG_DATA|DBG_RESET_N, DBG_CLOCK|DBG_DATA|DBG_RESET_N);	ao_reset_delay(); +	ao_dbg_send_bits(DBG_CLOCK|DBG_DATA|DBG_RESET_N,     0    |DBG_DATA|DBG_RESET_N);	ao_reset_delay();  }  void  ao_dbg_reset(void)  { -	ao_dbg_set_pins(); -	ao_dbg_long_delay(); -	ao_dbg_send_bits(DBG_CLOCK|DBG_DATA|DBG_RESET_N, DBG_CLOCK|DBG_DATA|DBG_RESET_N); -	ao_dbg_long_delay(); -	ao_dbg_send_bits(DBG_CLOCK|DBG_DATA|DBG_RESET_N, DBG_CLOCK|DBG_DATA|    0    ); -	ao_delay(AO_RESET_LOW_DELAY); -	ao_dbg_send_bits(DBG_CLOCK|DBG_DATA|DBG_RESET_N, DBG_CLOCK|DBG_DATA|    0    ); -	ao_dbg_long_delay(); -	ao_dbg_send_bits(DBG_CLOCK|DBG_DATA|DBG_RESET_N, DBG_CLOCK|DBG_DATA|    0    ); -	ao_dbg_long_delay(); -	ao_dbg_send_bits(DBG_CLOCK|DBG_DATA|DBG_RESET_N, DBG_CLOCK|DBG_DATA|    0    ); -	ao_dbg_long_delay(); -	ao_dbg_send_bits(DBG_CLOCK|DBG_DATA|DBG_RESET_N, DBG_CLOCK|DBG_DATA|DBG_RESET_N); -	ao_delay(AO_RESET_HIGH_DELAY); +	ao_dbg_set_pins();									ao_reset_delay(); +	ao_dbg_send_bits(DBG_CLOCK|DBG_DATA|DBG_RESET_N, DBG_CLOCK|DBG_DATA|DBG_RESET_N);	ao_reset_delay(); +	ao_dbg_send_bits(DBG_CLOCK|DBG_DATA|DBG_RESET_N, DBG_CLOCK|DBG_DATA|    0      );	ao_reset_delay(); +	ao_dbg_send_bits(DBG_CLOCK|DBG_DATA|DBG_RESET_N, DBG_CLOCK|DBG_DATA|DBG_RESET_N);	ao_reset_delay(); +	ao_dbg_send_bits(DBG_CLOCK|DBG_DATA|DBG_RESET_N,     0    |DBG_DATA|DBG_RESET_N);	ao_reset_delay();  }  static void  | 
