diff --git a/bsp/board/include/boards/board_starter_kit_pic32mx1_2_5/board.cmake b/bsp/board/include/boards/board_starter_kit_pic32mx1_2_5/board.cmake new file mode 100644 index 000000000..66b6e4624 --- /dev/null +++ b/bsp/board/include/boards/board_starter_kit_pic32mx1_2_5/board.cmake @@ -0,0 +1,5 @@ +if(${_MSDK_BOARD_NAME_} STREQUAL "PIC32MX1_2_5_STARTER_KIT") + set(BOARD_PATH "include/boards/board_starter_kit_pic32mx1_2_5") + set(MCU_CARD FALSE) + set(SHIELD FALSE) +endif() diff --git a/bsp/board/include/boards/board_starter_kit_pic32mx1_2_5/board.h b/bsp/board/include/boards/board_starter_kit_pic32mx1_2_5/board.h new file mode 100644 index 000000000..508d8f8ff --- /dev/null +++ b/bsp/board/include/boards/board_starter_kit_pic32mx1_2_5/board.h @@ -0,0 +1,205 @@ +/**************************************************************************** +** +** Copyright (C) ${COPYRIGHT_YEAR} MikroElektronika d.o.o. +** Contact: https://www.mikroe.com/contact +** +** This file is part of the mikroSDK package +** +** Commercial License Usage +** +** Licensees holding valid commercial NECTO compilers AI licenses may use this +** file in accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The MikroElektronika Company. +** For licensing terms and conditions see +** https://www.mikroe.com/legal/software-license-agreement. +** For further information use the contact form at +** https://www.mikroe.com/contact. +** +** +** GNU Lesser General Public License Usage +** +** Alternatively, this file may be used for +** non-commercial projects under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** 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, +** OF MERCHANTABILITY, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED +** TO THE WARRANTIES 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. +** +****************************************************************************/ +/*! + * @file board.h + * @brief Main board pin mapping. + */ + +#ifndef _BOARD_H_ +#define _BOARD_H_ + +#ifdef __cplusplus +extern "C" +{ +#endif + +#define BOARD_NAME "PIC32MX1/2/5 STARTER KIT" + +#include "hal_target.h" + +// Mapping +#define HEADER_CONNECTOR_CN1_D1 PG15 +#define HEADER_CONNECTOR_CN1_D2 // Pin not routed +#define HEADER_CONNECTOR_CN1_D3 PG14 +#define HEADER_CONNECTOR_CN1_D4 PA6 +#define HEADER_CONNECTOR_CN1_D5 PG12 +#define HEADER_CONNECTOR_CN1_D6 PA7 +#define HEADER_CONNECTOR_CN1_D7 PE7 +#define HEADER_CONNECTOR_CN1_D8 PG13 +#define HEADER_CONNECTOR_CN1_D9 PE6 +#define HEADER_CONNECTOR_CN1_D10 PG0 +#define HEADER_CONNECTOR_CN1_D11 // Pin not routed +#define HEADER_CONNECTOR_CN1_D12 // Pin not routed +#define HEADER_CONNECTOR_CN1_D13 PE5 +#define HEADER_CONNECTOR_CN1_D14 PG1 +#define HEADER_CONNECTOR_CN1_D15 PE4 +#define HEADER_CONNECTOR_CN1_D16 PF1 +#define HEADER_CONNECTOR_CN1_D17 PE3 +#define HEADER_CONNECTOR_CN1_D18 PF0 +#define HEADER_CONNECTOR_CN1_D19 PE2 +#define HEADER_CONNECTOR_CN1_D20 PD12 +#define HEADER_CONNECTOR_CN1_D21 PE1 +#define HEADER_CONNECTOR_CN1_D22 PD13 +#define HEADER_CONNECTOR_CN1_D23 PE0 +#define HEADER_CONNECTOR_CN1_D24 PD6 +#define HEADER_CONNECTOR_CN1_D25 PD5 +#define HEADER_CONNECTOR_CN1_D26 PD7 +#define HEADER_CONNECTOR_CN1_D27 PD11 +#define HEADER_CONNECTOR_CN1_D28 PD4 +#define HEADER_CONNECTOR_CN1_D29 PD10 +#define HEADER_CONNECTOR_CN1_D30 PC13 +#define HEADER_CONNECTOR_CN1_D31 PC14 +#define HEADER_CONNECTOR_CN1_D32 PC14 +#define HEADER_CONNECTOR_CN1_D33 // Pin not routed +#define HEADER_CONNECTOR_CN1_D34 // Pin not routed +#define HEADER_CONNECTOR_CN1_D35 PC1 +#define HEADER_CONNECTOR_CN1_D36 PB15 +#define HEADER_CONNECTOR_CN1_D37 PC2 +#define HEADER_CONNECTOR_CN1_D38 PD4 +#define HEADER_CONNECTOR_CN1_D39 PC3 +#define HEADER_CONNECTOR_CN1_D40 PD3 +#define HEADER_CONNECTOR_CN1_D41 PC4 +#define HEADER_CONNECTOR_CN1_D42 PD2 +#define HEADER_CONNECTOR_CN1_D43 // Pin not routed +#define HEADER_CONNECTOR_CN1_D44 PD1 +#define HEADER_CONNECTOR_CN1_D45 PG6 +#define HEADER_CONNECTOR_CN1_D46 PD0 +#define HEADER_CONNECTOR_CN1_D47 PG7 +#define HEADER_CONNECTOR_CN1_D48 PD12 +#define HEADER_CONNECTOR_CN1_D49 PG8 +#define HEADER_CONNECTOR_CN1_D50 PD11 +#define HEADER_CONNECTOR_CN1_D51 PG9 +#define HEADER_CONNECTOR_CN1_D52 PD10 +#define HEADER_CONNECTOR_CN1_D53 // Pin not routed +#define HEADER_CONNECTOR_CN1_D54 PD9 +#define HEADER_CONNECTOR_CN1_D55 // Pin not routed +#define HEADER_CONNECTOR_CN1_D56 // Pin not routed +#define HEADER_CONNECTOR_CN1_D57 // Pin not routed +#define HEADER_CONNECTOR_CN1_D58 PD8 +#define HEADER_CONNECTOR_CN1_D59 // Pin not routed +#define HEADER_CONNECTOR_CN1_D60 // Pin not routed +#define HEADER_CONNECTOR_CN1_D61 // Pin not routed +#define HEADER_CONNECTOR_CN1_D62 PB5 +#define HEADER_CONNECTOR_CN1_D63 PB5 +#define HEADER_CONNECTOR_CN1_D64 PB4 +#define HEADER_CONNECTOR_CN1_D65 PB4 +#define HEADER_CONNECTOR_CN1_D66 PB3 +#define HEADER_CONNECTOR_CN1_D67 PB3 +#define HEADER_CONNECTOR_CN1_D68 PB2 +#define HEADER_CONNECTOR_CN1_D69 PB2 +#define HEADER_CONNECTOR_CN1_D70 PB1 +#define HEADER_CONNECTOR_CN1_D71 PB8 +#define HEADER_CONNECTOR_CN1_D72 PB0 +#define HEADER_CONNECTOR_CN1_D73 PB9 +#define HEADER_CONNECTOR_CN1_D74 PA3 +#define HEADER_CONNECTOR_CN1_D75 // Pin not routed +#define HEADER_CONNECTOR_CN1_D76 PA2 +#define HEADER_CONNECTOR_CN1_D77 // Pin not routed +#define HEADER_CONNECTOR_CN1_D78 // Pin not routed +#define HEADER_CONNECTOR_CN1_D79 PA15 +#define HEADER_CONNECTOR_CN1_D80 // Pin not routed +#define HEADER_CONNECTOR_CN1_D81 PA14 +#define HEADER_CONNECTOR_CN1_D82 // Pin not routed +#define HEADER_CONNECTOR_CN1_D83 PE9 +#define HEADER_CONNECTOR_CN1_D84 PA14 +#define HEADER_CONNECTOR_CN1_D85 PE8 +#define HEADER_CONNECTOR_CN1_D86 PA15 +#define HEADER_CONNECTOR_CN1_D87 PD0 +#define HEADER_CONNECTOR_CN1_D88 PF2 +#define HEADER_CONNECTOR_CN1_D89 // Pin not routed +#define HEADER_CONNECTOR_CN1_D90 PF8 +#define HEADER_CONNECTOR_CN1_D91 PD10 +#define HEADER_CONNECTOR_CN1_D92 PD15 +#define HEADER_CONNECTOR_CN1_D93 PC4 +#define HEADER_CONNECTOR_CN1_D94 PD14 +#define HEADER_CONNECTOR_CN1_D95 PD0 +#define HEADER_CONNECTOR_CN1_D96 // Pin not routed +#define HEADER_CONNECTOR_CN1_D97 PB2 +#define HEADER_CONNECTOR_CN1_D98 // Pin not routed +#define HEADER_CONNECTOR_CN1_D99 // Pin not routed +#define HEADER_CONNECTOR_CN1_D100 // Pin not routed +#define HEADER_CONNECTOR_CN1_D101 PB10 +#define HEADER_CONNECTOR_CN1_D102 PB10 +#define HEADER_CONNECTOR_CN1_D103 PB11 +#define HEADER_CONNECTOR_CN1_D104 // Pin not routed +#define HEADER_CONNECTOR_CN1_D105 PB12 +#define HEADER_CONNECTOR_CN1_D106 PF13 +#define HEADER_CONNECTOR_CN1_D107 PB13 +#define HEADER_CONNECTOR_CN1_D108 PF12 +#define HEADER_CONNECTOR_CN1_D109 PF4 +#define HEADER_CONNECTOR_CN1_D110 PF4 +#define HEADER_CONNECTOR_CN1_D111 PF5 +#define HEADER_CONNECTOR_CN1_D112 PF5 +#define HEADER_CONNECTOR_CN1_D113 PA9 +#define HEADER_CONNECTOR_CN1_D114 PA9 +#define HEADER_CONNECTOR_CN1_D115 PA10 +#define HEADER_CONNECTOR_CN1_D116 PA10 +#define HEADER_CONNECTOR_CN1_D117 PG6 +#define HEADER_CONNECTOR_CN1_D118 PA5 +#define HEADER_CONNECTOR_CN1_D119 PG7 +#define HEADER_CONNECTOR_CN1_D120 PA4 +#define HEADER_CONNECTOR_CN1_D121 // Pin not routed +#define HEADER_CONNECTOR_CN1_D122 // Pin not routed +#define HEADER_CONNECTOR_CN1_D123 PG8 +#define HEADER_CONNECTOR_CN1_D124 PA1 +#define HEADER_CONNECTOR_CN1_D125 PG9 +#define HEADER_CONNECTOR_CN1_D126 PA0 +#define HEADER_CONNECTOR_CN1_D127 PB14 +#define HEADER_CONNECTOR_CN1_D128 PB6 +#define HEADER_CONNECTOR_CN1_D129 PB15 +#define HEADER_CONNECTOR_CN1_D130 // Pin not routed +#define HEADER_CONNECTOR_CN1_D131 // Pin not routed +#define HEADER_CONNECTOR_CN1_D132 PB7 + +// LEDS +#define LED1 PD0 +#define LED2 PD1 +#define LED3 PD2 + +// BUTTONS +#define BUTTON1 PD6 +#define BUTTON2 PD7 +#define BUTTON3 PD13 + +#ifdef __cplusplus +} +#endif + +#endif // _BOARD_H_ +// ------------------------------------------------------------------------- END diff --git a/changelog/v2.12.0/changelog.md b/changelog/v2.12.0/changelog.md index 2d48c4168..95b7644ba 100644 --- a/changelog/v2.12.0/changelog.md +++ b/changelog/v2.12.0/changelog.md @@ -52,6 +52,7 @@ Support added for following hardware: + **[2024-11-19](./new_hw/2024-11-19.md)** + **[2024-11-20](./new_hw/2024-11-20.md)** + **[2024-11-21](./new_hw/2024-11-21.md)** ++ **[2024-11-22](./new_hw/2024-11-22.md)** --- diff --git a/changelog/v2.12.0/new_hw/2024-11-22.md b/changelog/v2.12.0/new_hw/2024-11-22.md new file mode 100644 index 000000000..a8b7345bc --- /dev/null +++ b/changelog/v2.12.0/new_hw/2024-11-22.md @@ -0,0 +1,30 @@ +

