diff --git a/STM32F1/boards.txt b/STM32F1/boards.txt index 2c027fd..becf13d 100644 --- a/STM32F1/boards.txt +++ b/STM32F1/boards.txt @@ -284,4 +284,4 @@ genericSTM32F103Z.menu.upload_method.serialMethod.upload.tool=serial_upload genericSTM32F103Z.menu.upload_method.STLinkMethod=STLink genericSTM32F103Z.menu.upload_method.STLinkMethod.upload.protocol=STLink genericSTM32F103Z.menu.upload_method.STLinkMethod.upload.tool=stlink_upload -genericSTM32F103Z.menu.upload_method.STLinkMethod.build.upload_flags=-DCONFIG_MAPLE_MINI_NO_DISABLE_DEBUG=1 +genericSTM32F103Z.menu.upload_method.STLinkMethod.build.upload_flags=-DCONFIG_MAPLE_MINI_NO_DISABLE_DEBUG=1 -DSERIAL_USB diff --git a/STM32F1/cores/maple/boards.h b/STM32F1/cores/maple/boards.h index 403250e..518f9a0 100644 --- a/STM32F1/cores/maple/boards.h +++ b/STM32F1/cores/maple/boards.h @@ -167,7 +167,9 @@ bool boardUsesPin(uint8 pin); /** * @brief Feature test: nonzero iff the board has SerialUSB. */ -#define BOARD_HAVE_SERIALUSB (defined(BOARD_USB_DISC_DEV) && \ - defined(BOARD_USB_DISC_BIT)) + //Roger Clark. Change so that BOARD_HAVE_SERIALUSB is always true, so that it can be controller by -DSERIAL_USB +#define BOARD_HAVE_SERIALUSB 1 + +/*(defined(BOARD_USB_DISC_DEV) && defined(BOARD_USB_DISC_BIT))*/ #endif diff --git a/STM32F1/variants/generic_stm32f103z/wirish/boards_setup.cpp b/STM32F1/variants/generic_stm32f103z/wirish/boards_setup.cpp index 7f5bbbe..2580747 100644 --- a/STM32F1/variants/generic_stm32f103z/wirish/boards_setup.cpp +++ b/STM32F1/variants/generic_stm32f103z/wirish/boards_setup.cpp @@ -74,11 +74,26 @@ namespace wirish { } __weak void board_setup_usb(void) { -#if BOARD_HAVE_SERIALUSB + + + #ifdef SERIAL_USB + + //gpio_set_mode(PIN_MAP[PA12].gpio_device, PIN_MAP[PA12].gpio_bit, GPIO_OUTPUT_PP); + gpio_write_bit(PIN_MAP[PA12].gpio_device, PIN_MAP[PA12].gpio_bit,0); + + + for(volatile unsigned int i=0;i<5000000;i++) + { + asm("nop"); + } + gpio_set_mode(PIN_MAP[PA12].gpio_device, PIN_MAP[PA12].gpio_bit, GPIO_INPUT_FLOATING); + for(volatile unsigned int i=0;i<5000000;i++) + { + asm("nop"); + } Serial.begin();// Roger Clark. Changed SerialUSB to Serial for Arduino sketch compatibility #endif -#endif } __weak void series_init(void) {