[bsp][pico]: support pwm adc iic for pico rtduino (#8512)
This commit is contained in:
parent
06d3f29035
commit
c9abc1ba25
@ -44,16 +44,27 @@ menu "Onboard Peripheral Drivers"
|
||||
default y
|
||||
endif
|
||||
|
||||
config BSP_USING_ARDUINO
|
||||
config BSP_USING_ARDUINO
|
||||
bool "Compatible with Arduino Ecosystem (RTduino)"
|
||||
select PKG_USING_RTDUINO
|
||||
select BSP_USING_UART0
|
||||
select BSP_UART0_TX_PIN_0
|
||||
select BSP_UART0_RX_PIN_1
|
||||
select BSP_USING_UART1
|
||||
select BSP_UART1_TX_PIN_8
|
||||
select BSP_UART1_RX_PIN_9
|
||||
select BSP_USING_GPIO
|
||||
select BSP_USING_ADC
|
||||
select BSP_USING_ADC0
|
||||
select BSP_USING_ADC1
|
||||
select BSP_USING_ADC2
|
||||
select BSP_USING_PWM
|
||||
select BSP_USING_PWM0
|
||||
select BSP_USING_PWM1
|
||||
select BSP_USING_PWM2
|
||||
select BSP_USING_PWM3
|
||||
select BSP_USING_PWM4
|
||||
select BSP_USING_PWM5
|
||||
select BSP_USING_PWM6
|
||||
select BSP_USING_PWM7
|
||||
select BSP_USING_I2C
|
||||
select BSP_USING_I2C0
|
||||
imply RTDUINO_USING_SERVO
|
||||
default n
|
||||
|
||||
config BSP_USING_ON_CHIP_FLASH
|
||||
@ -121,7 +132,7 @@ menu "On-chip Peripheral Drivers"
|
||||
choice
|
||||
prompt "uart1 tx pin number (GP)"
|
||||
depends on BSP_USING_UART1
|
||||
default BSP_UART1_TX_PIN_4
|
||||
default BSP_UART1_TX_PIN_8
|
||||
config BSP_UART1_TX_PIN_4
|
||||
bool "4"
|
||||
config BSP_UART1_TX_PIN_8
|
||||
@ -135,7 +146,7 @@ menu "On-chip Peripheral Drivers"
|
||||
choice
|
||||
prompt "uart1 rx pin number (GP)"
|
||||
depends on BSP_USING_UART1
|
||||
default BSP_UART1_RX_PIN_5
|
||||
default BSP_UART1_RX_PIN_9
|
||||
config BSP_UART1_RX_PIN_5
|
||||
bool "5"
|
||||
config BSP_UART1_RX_PIN_9
|
||||
@ -393,7 +404,7 @@ menu "On-chip Peripheral Drivers"
|
||||
choice
|
||||
prompt "pwm slice A pin number (GP)"
|
||||
depends on BSP_USING_PWM0
|
||||
default BSP_PWM0_A_PIN_0
|
||||
default BSP_PWM0_A_PIN_16
|
||||
config BSP_PWM0_A_PIN_0
|
||||
bool "0"
|
||||
config BSP_PWM0_A_PIN_16
|
||||
@ -406,7 +417,7 @@ menu "On-chip Peripheral Drivers"
|
||||
choice
|
||||
prompt "pwm slice B pin number (GP)"
|
||||
depends on BSP_USING_PWM0
|
||||
default BSP_PWM0_B_PIN_1
|
||||
default BSP_PWM0_B_PIN_17
|
||||
config BSP_PWM0_B_PIN_1
|
||||
bool "1"
|
||||
config BSP_PWM0_B_PIN_17
|
||||
@ -431,7 +442,7 @@ menu "On-chip Peripheral Drivers"
|
||||
choice
|
||||
prompt "pwm slice A pin number (GP)"
|
||||
depends on BSP_USING_PWM1
|
||||
default BSP_PWM1_A_PIN_2
|
||||
default BSP_PWM1_A_PIN_18
|
||||
config BSP_PWM1_A_PIN_2
|
||||
bool "2"
|
||||
config BSP_PWM1_A_PIN_18
|
||||
@ -444,7 +455,7 @@ menu "On-chip Peripheral Drivers"
|
||||
choice
|
||||
prompt "pwm slice B pin number (GP)"
|
||||
depends on BSP_USING_PWM1
|
||||
default BSP_PWM1_B_PIN_3
|
||||
default BSP_PWM1_B_PIN_19
|
||||
config BSP_PWM1_B_PIN_3
|
||||
bool "3"
|
||||
config BSP_PWM1_B_PIN_19
|
||||
@ -469,7 +480,7 @@ menu "On-chip Peripheral Drivers"
|
||||
choice
|
||||
prompt "pwm slice A pin number (GP)"
|
||||
depends on BSP_USING_PWM2
|
||||
default BSP_PWM2_A_PIN_4
|
||||
default BSP_PWM2_A_PIN_20
|
||||
config BSP_PWM2_A_PIN_4
|
||||
bool "4"
|
||||
config BSP_PWM2_A_PIN_20
|
||||
@ -482,7 +493,7 @@ menu "On-chip Peripheral Drivers"
|
||||
choice
|
||||
prompt "pwm slice B pin number (GP)"
|
||||
depends on BSP_USING_PWM2
|
||||
default BSP_PWM2_B_PIN_5
|
||||
default BSP_PWM2_B_PIN_21
|
||||
config BSP_PWM2_B_PIN_5
|
||||
bool "5"
|
||||
config BSP_PWM2_B_PIN_21
|
||||
@ -507,7 +518,7 @@ menu "On-chip Peripheral Drivers"
|
||||
choice
|
||||
prompt "pwm slice A pin number (GP)"
|
||||
depends on BSP_USING_PWM3
|
||||
default BSP_PWM3_A_PIN_6
|
||||
default BSP_PWM3_A_PIN_22
|
||||
config BSP_PWM3_A_PIN_6
|
||||
bool "6"
|
||||
config BSP_PWM3_A_PIN_22
|
||||
@ -520,7 +531,7 @@ menu "On-chip Peripheral Drivers"
|
||||
choice
|
||||
prompt "pwm slice B pin number (GP)"
|
||||
depends on BSP_USING_PWM3
|
||||
default BSP_PWM3_B_PIN_7
|
||||
default BSP_PWM3_B_PIN_23
|
||||
config BSP_PWM3_B_PIN_7
|
||||
bool "7"
|
||||
config BSP_PWM3_B_PIN_23
|
||||
@ -545,7 +556,7 @@ menu "On-chip Peripheral Drivers"
|
||||
choice
|
||||
prompt "pwm slice A pin number (GP)"
|
||||
depends on BSP_USING_PWM4
|
||||
default BSP_PWM4_A_PIN_8
|
||||
default BSP_PWM4_A_PIN_24
|
||||
config BSP_PWM4_A_PIN_8
|
||||
bool "8"
|
||||
config BSP_PWM4_A_PIN_24
|
||||
@ -558,7 +569,7 @@ menu "On-chip Peripheral Drivers"
|
||||
choice
|
||||
prompt "pwm slice B pin number (GP)"
|
||||
depends on BSP_USING_PWM4
|
||||
default BSP_PWM4_B_PIN_9
|
||||
default BSP_PWM4_B_PIN_25
|
||||
config BSP_PWM4_B_PIN_9
|
||||
bool "9"
|
||||
config BSP_PWM4_B_PIN_25
|
||||
@ -604,7 +615,7 @@ menu "On-chip Peripheral Drivers"
|
||||
endchoice
|
||||
config BSP_PWM5_B_PIN
|
||||
int
|
||||
default 10 if BSP_PWM5_B_PIN_10
|
||||
default 11 if BSP_PWM5_B_PIN_11
|
||||
default 27 if BSP_PWM5_B_PIN_27
|
||||
config BSP_PWM5_A_ALL
|
||||
bool "pwm slice use all A pin"
|
||||
|
@ -1,11 +1,11 @@
|
||||
/*
|
||||
* Copyright (c) 2006-2023, RT-Thread Development Team
|
||||
* Copyright (c) 2006-2024, RT-Thread Development Team
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*
|
||||
* Change Logs:
|
||||
* Date Author Notes
|
||||
* 2023-11-27 ShichengChu first version
|
||||
* 2024-01-25 ShichengChu first version
|
||||
*/
|
||||
|
||||
#include <Arduino.h>
|
||||
@ -13,12 +13,12 @@
|
||||
void setup(void)
|
||||
{
|
||||
/* put your setup code here, to run once: */
|
||||
Serial.begin();
|
||||
Serial2.begin();
|
||||
Serial2.println("Hello RTduino!");
|
||||
}
|
||||
|
||||
void loop(void)
|
||||
{
|
||||
/* put your main code here, to run repeatedly: */
|
||||
Serial.println("Hello Arduino!");
|
||||
delay(800);
|
||||
delay(1000);
|
||||
}
|
||||
|
@ -25,28 +25,31 @@ Hardware Drivers Config --->
|
||||
| 1 (D1) | P | 是/否 | Serial-RX,默认被RT-Thread的UART设备框架uart1接管 |
|
||||
| 2 (D2) | P | 是/否 | |
|
||||
| 3 (D3) | P | 是/否 | |
|
||||
| 4 (D4) | P | 是/否 | |
|
||||
| 5 (D5) | P | 是/否 | |
|
||||
| 4 (D4) | P | 是/否 | I2C0-SDA,默认被RT-Thread的I2C设备框架i2c0接管 |
|
||||
| 5 (D5) | P | 是/否 | I2C0-SCL,默认被RT-Thread的I2C设备框架i2c0接管 |
|
||||
| 6 (D6) | P | 是/否 | |
|
||||
| 7 (D7) | P | 是/否 | |
|
||||
| 8 (D8) | P | 是/否 | Serial2-TX,默认被RT-Thread的UART设备框架uart2接管 |
|
||||
| 9 (D9) | P | 是/否 | Serial2-RX,默认被RT-Thread的UART设备框架uart2接管 |
|
||||
| 10 (D10) | P | 是/否 | |
|
||||
| 11 (D11) | P | 是/否 | |
|
||||
| 12 (D12) | P | 是/否 | |
|
||||
| 13 (D13) | P | 是/否 | |
|
||||
| 14 (D14) | P | 是/否 | |
|
||||
| 15 (D15) | P | 是/否 | |
|
||||
| 16 (D16) | P | 是/否 | |
|
||||
| 17 (D17) | P | 是/否 | |
|
||||
| 18 (D18) | P | 是/否 | |
|
||||
| 19 (D19) | P | 是/否 | |
|
||||
| 20 (D20) | P | 是/否 | |
|
||||
| 21 (D21) | P | 是/否 | |
|
||||
| 22 (D22) | P | 是/否 | |
|
||||
| 23 (D23) | P | 是/否 | 板载用户LED |
|
||||
| 24 (D24) | P | 是/否 | |
|
||||
| 25 (D25) | P | 是/否 | |
|
||||
| 10 (D10) | P | 是/否 | PWM5-CH0,默认被RT-Thread的PWM设备框架pwm5接管 |
|
||||
| 11 (D11) | P | 是/否 | PWM5-CH1,默认被RT-Thread的PWM设备框架pwm5接管 |
|
||||
| 12 (D12) | P | 是/否 | PWM6-CH0,默认被RT-Thread的PWM设备框架pwm6接管 |
|
||||
| 13 (D13) | P | 是/否 | PWM6-CH1,默认被RT-Thread的PWM设备框架pwm6接管 |
|
||||
| 14 (D14) | P | 是/否 | PWM7-CH0,默认被RT-Thread的PWM设备框架pwm7接管 |
|
||||
| 15 (D15) | P | 是/否 | PWM7-CH1,默认被RT-Thread的PWM设备框架pwm7接管 |
|
||||
| 16 (D16) | P | 是/否 | PWM0-CH0,默认被RT-Thread的PWM设备框架pwm0接管 |
|
||||
| 17 (D17) | P | 是/否 | PWM0-CH1,默认被RT-Thread的PWM设备框架pwm0接管 |
|
||||
| 18 (D18) | P | 是/否 | PWM1-CH0,默认被RT-Thread的PWM设备框架pwm1接管 |
|
||||
| 19 (D19) | P | 是/否 | PWM1-CH1,默认被RT-Thread的PWM设备框架pwm1接管 |
|
||||
| 20 (D20) | P | 是/否 | PWM2-CH0,默认被RT-Thread的PWM设备框架pwm2接管 |
|
||||
| 21 (D21) | P | 是/否 | PWM2-CH1,默认被RT-Thread的PWM设备框架pwm2接管 |
|
||||
| 22 (D22) | P | 是/否 | PWM3-CH0,默认被RT-Thread的PWM设备框架pwm3接管 |
|
||||
| 23 (D23) | P | 是/否 | PWM3-CH1,默认被RT-Thread的PWM设备框架pwm3接管 |
|
||||
| 24 (D24) | P | 是/否 | PWM4-CH0,默认被RT-Thread的PWM设备框架pwm4接管 |
|
||||
| 25 (D25) | P | 是/否 | PWM4-CH1,默认被RT-Thread的PWM设备框架pwm4接管 |
|
||||
| 26 (A0) | P | 是/否 | ADC0-CH0,默认被RT-Thread的ADC设备框架adc0接管 |
|
||||
| 27 (A1) | P | 是/否 | ADC1-CH1,默认被RT-Thread的ADC设备框架adc1接管 |
|
||||
| 28 (A2) | P | 是/否 | ADC2-CH2,默认被RT-Thread的ADC设备框架adc2接管 |
|
||||
|
||||
> 注意:
|
||||
>
|
||||
|
@ -1,11 +1,11 @@
|
||||
/*
|
||||
* Copyright (c) 2006-2023, RT-Thread Development Team
|
||||
* Copyright (c) 2006-2024, RT-Thread Development Team
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*
|
||||
* Change Logs:
|
||||
* Date Author Notes
|
||||
* 2023-11-27 ShichengChu first version
|
||||
* 2024-01-25 ShichengChu first version
|
||||
*/
|
||||
|
||||
#include <Arduino.h>
|
||||
@ -21,30 +21,33 @@
|
||||
*/
|
||||
const pin_map_t pin_map_table[]=
|
||||
{
|
||||
{D0, 0, "uart1"}, /* Serial-TX */
|
||||
{D1, 1, "uart1"}, /* Serial-RX */
|
||||
{D0, 0, "uart0"}, /* Serial-TX */
|
||||
{D1, 1, "uart0"}, /* Serial-RX */
|
||||
{D2, 2},
|
||||
{D3, 3},
|
||||
{D4, 4},
|
||||
{D5, 5},
|
||||
{D4, 4, "i2c0"}, /* I2C-SDA (Wire) */
|
||||
{D5, 5, "i2c0"}, /* I2C-SCL (Wire) */
|
||||
{D6, 6},
|
||||
{D7, 7},
|
||||
{D8, 8, "uart2"}, /* Serial2-TX */
|
||||
{D9, 9, "uart2"}, /* Serial2-RX */
|
||||
{D10, 10},
|
||||
{D11, 11},
|
||||
{D12, 12},
|
||||
{D13, 13},
|
||||
{D14, 14},
|
||||
{D15, 15},
|
||||
{D16, 16},
|
||||
{D17, 17},
|
||||
{D18, 18},
|
||||
{D19, 19},
|
||||
{D20, 20},
|
||||
{D21, 21},
|
||||
{D22, 22},
|
||||
{D23, 25}, /* LED_BUILTIN */
|
||||
{D24, 26},
|
||||
{D25, 27},
|
||||
{D8, 8, "uart1"}, /* Serial2-TX */
|
||||
{D9, 9, "uart1"}, /* Serial2-RX */
|
||||
{D10, 10, "pwm5", 0}, /* PWM */
|
||||
{D11, 11, "pwm5", 1}, /* PWM */
|
||||
{D12, 12, "pwm6", 0}, /* PWM */
|
||||
{D13, 13, "pwm6", 1}, /* PWM */
|
||||
{D14, 14, "pwm7", 0}, /* PWM */
|
||||
{D15, 15, "pwm7", 1}, /* PWM */
|
||||
{D16, 16, "pwm0", 0}, /* PWM */
|
||||
{D17, 17, "pwm0", 1}, /* PWM */
|
||||
{D18, 18, "pwm1", 0}, /* PWM */
|
||||
{D19, 19, "pwm1", 1}, /* PWM */
|
||||
{D20, 20, "pwm2", 0}, /* PWM */
|
||||
{D21, 21, "pwm2", 1}, /* PWM */
|
||||
{D22, 22, "pwm3", 0}, /* PWM */
|
||||
{D23, 23, "pwm3", 1}, /* PWM */
|
||||
{D24, 24, "pwm4", 0}, /* PWM */
|
||||
{D25, 25, "pwm4", 1}, /* LED_BUILTIN */
|
||||
{A0, 26, "adc0", 0}, /* ADC */
|
||||
{A1, 27, "adc1", 1}, /* ADC */
|
||||
{A2, 28, "adc2", 2}, /* ADC */
|
||||
};
|
||||
|
@ -1,11 +1,11 @@
|
||||
/*
|
||||
* Copyright (c) 2006-2023, RT-Thread Development Team
|
||||
* Copyright (c) 2006-2024, RT-Thread Development Team
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*
|
||||
* Change Logs:
|
||||
* Date Author Notes
|
||||
* 2023-11-27 ShichengChu first version
|
||||
* 2024-01-25 ShichengChu first version
|
||||
*/
|
||||
|
||||
#ifndef Pins_Arduino_h
|
||||
@ -38,12 +38,15 @@
|
||||
#define D23 (23)
|
||||
#define D24 (24)
|
||||
#define D25 (25)
|
||||
#define A0 (26)
|
||||
#define A1 (27)
|
||||
#define A2 (28)
|
||||
|
||||
#define F_CPU 133000000L /* CPU:133MHz */
|
||||
|
||||
#define LED_BUILTIN D23 /* Default Built-in LED */
|
||||
#define LED_BUILTIN D25 /* Default Built-in LED */
|
||||
|
||||
/* Serial2 : P-TX P-RX */
|
||||
#define RTDUINO_SERIAL2_DEVICE_NAME "uart2"
|
||||
#define RTDUINO_SERIAL2_DEVICE_NAME "uart1"
|
||||
|
||||
#endif /* Pins_Arduino_h */
|
||||
|
@ -12,17 +12,17 @@
|
||||
#define __DRV_ADC_H__
|
||||
|
||||
#include <rtdevice.h>
|
||||
#if defined BSP_USING_ADC
|
||||
#ifdef BSP_USING_ADC
|
||||
|
||||
/* pico i2c dirver class */
|
||||
static struct pico_adc
|
||||
/* pico adc dirver class */
|
||||
struct pico_adc
|
||||
{
|
||||
struct rt_adc_ops ops;
|
||||
struct rt_adc_device pico_adc_device;
|
||||
};
|
||||
|
||||
/* pico config class */
|
||||
static struct pico_adc_config
|
||||
struct pico_adc_config
|
||||
{
|
||||
rt_uint8_t pin;
|
||||
rt_uint8_t channel;
|
||||
@ -46,7 +46,7 @@ static struct pico_adc_config
|
||||
}
|
||||
#endif
|
||||
#ifdef BSP_USING_ADC2
|
||||
#define ADC1_CONFIG \
|
||||
#define ADC2_CONFIG \
|
||||
{ \
|
||||
.pin = 28, \
|
||||
.channel = 2, \
|
||||
|
@ -10,6 +10,7 @@
|
||||
#include "drv_pwm.h"
|
||||
#include "board.h"
|
||||
#include "hardware/pwm.h"
|
||||
#include "hardware/gpio.h"
|
||||
|
||||
#ifdef BSP_USING_PWM
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user