+ MikroElektronika +

+ +--- + +**[BACK TO PREVIOUS FILE](../changelog.md)** + +--- + +# 2024-11-22 + +## Changes + +- [2024-11-22](#2024-11-22) + - [Changes](#changes) + - [NEW HARDWARE](#new-hardware) + +### NEW HARDWARE + +Support added for following hardware: + ++ [MCU CARD 5 for Kinetis MKV42F128VLH16](https://www.mikroe.com/mcu-card-5-for-kinetis-mkv42f128vlh16) ++ [PIC32MX1/2/5 Starter Kit](https://mplab-discover.microchip.com/v2/item/com.microchip.portal.evalboard/com.microchip.subcategories.modules-and-peripherals.analog.adc-modules.adc/mcu08.dm320100/1.0.0?view=about) + +--- + +**[BACK TO PREVIOUS FILE](../changelog.md)** + +--- diff --git a/resources/images/boards/board-starter-kit-pic32mx1-2-5.png b/resources/images/boards/board-starter-kit-pic32mx1-2-5.png new file mode 100644 index 000000000..ccd23cb11 Binary files /dev/null and b/resources/images/boards/board-starter-kit-pic32mx1-2-5.png differ diff --git a/resources/queries/boards/board_starter_kit_pic32mx1_2_5/Boards.json b/resources/queries/boards/board_starter_kit_pic32mx1_2_5/Boards.json new file mode 100644 index 000000000..0c0c2110e --- /dev/null +++ b/resources/queries/boards/board_starter_kit_pic32mx1_2_5/Boards.json @@ -0,0 +1,16 @@ +{ + "uid": "PIC32MX1_2_5_STARTER_KIT", + "name": "PIC32MX1/2/5 Starter Kit", + "icon": "images/boards/board-starter-kit-pic32mx1-2-5.png", + "default_device": "", + "soldered_device": "PIC32MX570F512L", + "category": "Starter boards", + "mikrobus_count": 0, + "sort_order": 7, + "min_pin_count": 0, + "display_socket": "NO_DISPLAY", + "sdk_config": "{\"_MSDK_BOARD_NAME_\":\"PIC32MX1_2_5_STARTER_KIT\"}", + "necto_config": "", + "display": "NO_DISPLAY", + "package_uid": "100/TQFP" +} diff --git a/resources/queries/boards/board_starter_kit_pic32mx1_2_5/LinkerTables.json b/resources/queries/boards/board_starter_kit_pic32mx1_2_5/LinkerTables.json new file mode 100644 index 000000000..b3a122a61 --- /dev/null +++ b/resources/queries/boards/board_starter_kit_pic32mx1_2_5/LinkerTables.json @@ -0,0 +1,20 @@ +{ + "board_uid": "PIC32MX1_2_5_STARTER_KIT", + "tables": [ + { + "BoardToDevice": { + "device_uid": "PIC32MX570F512L" + } + }, + { + "BoardToSocket": { + "socket_uid": ["NONE"] + } + }, + { + "SDKToBoard": { + "sdk_uid": "2.11.2+" + } + } + ] +} diff --git a/resources/queries/cards/mcu_card_5_for_kinetis_mkv42f128vlh16/Devices.json b/resources/queries/cards/mcu_card_5_for_kinetis_mkv42f128vlh16/Devices.json new file mode 100644 index 000000000..c2cf9a959 --- /dev/null +++ b/resources/queries/cards/mcu_card_5_for_kinetis_mkv42f128vlh16/Devices.json @@ -0,0 +1,18 @@ +{ + "def_file":"MKV42F128VLH16.json", + "family_uid":"KINETIS_V_SERIES", + "flash":"128", + "icon":"images/mcu_cards/mcu-card-5-for-kinetis.png", + "max_speed":"160.000", + "name":"MCU CARD 5 for Kinetis MKV42F128VLH16", + "ram":"24576", + "sdk_config":"{\"MCU_NAME\":\"MKV42F128VLH16\",\"CORE_NAME\":\"M4EF\",\"_MSDK_HAL_LOW_LEVEL_TARGET_\":\"mikroe\",\"_MSDK_ETH_PHY_CHIP_\":\"NULL\",\"_MSDK_MCU_CARD_NAME_\":\"MCU_CARD_5_FOR_KINETIS\"}", + "necto_config":"", + "uid":"MCU_CARD_5_FOR_KINETIS_MKV42F128VLH16", + "vendor":"NXP", + "compiler_flags":"", + "linker_flags":"", + "tft_socket":"1", + "sdk_support":"1", + "installer_package":"{\"package\":\"mcu_card_5_for_kinetis_mkv42f128vlh16\"}" +} diff --git a/resources/queries/cards/mcu_card_5_for_kinetis_mkv42f128vlh16/LinkerTables.json b/resources/queries/cards/mcu_card_5_for_kinetis_mkv42f128vlh16/LinkerTables.json new file mode 100644 index 000000000..7cfec995b --- /dev/null +++ b/resources/queries/cards/mcu_card_5_for_kinetis_mkv42f128vlh16/LinkerTables.json @@ -0,0 +1,39 @@ +{ + "device_uid": "MCU_CARD_5_FOR_KINETIS_MKV42F128VLH16", + "tables": [ + { + "BoardToDevice": { + "board_uid": [ + "FUSION_FOR_ARM_V8", + "FUSION_FOR_KINETIS_V8", + "UNI_CLICKER", + "UNI_DS_V8" + ] + } + }, + { + "CompilerToDevice": { + "compiler_uid": [ + "clang-llvm", + "gcc_arm_none_eabi", + "mikrocarm" + ] + } + }, + { + "DeviceToPackage": { + "package_uid": ["64/LQFP"] + } + }, + { + "DeviceToSocket": { + "socket_uid": ["SIBRAIN_SOCKET"] + } + }, + { + "SDKToDevice": { + "sdk_uid": "2.11.2+" + } + } + ] +}