File tree Expand file tree Collapse file tree 4 files changed +15
-5
lines changed Expand file tree Collapse file tree 4 files changed +15
-5
lines changed Original file line number Diff line number Diff line change @@ -193,9 +193,6 @@ __STATIC_INLINE void PORT_JTAG_SETUP (void) {
193193 ;
194194}
195195
196- #ifdef PIN_nRESET
197- #error "Reset PIN not supported"
198- #endif
199196
200197/** Setup SWD I/O pins: SWCLK, SWDIO, and nRESET.
201198Configures the DAP Hardware I/O pins for Serial Wire Debug (SWD) mode:
@@ -378,7 +375,13 @@ __STATIC_FORCEINLINE uint32_t PIN_nRESET_IN (void) {
378375 - 1: release device hardware reset.
379376*/
380377__STATIC_FORCEINLINE void PIN_nRESET_OUT (uint32_t bit ) {
381- ;
378+ #ifdef PIN_nRESET
379+ if (bit & 0x1 ) {
380+ gpio_set (GPIO_REG (PIN_nRESET ), GPIO_IDX (PIN_nRESET ));
381+ } else {
382+ gpio_clear (GPIO_REG (PIN_nRESET ), GPIO_IDX (PIN_nRESET ));
383+ }
384+ #endif
382385}
383386
384387///@}
Original file line number Diff line number Diff line change @@ -45,6 +45,7 @@ COMPILER_ASSERT(DAPLINK_HIC_ID == DAPLINK_HIC_ID_NRF52840);
4545#define RESET_BUTTON_PULL NRF_GPIO_PIN_PULLUP
4646#define PIN_SWCLK NRF_GPIO_PIN_MAP(0, 9) // SWDCLK (Output)
4747#define PIN_SWDIO NRF_GPIO_PIN_MAP(0, 10) // SWDIO (Input/Output)
48+ #define PIN_nRESET NRF_GPIO_PIN_MAP(0, 24) // nRESET Pin
4849#undef LED_RUNNING // Target Running LED (Output)
4950#undef LED_CONNECTED // Connected LED (Output)
5051#define LED_HID NRF_GPIO_PIN_MAP(0, 6) // HID LED
@@ -63,6 +64,7 @@ COMPILER_ASSERT(DAPLINK_HIC_ID == DAPLINK_HIC_ID_NRF52840);
6364#define RESET_BUTTON_PULL NRF_GPIO_PIN_PULLUP
6465#define PIN_SWCLK NRF_GPIO_PIN_MAP(1, 13) // SWDCLK (Output)
6566#define PIN_SWDIO NRF_GPIO_PIN_MAP(1, 14) // SWDIO (Input/Output)
67+ #define PIN_nRESET NRF_GPIO_PIN_MAP(0, 15) // nRESET Pin
6668#undef LED_RUNNING // Target Running LED (Output)
6769#undef LED_CONNECTED // Connected LED (Output)
6870#define LED_HID NRF_GPIO_PIN_MAP(0, 26) // HID LED
Original file line number Diff line number Diff line change @@ -44,7 +44,9 @@ void gpio_init(void)
4444 gpio_cfg_output (GPIO_REG (LED_HID ), GPIO_IDX (LED_HID ));
4545 gpio_cfg_output (GPIO_REG (LED_MSC ), GPIO_IDX (LED_MSC ));
4646 gpio_cfg_output (GPIO_REG (LED_CDC ), GPIO_IDX (LED_CDC ));
47-
47+ #ifdef PIN_nRESET
48+ gpio_cfg_output (GPIO_REG (PIN_nRESET ), GPIO_IDX (PIN_nRESET ));
49+ #endif
4850 gpio_cfg_input (GPIO_REG (RESET_BUTTON ), GPIO_IDX (RESET_BUTTON ), RESET_BUTTON_PULL );
4951}
5052
Original file line number Diff line number Diff line change @@ -33,6 +33,9 @@ COMPILER_ASSERT(GPIO_CHECK_PRESENT_NRF52840(RESET_BUTTON));
3333COMPILER_ASSERT (GPIO_CHECK_PRESENT_NRF52840 (LED_HID ));
3434COMPILER_ASSERT (GPIO_CHECK_PRESENT_NRF52840 (LED_MSC ));
3535COMPILER_ASSERT (GPIO_CHECK_PRESENT_NRF52840 (LED_CDC ));
36+ #ifdef PIN_nRESET
37+ COMPILER_ASSERT (GPIO_CHECK_PRESENT_NRF52840 (PIN_nRESET ));
38+ #endif
3639#else
3740#ifdef NRF528XX_DYNAMIC_PIN
3841uint32_t uart_tx_pin ;
You can’t perform that action at this time.
0 commit comments