kopia lustrzana https://github.com/stlink-org/stlink
added connect under reset code
rodzic
937f4d6aea
commit
ea17f9ac77
|
@ -0,0 +1,3 @@
|
|||
{
|
||||
"cmake.configureOnOpen": false
|
||||
}
|
|
@ -937,7 +937,7 @@ static stlink_backend_t _stlink_usb_backend = {
|
|||
_stlink_usb_set_swdclk
|
||||
};
|
||||
|
||||
stlink_t *stlink_open_usb(enum ugly_loglevel verbose, bool reset, char serial[STLINK_SERIAL_MAX_SIZE], int freq) {
|
||||
stlink_t *stlink_open_usb(enum ugly_loglevel verbose, int reset, char serial[STLINK_SERIAL_MAX_SIZE], int freq) {
|
||||
stlink_t* sl = NULL;
|
||||
struct stlink_libusb* slu = NULL;
|
||||
int ret = -1;
|
||||
|
@ -1145,9 +1145,10 @@ stlink_t *stlink_open_usb(enum ugly_loglevel verbose, bool reset, char serial[ST
|
|||
break;
|
||||
}
|
||||
|
||||
if (reset == 2) stlink_jtag_reset(sl,0);
|
||||
if (stlink_current_mode(sl) != STLINK_DEV_DEBUG_MODE) stlink_enter_swd_mode(sl);
|
||||
|
||||
if (reset) {
|
||||
if (reset == 1) {
|
||||
if ( sl->version.stlink_v > 1) stlink_jtag_reset(sl, 2);
|
||||
stlink_reset(sl);
|
||||
usleep(10000);
|
||||
|
|
|
@ -68,7 +68,7 @@ extern "C" {
|
|||
* @retval NULL Error while opening the stlink
|
||||
* @retval !NULL Stlink found and ready to use
|
||||
*/
|
||||
stlink_t *stlink_open_usb(enum ugly_loglevel verbose, bool reset, char serial[STLINK_SERIAL_MAX_SIZE], int freq);
|
||||
stlink_t *stlink_open_usb(enum ugly_loglevel verbose, int reset, char serial[STLINK_SERIAL_MAX_SIZE], int freq);
|
||||
size_t stlink_probe_usb(stlink_t **stdevs[]);
|
||||
void stlink_probe_usb_free(stlink_t **stdevs[], size_t size);
|
||||
|
||||
|
|
23
tests/usb.c
23
tests/usb.c
|
@ -1,15 +1,32 @@
|
|||
#include <stdio.h>
|
||||
|
||||
#include <stlink.h>
|
||||
#include <string.h>
|
||||
|
||||
static void usage(void)
|
||||
{
|
||||
puts("test-usb --reset");
|
||||
puts("test-usb --no-reset");
|
||||
}
|
||||
|
||||
int main(int ac, char** av) {
|
||||
(void)ac;
|
||||
(void)av;
|
||||
|
||||
stlink_t* sl;
|
||||
struct stlink_reg regs;
|
||||
int reset = 0;
|
||||
|
||||
sl = stlink_open_usb(10, 1, NULL, 0);
|
||||
if (ac == 2) {
|
||||
if (strcmp(av[1], "--reset") == 0)
|
||||
reset = 2;
|
||||
if (strcmp(av[1], "--no-reset") == 0)
|
||||
reset = 1;
|
||||
}
|
||||
if (reset == 0) {
|
||||
usage();
|
||||
return 0;
|
||||
}
|
||||
|
||||
sl = stlink_open_usb(10, reset, NULL, 0);
|
||||
if (sl != NULL) {
|
||||
printf("-- version\n");
|
||||
stlink_version(sl);
|
||||
|
|
Ładowanie…
Reference in New Issue