ChibiOS-Contrib/demos/HT32/HT32F165x_USB_DFU/board/board.c

89 lines
2.2 KiB
C

#include "board.h"
#include "hal.h"
#define PBIT(PORT, LINE) ((PAL_PORT(LINE) == PORT) ? (1 << PAL_PAD(LINE)) : 0)
#define PAFIO_L(PORT, LINE, AF) (((PAL_PORT(LINE) == PORT) && (PAL_PAD(LINE) < 8)) ? (AF << (PAL_PAD(LINE) << 2)) : 0)
#define PAFIO_H(PORT, LINE, AF) (((PAL_PORT(LINE) == PORT) && (PAL_PAD(LINE) >= 8)) ? (AF << ((PAL_PAD(LINE) - 8) << 2)) : 0)
#define PAFIO(PORT, N, LINE, AF) ((N) ? PAFIO_H(PORT, LINE, AF) : PAFIO_L(PORT, LINE, AF))
#define OPEN_DRAIN(PORT) (\
0)
#define OUT_BITS(PORT) (\
0)
#define IN_BITS(PORT) (\
0)
// Alternate Functions
#define AF_BITS(PORT, N) (\
0)
/**
* @brief PAL setup.
* @details Digital I/O ports static configuration as defined in @p board.h.
* This variable is used by the HAL when initializing the PAL driver.
*/
const PALConfig pal_default_config = {
// GPIO A
.setup[0] = {
.DIR = OUT_BITS(IOPORTA),
.INE = IN_BITS(IOPORTA),
.PU = IN_BITS(IOPORTA),
.PD = 0x0000,
.OD = OPEN_DRAIN(IOPORTA),
.DRV = 0x0000,
.LOCK = 0x0000,
.OUT = 0x0000,
.CFG[0] = AF_BITS(IOPORTA, 0),
.CFG[1] = AF_BITS(IOPORTA, 1),
},
// GPIO B
.setup[1] = {
.DIR = OUT_BITS(IOPORTB),
.INE = IN_BITS(IOPORTB),
.PU = IN_BITS(IOPORTB),
.PD = 0x0000,
.OD = OPEN_DRAIN(IOPORTB),
.DRV = 0x0000,
.LOCK = 0x0000,
.OUT = 0x0000,
.CFG[0] = AF_BITS(IOPORTB, 0),
.CFG[1] = AF_BITS(IOPORTB, 1),
},
// GPIO C
.setup[2] = {
.DIR = OUT_BITS(IOPORTC),
.INE = IN_BITS(IOPORTC),
.PU = IN_BITS(IOPORTC),
.PD = 0x0000,
.OD = OPEN_DRAIN(IOPORTC),
.DRV = 0x0000,
.LOCK = 0x0000,
.OUT = 0x0000,
.CFG[0] = AF_BITS(IOPORTC, 0),
.CFG[1] = AF_BITS(IOPORTC, 1),
},
// GPIO D
.setup[3] = {
.DIR = OUT_BITS(IOPORTD),
.INE = IN_BITS(IOPORTD),
.PU = IN_BITS(IOPORTD),
.PD = 0x0000,
.OD = OPEN_DRAIN(IOPORTD),
.DRV = 0x0000,
.LOCK = 0x0000,
.OUT = 0x0000,
.CFG[0] = AF_BITS(IOPORTD, 0),
.CFG[1] = AF_BITS(IOPORTD, 1),
},
.ESSR[0] = 0x00000000,
.ESSR[1] = 0x00000000,
};
void boardInit(void) {
}