Loading...
Searching...
No Matches
board_common.h
Go to the documentation of this file.
1/*
2 * SPDX-FileCopyrightText: 2014 Freie Universität Berlin, Hinnerk van Bruinehsen
3 * SPDX-FileCopyrightText: 2016 Laurent Navet <laurent.navet@gmail.com>
4 * SPDX-FileCopyrightText: 2017 Thomas Perrot <thomas.perrot@tupi.fr>
5 * SPDX-License-Identifier: LGPL-2.1-only
6 */
7
8#pragma once
9
23
24#include "cpu.h"
25#include "arduino_pinmap.h"
26
27#ifdef __cplusplus
28extern "C" {
29#endif
30
38#define STDIO_UART_BAUDRATE (9600U)
40
45#ifdef CPU_ATMEGA328P
46#define LED0_PIN GPIO_PIN(1, 5)
47#define LED0_MASK (1 << DDB5)
48#define LED0_ON (PORTB |= LED0_MASK)
49#define LED0_OFF (PORTB &= ~LED0_MASK)
50#define LED0_TOGGLE (PORTB ^= LED0_MASK)
51#endif
52
53#ifdef CPU_ATMEGA32U4
54#define LED0_PIN GPIO_PIN(2, 7)
55#define LED0_MASK (1 << DDC7)
56#define LED1_PIN GPIO_PIN(1, 0)
57#define LED1_MASK (1 << DDB0)
58#define LED2_PIN GPIO_PIN(3, 5)
59#define LED2_MASK (1 << DDD5)
60#endif
61
62#ifdef CPU_ATMEGA2560
63#define LED0_PIN GPIO_PIN(1, 7)
64#define LED0_MASK (1 << DDB7)
65#define LED0_ON (PORTB |= LED0_MASK)
66#define LED0_OFF (PORTB &= ~LED0_MASK)
67#define LED0_TOGGLE (PORTB ^= LED0_MASK)
68#endif
69
70#ifdef CPU_ATMEGA32U4
71#define LED0_ON (PORTC |= LED0_MASK)
72#define LED0_OFF (PORTC &= ~LED0_MASK)
73#define LED0_TOGGLE (PORTC ^= LED0_MASK)
74#define LED1_OFF (PORTB |= LED1_MASK)
75#define LED1_ON (PORTB &= ~LED1_MASK)
76#define LED1_TOGGLE (PORTB ^= LED1_MASK)
77#define LED2_OFF (PORTD |= LED2_MASK)
78#define LED2_ON (PORTD &= ~LED2_MASK)
79#define LED2_TOGGLE (PORTD ^= LED2_MASK)
80#endif
82
87#define LED_PANIC LED0_ON
89
94#define CPU_ATMEGA_CLK_SCALE_INIT CPU_ATMEGA_CLK_SCALE_DIV1
96
101#define XTIMER_WIDTH (16)
102#define XTIMER_HZ (250000UL)
103#define XTIMER_BACKOFF (40)
105
110#define CONFIG_ZTIMER_USEC_TYPE ZTIMER_TYPE_PERIPH_TIMER
111#define CONFIG_ZTIMER_USEC_DEV (TIMER_DEV(0))
112#define CONFIG_ZTIMER_USEC_FREQ (250000LU)
113#define CONFIG_ZTIMER_USEC_WIDTH (16)
114#ifndef CONFIG_ZTIMER_USEC_ADJUST_SET
115#define CONFIG_ZTIMER_USEC_ADJUST_SET (128)
116#endif
117#ifndef CONFIG_ZTIMER_USEC_ADJUST_SLEEP
118#define CONFIG_ZTIMER_USEC_ADJUST_SLEEP (116)
119#endif
121
122#ifdef __cplusplus
123}
124#endif
125
Compatibility wrapper for arduino_iomap.h.