mirror of
https://github.com/RT-Thread/rt-thread.git
synced 2026-02-04 13:01:39 +00:00
[add][RTduino] Fitter RTduino in frdm-mcxa346 (#11067)
* add mcxa346-RTduino
This commit is contained in:
@@ -16,7 +16,7 @@
|
||||
#include <rtthread.h>
|
||||
#include <rtdevice.h>
|
||||
|
||||
|
||||
#define GET_PINS(PORTx, PINx) (32 * PORTx + PINx)
|
||||
extern int rt_hw_pin_init(void);
|
||||
|
||||
#endif /* __DRV_PIN_H__ */
|
||||
|
||||
@@ -0,0 +1,14 @@
|
||||
CONFIG_PKG_USING_RTDUINO=y
|
||||
CONFIG_PKG_RTDUINO_PATH="/packages/arduino/RTduino"
|
||||
CONFIG_RTDUINO_THREAD_SIZE=2048
|
||||
CONFIG_RTDUINO_THREAD_PRIO=30
|
||||
CONFIG_RTDUINO_SUPPORT_HIGH_PRECISION_MICROS=y
|
||||
CONFIG_PKG_USING_RTDUINO_LATEST_VERSION=y
|
||||
CONFIG_PKG_RTDUINO_VER="latest"
|
||||
CONFIG_BSP_USING_I2C=y
|
||||
CONFIG_BSP_USING_I2C3=y
|
||||
CONFIG_BSP_USING_SPI=y
|
||||
CONFIG_BSP_USING_SPI1=y
|
||||
CONFIG_BSP_USING_ADC=y
|
||||
CONFIG_BSP_USING_PWM=y
|
||||
CONFIG_BSP_USING_ARDUINO=y
|
||||
@@ -7,6 +7,9 @@ src = Glob('*.c')
|
||||
|
||||
group = DefineGroup('Applications', src, depend = [''], CPPPATH = CPPPATH)
|
||||
|
||||
if GetDepend(['PKG_USING_RTDUINO']) and not GetDepend(['RTDUINO_NO_SETUP_LOOP']):
|
||||
src += ['arduino_main.cpp']
|
||||
|
||||
list = os.listdir(cwd)
|
||||
for item in list:
|
||||
if os.path.isfile(os.path.join(cwd, item, 'SConscript')):
|
||||
|
||||
25
bsp/nxp/mcx/mcxa/frdm-mcxa346/applications/arduino_main.cpp
Normal file
25
bsp/nxp/mcx/mcxa/frdm-mcxa346/applications/arduino_main.cpp
Normal file
@@ -0,0 +1,25 @@
|
||||
/*
|
||||
* Copyright (c) 2006-2023, RT-Thread Development Team
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*
|
||||
* Change Logs:
|
||||
* Date Author Notes
|
||||
* 2025-12-08 westcity-yolo first version
|
||||
*
|
||||
*/
|
||||
|
||||
#include <Arduino.h>
|
||||
|
||||
void setup(void)
|
||||
{
|
||||
/* put your setup code here, to run once: */
|
||||
Serial.begin();
|
||||
Serial.println("Hello RTduino!");
|
||||
}
|
||||
|
||||
void loop(void)
|
||||
{
|
||||
/* put your main code here, to run repeatedly: */
|
||||
delay(1000);
|
||||
}
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 95 KiB |
@@ -0,0 +1,9 @@
|
||||
from building import *
|
||||
|
||||
cwd = GetCurrentDir()
|
||||
src = Glob('*.c') + Glob('*.cpp')
|
||||
inc = [cwd]
|
||||
|
||||
group = DefineGroup('RTduino-pinout', src, depend = ['PKG_USING_RTDUINO'], CPPPATH = inc)
|
||||
|
||||
Return('group')
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 894 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 776 KiB |
@@ -0,0 +1,49 @@
|
||||
/*
|
||||
* Copyright (c) 2006-2023, RT-Thread Development Team
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*
|
||||
* Change Logs:
|
||||
* Date Author Notes
|
||||
* 2025-12-08 westcity-yolo first version
|
||||
*
|
||||
*/
|
||||
|
||||
#include <Arduino.h>
|
||||
#include <board.h>
|
||||
#include <drv_pin.h>
|
||||
#include "pins_arduino.h"
|
||||
|
||||
/*
|
||||
* {Arduino Pin, RT-Thread Pin [, Device Name, Channel]}
|
||||
* [] means optional
|
||||
* Digital pins must NOT give the device name and channel.
|
||||
* Analog pins MUST give the device name and channel(ADC, PWM or DAC).
|
||||
* Arduino Pin must keep in sequence.
|
||||
*/
|
||||
const pin_map_t pin_map_table[]=
|
||||
{
|
||||
{D0, GET_PINS(2,3), "uart2"}, /* Serial2-RX */
|
||||
{D1, GET_PINS(2,2), "uart2"}, /* Serial2-TX */
|
||||
{D2, GET_PINS(3,31)},
|
||||
{D3, GET_PINS(3,14), "pwm1", 1}, /* PWM */
|
||||
{D4, GET_PINS(4,7)},
|
||||
{D5, GET_PINS(3,1), "pwm0", 0}, /* PWM */
|
||||
{D6, GET_PINS(3,17), "pwm1", 0}, /* PWM */
|
||||
{D7, GET_PINS(3,22)},
|
||||
{D8, GET_PINS(4,3)},
|
||||
{D9, GET_PINS(3,13), "pwm1", 2}, /* PWM */
|
||||
{D10, GET_PINS(3,11),"spi1"}, /* SPI-SS */
|
||||
{D11, GET_PINS(3,8), "spi1"}, /* SPI-SDO */
|
||||
{D12, GET_PINS(3,9), "spi1"}, /* SPI-SDI */
|
||||
{D13, GET_PINS(3,10),"spi1"}, /* SPI-SCK */
|
||||
{D18, GET_PINS(1,8),"i2c2"}, /* I2C-SDA (Wire) */
|
||||
{D19, GET_PINS(1,9),"i2c2"}, /* I2C-SCL (Wire) */
|
||||
{A0, GET_PINS(1,14),"adc1", 12}, /* ADC */
|
||||
{A1, GET_PINS(2,5), "adc1", 1}, /* ADC */
|
||||
{A2, GET_PINS(2,7),"adc0", 7}, /* ADC */
|
||||
{A3, GET_PINS(3,30),"adc1", 21},
|
||||
{A4, GET_PINS(1,0),"i2c1"}, /* I2C-SDA (Wire) */
|
||||
{A5, GET_PINS(1,1),"i2c1"}, /* I2C-SCL (Wire) */
|
||||
|
||||
};
|
||||
@@ -0,0 +1,58 @@
|
||||
/*
|
||||
* Copyright (c) 2006-2023, RT-Thread Development Team
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*
|
||||
* Change Logs:
|
||||
* Date Author Notes
|
||||
* 2025-12-08 westcity-yolo first version
|
||||
*
|
||||
*/
|
||||
|
||||
#ifndef Pins_Arduino_h
|
||||
#define Pins_Arduino_h
|
||||
|
||||
|
||||
|
||||
/* pins alias. Must keep in sequence */
|
||||
#define D0 (0)
|
||||
#define D1 (1)
|
||||
#define D2 (2)
|
||||
#define D3 (3)
|
||||
#define D4 (4)
|
||||
#define D5 (5)
|
||||
#define D6 (6)
|
||||
#define D7 (7)
|
||||
#define D8 (8)
|
||||
#define D9 (9)
|
||||
#define D10 (10)
|
||||
#define D11 (11)
|
||||
#define D12 (12)
|
||||
#define D13 (13)
|
||||
#define D18 (14)
|
||||
#define D19 (15)
|
||||
|
||||
#define A0 (16)
|
||||
#define A1 (17)
|
||||
#define A2 (18)
|
||||
#define A3 (19)
|
||||
#define A4 (20)
|
||||
#define A5 (21)
|
||||
#define A6 (22)
|
||||
#define A7 (23)
|
||||
|
||||
#define RTDUINO_PIN_MAX_LIMIT A7 /* pin number max limit check */
|
||||
|
||||
#define F_CPU 180000000L /* CPU:180MHz */
|
||||
|
||||
/* i2c2 : P(,1_8-SDA P(,1_9-SCL */
|
||||
#define RTDUINO_DEFAULT_IIC_BUS_NAME "i2c2"
|
||||
|
||||
/* Serial2 : P(,2_2-TX P(,2_3-RX */
|
||||
#define RTDUINO_SERIAL2_DEVICE_NAME "uart2"
|
||||
|
||||
/* spi1 : P(,3_8-SDO P(,3_9-SDI P(,3_10-SCK P(,3_11-SS */
|
||||
|
||||
#define RTDUINO_DEFAULT_SPI_BUS_NAME "spi1"
|
||||
|
||||
#endif /* Pins_Arduino_h */
|
||||
@@ -139,6 +139,20 @@ menu "On-chip Peripheral Drivers"
|
||||
|
||||
endmenu
|
||||
|
||||
menu "Onboard Peripheral Drivers"
|
||||
config BSP_USING_ARDUINO
|
||||
bool "Compatible with Arduino Ecosystem (RTduino)"
|
||||
select PKG_USING_RTDUINO
|
||||
select BSP_USING_UART2
|
||||
select BSP_USING_GPIO
|
||||
select BSP_USING_ADC0
|
||||
select BSP_USING_PWM0
|
||||
select BSP_USING_PWM1
|
||||
select BSP_USING_I2C1
|
||||
select BSP_USING_I2C2
|
||||
select BSP_USING_SPI1
|
||||
endmenu
|
||||
|
||||
|
||||
menu "Board extended module Drivers"
|
||||
menuconfig BSP_USING_RW007
|
||||
|
||||
Reference in New Issue
Block a user