-
Notifications
You must be signed in to change notification settings - Fork 29
/
Copy patharduino_variant.cpp
69 lines (63 loc) · 2.05 KB
/
arduino_variant.cpp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
/*
* This file is part of the Silicon Labs Arduino Core
*
* The MIT License (MIT)
*
* Copyright 2024 Silicon Laboratories Inc. www.silabs.com
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
* in the Software without restriction, including without limitation the rights
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
* copies of the Software, and to permit persons to whom the Software is
* furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in
* all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
#include "Arduino.h"
#include "arduino_variant.h"
#include "arduino_i2c_config.h"
#include "arduino_spi_config.h"
extern "C" {
#include "sl_system_init.h"
}
void init_arduino_variant()
{
sl_system_init();
}
// Variant pin mapping - maps Arduino pin numbers to Silabs ports/pins
// D0 -> Dmax -> A0 -> Amax -> Other peripherals
PinName gPinNames[] = {
PC0, // D0 - SPI SDO - WU
PC1, // D1 - SPI SDI
PC2, // D2 - SPI SCK
PB2, // D3 - SPI CS
PA5, // D4 - Tx - WU
PA6, // D5 - Rx
PD2, // D6 - SDA - WU
PA8, // A0 - Tx1
PA7, // A1 - Rx1
PB0, // A2
PB1, // A3 - WU
PA4, // A4 - LED
PB3, // A5 - Button - WU
PD3, // A6 - SCL
PA4, // LED - 14
PB3, // Button - 15
PC6, // Sensor array power - 16
PC7, // Microphone power - WU - 17
PB4, // IMU power - 18
};
unsigned int getPinCount()
{
return sizeof(gPinNames) / sizeof(gPinNames[0]);
}