usbtest/src/util.c

28 lines
656 B
C

#include <libopencm3/stm32/gpio.h>
#include <SEGGER_RTT.h>
#include "delay.h"
#include "util.h"
void hexdump(char *buf, size_t size, uint32_t width) {
if (width == 0) {
width = 16;
}
SEGGER_RTT_SetFlagsUpBuffer(0, SEGGER_RTT_MODE_BLOCK_IF_FIFO_FULL);
for (unsigned int i = 0; i < size; i++) {
SEGGER_RTT_printf(0, "%.2x ", buf[i]);
if ((i+1) % width == 0) {
SEGGER_RTT_printf(0,"\n");
}
}
SEGGER_RTT_printf(0,"\n");
SEGGER_RTT_SetFlagsUpBuffer(0, SEGGER_RTT_MODE_DEFAULT);
}
void reset_usb_bus(void) {
gpio_set(GPIOB, GPIO9);
delay_ms(10);
gpio_clear(GPIOB, GPIO9);
}