Add comments on register magic numbers.
[fw/stlink] / src / test_usb.c
1 #include <stdio.h>
2 #include "stlink-common.h"
3
4
5 int main(int ac, char** av) {
6     stlink_t* sl;
7
8     sl = stlink_open_usb(NULL, 10);
9     if (sl != NULL) {
10         printf("-- version\n");
11         stlink_version(sl);
12         
13         printf("mode before doing anything: %d\n", stlink_current_mode(sl));
14
15         if (stlink_current_mode(sl) == STLINK_DEV_DFU_MODE) {
16             printf("-- exit_dfu_mode\n");
17             stlink_exit_dfu_mode(sl);
18         }
19
20         printf("-- enter_swd_mode\n");
21         stlink_enter_swd_mode(sl);
22
23         printf("-- mode after entering swd mode: %d\n", stlink_current_mode(sl));
24
25         printf("-- chip id: %#x\n", stlink_chip_id(sl));
26         printf("-- core_id: %#x\n", stlink_core_id(sl));
27
28         cortex_m3_cpuid_t cpuid;
29         stlink_cpu_id(sl, &cpuid);
30         printf("cpuid:impl_id = %0#x, variant = %#x\n", cpuid.implementer_id, cpuid.variant);
31         printf("cpuid:part = %#x, rev = %#x\n", cpuid.part, cpuid.revision);
32
33         printf("-- read_sram\n");
34         static const uint32_t sram_base = 0x8000000;
35         uint32_t off;
36         for (off = 0; off < 16; off += 4)
37             stlink_read_mem32(sl, sram_base + off, 4);
38
39         printf("-- read_mem, cpuid\n");
40         stlink_read_mem32(sl, 0xe000e008, 4);  // ACTLR        
41         // no idea what reg this is..  */
42         /*     stlink_read_mem32(sl, 0xe000ed90, 4);
43         // no idea what register this is...
44         /*     stlink_read_mem32(sl, 0xe000edf0, 4);
45         // offset 0xC into TIM11 register? TIMx_DIER?
46         /*     stlink_read_mem32(sl, 0x4001100c, 4); */
47
48         printf("-- status\n");
49         stlink_status(sl);
50
51         printf("-- reset\n");
52         stlink_reset(sl);
53
54         printf("-- status\n");
55         stlink_status(sl);
56
57         printf("-- step\n");
58         stlink_step(sl);
59
60         printf("-- run\n");
61         stlink_run(sl);
62
63         printf("-- exit_debug_mode\n");
64         stlink_exit_debug_mode(sl);
65
66         stlink_close(sl);
67     }
68
69     return 0;
70 }