QDNix
Quick’n’dirty *NIX
register.h
1 #ifndef SYS_ARM_SOC_NRF52832_H
2 # define SYS_ARM_SOC_NRF52832_H 1
3 
4 # include <stdint.h>
5 
6 typedef struct {
7  uint32_t reserved0[321];
8  uint32_t out;
9  uint32_t outset;
10  uint32_t outclr;
11  uint32_t in;
12  uint32_t dir;
13  uint32_t dirset;
14  uint32_t dirclr;
15  uint32_t latch;
16  uint32_t detectmode;
17  uint32_t reserved1[118];
18  uint32_t pin_cnf[32];
19 } GpioRegister;
20 
21 typedef struct {
22  uint32_t tasks_startrx;
23  uint32_t tasks_stoprx;
24  uint32_t tasks_starttx;
25  uint32_t tasks_stoptx;
26  uint32_t reserved0[3];
27  uint32_t tasks_suspend;
28  uint32_t reserved1[56];
29  uint32_t events_cts;
30  uint32_t events_ncts;
31  uint32_t events_rxdrdy;
32  uint32_t reserved2[4];
33  uint32_t events_txdrdy;
34  uint32_t reserved3;
35  uint32_t events_error;
36  uint32_t reserved4[7];
37  uint32_t events_rxto;
38  uint32_t reserved5[46];
39  uint32_t shorts;
40  uint32_t reserved6[64];
41  uint32_t intenset;
42  uint32_t intenclr;
43  uint32_t reserved7[93];
44  uint32_t errorsrc;
45  uint32_t reserved8[31];
46  uint32_t enable;
47  uint32_t reserved9;
48  uint32_t pselrts;
49  uint32_t pseltxd;
50  uint32_t pselcts;
51  uint32_t pselrxd;
52  uint32_t rxd;
53  uint32_t txd;
54  uint32_t reserved10;
55  uint32_t baudrate;
56  uint32_t reserved11[17];
57  uint32_t config;
58 } UARTRegister;
59 
60 # define UART_REG ((UARTRegister *)0x40002000UL)
61 # define GPIO_REG ((GpioRegister *)0x50000000UL)
62 
63 /* P017 -> LED1 */
64 
65 #endif