rt-thread/bsp/swm320/libraries/SWM320_StdPeriph_Driver/SWM320_port.h

475 lines
11 KiB
C
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

#ifndef __SWM320_PORT_H__
#define __SWM320_PORT_H__
void PORT_Init(uint32_t PORTx, uint32_t n, uint32_t func, uint32_t digit_in_en); //端口引脚功能选择,其可取值如下:
#define PORTA 0
#define PORTB 1
#define PORTC 2
#define PORTM 3
#define PORTN 4
#define PORTP 5
#define PORTA_PIN0_GPIO 0
#define PORTA_PIN0_FUNMUX 1
#define PORTA_PIN0_SWCLK 2
#define PORTA_PIN1_GPIO 0
#define PORTA_PIN1_FUNMUX 1
#define PORTA_PIN1_SWDIO 2
#define PORTA_PIN2_GPIO 0
#define PORTA_PIN2_FUNMUX 1
#define PORTA_PIN3_GPIO 0
#define PORTA_PIN3_FUNMUX 1
#define PORTA_PIN4_GPIO 0
#define PORTA_PIN4_FUNMUX 1
#define PORTA_PIN5_GPIO 0
#define PORTA_PIN5_FUNMUX 1
#define PORTA_PIN6_GPIO 0
#define PORTA_PIN6_FUNMUX 1
#define PORTA_PIN7_GPIO 0
#define PORTA_PIN7_FUNMUX 1
#define PORTA_PIN8_GPIO 0
#define PORTA_PIN8_FUNMUX 1
#define PORTA_PIN9_GPIO 0
#define PORTA_PIN9_FUNMUX 1
#define PORTA_PIN9_ADC0_IN7 3
#define PORTA_PIN10_GPIO 0
#define PORTA_PIN10_FUNMUX 1
#define PORTA_PIN10_ADC0_IN6 3
#define PORTA_PIN11_GPIO 0
#define PORTA_PIN11_FUNMUX 1
#define PORTA_PIN11_ADC0_IN5 3
#define PORTA_PIN12_GPIO 0
#define PORTA_PIN12_ADC0_IN4 3
#define PORTB_PIN0_GPIO 0
#define PORTB_PIN0_FUNMUX 1
#define PORTB_PIN0_SD_DETECT 2
#define PORTB_PIN1_GPIO 0
#define PORTB_PIN1_FUNMUX 1
#define PORTB_PIN1_SD_CLK 2
#define PORTB_PIN2_GPIO 0
#define PORTB_PIN2_FUNMUX 1
#define PORTB_PIN2_SD_CMD 2
#define PORTB_PIN3_GPIO 0
#define PORTB_PIN3_FUNMUX 1
#define PORTB_PIN3_SD_D0 2
#define PORTB_PIN4_GPIO 0
#define PORTB_PIN4_FUNMUX 1
#define PORTB_PIN4_SD_D1 2
#define PORTB_PIN5_GPIO 0
#define PORTB_PIN5_FUNMUX 1
#define PORTB_PIN5_SD_D2 2
#define PORTB_PIN6_GPIO 0
#define PORTB_PIN6_FUNMUX 1
#define PORTB_PIN6_SD_D3 2
#define PORTB_PIN7_GPIO 0
#define PORTB_PIN7_FUNMUX 1
#define PORTB_PIN7_SD_D4 2
#define PORTB_PIN8_GPIO 0
#define PORTB_PIN8_FUNMUX 1
#define PORTB_PIN8_SD_D5 2
#define PORTB_PIN9_GPIO 0
#define PORTB_PIN9_FUNMUX 1
#define PORTB_PIN9_SD_D6 2
#define PORTB_PIN10_GPIO 0
#define PORTB_PIN10_FUNMUX 1
#define PORTB_PIN10_SD_D7 2
#define PORTB_PIN11_GPIO 0
#define PORTB_PIN11_FUNMUX 1
#define PORTB_PIN12_GPIO 0
#define PORTC_PIN0_GPIO 0
#define PORTC_PIN0_FUNMUX 1
#define PORTC_PIN1_GPIO 0
#define PORTC_PIN1_FUNMUX 1
#define PORTC_PIN2_GPIO 0
#define PORTC_PIN2_FUNMUX 1
#define PORTC_PIN3_GPIO 0
#define PORTC_PIN3_FUNMUX 1
#define PORTC_PIN4_GPIO 0
#define PORTC_PIN4_FUNMUX 1
#define PORTC_PIN4_ADC1_IN3 3
#define PORTC_PIN5_GPIO 0
#define PORTC_PIN5_FUNMUX 1
#define PORTC_PIN5_ADC1_IN2 3
#define PORTC_PIN6_GPIO 0
#define PORTC_PIN6_FUNMUX 1
#define PORTC_PIN6_ADC1_IN1 3
#define PORTC_PIN7_GPIO 0
#define PORTC_PIN7_FUNMUX 1
#define PORTC_PIN7_ADC1_IN0 3
#define PORTM_PIN0_GPIO 0
#define PORTM_PIN0_FUNMUX 1
#define PORTM_PIN0_NORFL_D15 2
#define PORTM_PIN1_GPIO 0
#define PORTM_PIN1_FUNMUX 1
#define PORTM_PIN1_NORFL_D14 2
#define PORTM_PIN2_GPIO 0
#define PORTM_PIN2_FUNMUX 1
#define PORTM_PIN2_NORFL_D13 2
#define PORTM_PIN3_GPIO 0
#define PORTM_PIN3_FUNMUX 1
#define PORTM_PIN3_NORFL_D12 2
#define PORTM_PIN4_GPIO 0
#define PORTM_PIN4_FUNMUX 1
#define PORTM_PIN4_NORFL_D11 2
#define PORTM_PIN5_GPIO 0
#define PORTM_PIN5_FUNMUX 1
#define PORTM_PIN5_NORFL_D10 2
#define PORTM_PIN6_GPIO 0
#define PORTM_PIN6_FUNMUX 1
#define PORTM_PIN6_NORFL_D9 2
#define PORTM_PIN7_GPIO 0
#define PORTM_PIN7_FUNMUX 1
#define PORTM_PIN7_NORFL_D8 2
#define PORTM_PIN8_GPIO 0
#define PORTM_PIN8_FUNMUX 1
#define PORTM_PIN8_NORFL_D7 2
#define PORTM_PIN9_GPIO 0
#define PORTM_PIN9_FUNMUX 1
#define PORTM_PIN9_NORFL_D6 2
#define PORTM_PIN10_GPIO 0
#define PORTM_PIN10_FUNMUX 1
#define PORTM_PIN10_NORFL_D5 2
#define PORTM_PIN11_GPIO 0
#define PORTM_PIN11_FUNMUX 1
#define PORTM_PIN11_NORFL_D4 2
#define PORTM_PIN12_GPIO 0
#define PORTM_PIN12_FUNMUX 1
#define PORTM_PIN12_NORFL_D3 2
#define PORTM_PIN13_GPIO 0
#define PORTM_PIN13_FUNMUX 1
#define PORTM_PIN13_NORFL_D2 2
#define PORTM_PIN14_GPIO 0
#define PORTM_PIN14_FUNMUX 1
#define PORTM_PIN14_NORFL_D1 2
#define PORTM_PIN15_GPIO 0
#define PORTM_PIN15_FUNMUX 1
#define PORTM_PIN15_NORFL_D0 2
#define PORTM_PIN16_GPIO 0
#define PORTM_PIN16_FUNMUX 1
#define PORTM_PIN16_NORFL_OEN 2
#define PORTM_PIN17_GPIO 0
#define PORTM_PIN17_FUNMUX 1
#define PORTM_PIN17_NORFL_WEN 2
#define PORTM_PIN18_GPIO 0
#define PORTM_PIN18_FUNMUX 1
#define PORTM_PIN18_NORFL_CSN 2
#define PORTM_PIN19_GPIO 0
#define PORTM_PIN19_FUNMUX 1
#define PORTM_PIN19_SDRAM_CSN 2
#define PORTM_PIN20_GPIO 0
#define PORTM_PIN20_FUNMUX 1
#define PORTM_PIN20_SRAM_CSN 2
#define PORTM_PIN21_GPIO 0
#define PORTM_PIN21_FUNMUX 1
#define PORTM_PIN21_SDRAM_CKE 2
#define PORTN_PIN0_GPIO 0
#define PORTN_PIN0_FUNMUX 1
#define PORTN_PIN0_LCD_D0 2
#define PORTN_PIN0_ADC1_IN4 3
#define PORTN_PIN1_GPIO 0
#define PORTN_PIN1_FUNMUX 1
#define PORTN_PIN1_LCD_D1 2
#define PORTN_PIN1_ADC1_IN5 3
#define PORTN_PIN2_GPIO 0
#define PORTN_PIN2_FUNMUX 1
#define PORTN_PIN2_LCD_D2 2
#define PORTN_PIN2_ADC1_IN6 3
#define PORTN_PIN3_GPIO 0
#define PORTN_PIN3_FUNMUX 1
#define PORTN_PIN3_LCD_D3 2
#define PORTN_PIN4_GPIO 0
#define PORTN_PIN4_FUNMUX 1
#define PORTN_PIN4_LCD_D4 2
#define PORTN_PIN5_GPIO 0
#define PORTN_PIN5_FUNMUX 1
#define PORTN_PIN5_LCD_D5 2
#define PORTN_PIN6_GPIO 0
#define PORTN_PIN6_FUNMUX 1
#define PORTN_PIN6_LCD_D6 2
#define PORTN_PIN7_GPIO 0
#define PORTN_PIN7_FUNMUX 1
#define PORTN_PIN7_LCD_D7 2
#define PORTN_PIN8_GPIO 0
#define PORTN_PIN8_FUNMUX 1
#define PORTN_PIN8_LCD_D8 2
#define PORTN_PIN9_GPIO 0
#define PORTN_PIN9_FUNMUX 1
#define PORTN_PIN9_LCD_D9 2
#define PORTN_PIN10_GPIO 0
#define PORTN_PIN10_FUNMUX 1
#define PORTN_PIN10_LCD_D10 2
#define PORTN_PIN11_GPIO 0
#define PORTN_PIN11_FUNMUX 1
#define PORTN_PIN11_LCD_D11 2
#define PORTN_PIN12_GPIO 0
#define PORTN_PIN12_FUNMUX 1
#define PORTN_PIN12_LCD_D12 2
#define PORTN_PIN13_GPIO 0
#define PORTN_PIN13_FUNMUX 1
#define PORTN_PIN13_LCD_D13 2
#define PORTN_PIN14_GPIO 0
#define PORTN_PIN14_FUNMUX 1
#define PORTN_PIN14_LCD_D14 2
#define PORTN_PIN15_GPIO 0
#define PORTN_PIN15_FUNMUX 1
#define PORTN_PIN15_LCD_D15 2
#define PORTN_PIN16_GPIO 0
#define PORTN_PIN16_FUNMUX 1
#define PORTN_PIN16_LCD_RD 2
#define PORTN_PIN16_LCD_DOTCK 2
#define PORTN_PIN17_GPIO 0
#define PORTN_PIN17_FUNMUX 1
#define PORTN_PIN17_LCD_CS 2
#define PORTN_PIN17_LCD_VSYNC 2
#define PORTN_PIN18_GPIO 0
#define PORTN_PIN18_LCD_RS 2
#define PORTN_PIN18_LCD_DATEN 2 //Data Enable
#define PORTN_PIN19_GPIO 0
#define PORTN_PIN19_LCD_WR 2
#define PORTN_PIN19_LCD_HSYNC 2
#define PORTP_PIN0_GPIO 0
#define PORTP_PIN0_FUNMUX 1
#define PORTP_PIN0_NORFL_A0 2
#define PORTP_PIN1_GPIO 0
#define PORTP_PIN1_FUNMUX 1
#define PORTP_PIN1_NORFL_A1 2
#define PORTP_PIN2_GPIO 0
#define PORTP_PIN2_FUNMUX 1
#define PORTP_PIN2_NORFL_A2 2
#define PORTP_PIN2_SD_D7 3
#define PORTP_PIN3_GPIO 0
#define PORTP_PIN3_FUNMUX 1
#define PORTP_PIN3_NORFL_A3 2
#define PORTP_PIN3_SD_D6 3
#define PORTP_PIN4_GPIO 0
#define PORTP_PIN4_FUNMUX 1
#define PORTP_PIN4_NORFL_A4 2
#define PORTP_PIN4_SD_D5 3
#define PORTP_PIN5_GPIO 0
#define PORTP_PIN5_FUNMUX 1
#define PORTP_PIN5_NORFL_A5 2
#define PORTP_PIN5_SD_D4 3
#define PORTP_PIN6_GPIO 0
#define PORTP_PIN6_FUNMUX 1
#define PORTP_PIN6_NORFL_A6 2
#define PORTP_PIN6_SD_D3 3
#define PORTP_PIN7_GPIO 0
#define PORTP_PIN7_FUNMUX 1
#define PORTP_PIN7_NORFL_A7 2
#define PORTP_PIN7_SD_D2 3
#define PORTP_PIN8_GPIO 0
#define PORTP_PIN8_FUNMUX 1
#define PORTP_PIN8_NORFL_A8 2
#define PORTP_PIN8_SD_D1 3
#define PORTP_PIN9_GPIO 0
#define PORTP_PIN9_FUNMUX 1
#define PORTP_PIN9_NORFL_A9 2
#define PORTP_PIN9_SD_D0 3
#define PORTP_PIN10_GPIO 0
#define PORTP_PIN10_FUNMUX 1
#define PORTP_PIN10_NORFL_A10 2
#define PORTP_PIN10_SD_CMD 3
#define PORTP_PIN11_GPIO 0
#define PORTP_PIN11_FUNMUX 1
#define PORTP_PIN11_NORFL_A11 2
#define PORTP_PIN11_SD_CLK 3
#define PORTP_PIN12_GPIO 0
#define PORTP_PIN12_FUNMUX 1
#define PORTP_PIN12_NORFL_A12 2
#define PORTP_PIN12_SD_DETECT 3
#define PORTP_PIN13_GPIO 0
#define PORTP_PIN13_FUNMUX 1
#define PORTP_PIN13_NORFL_A13 2
#define PORTP_PIN13_SDRAM_CLK 2
#define PORTP_PIN14_GPIO 0
#define PORTP_PIN14_FUNMUX 1
#define PORTP_PIN14_NORFL_A14 2
#define PORTP_PIN14_SDRAM_CAS 2
#define PORTP_PIN15_GPIO 0
#define PORTP_PIN15_FUNMUX 1
#define PORTP_PIN15_NORFL_A15 2
#define PORTP_PIN15_SDRAM_RAS 2
#define PORTP_PIN16_GPIO 0
#define PORTP_PIN16_FUNMUX 1
#define PORTP_PIN16_NORFL_A16 2
#define PORTP_PIN16_SDRAM_LDQ 2
#define PORTP_PIN17_GPIO 0
#define PORTP_PIN17_FUNMUX 1
#define PORTP_PIN17_NORFL_A17 2
#define PORTP_PIN17_SDRAM_UDQ 2
#define PORTP_PIN18_GPIO 0
#define PORTP_PIN18_FUNMUX 1
#define PORTP_PIN18_NORFL_A18 2
#define PORTP_PIN19_GPIO 0
#define PORTP_PIN19_FUNMUX 1
#define PORTP_PIN19_NORFL_A19 2
#define PORTP_PIN20_GPIO 0
#define PORTP_PIN20_FUNMUX 1
#define PORTP_PIN20_NORFL_A20 2
#define PORTP_PIN20_SDRAM_BA0 2
#define PORTP_PIN21_GPIO 0
#define PORTP_PIN21_FUNMUX 1
#define PORTP_PIN21_NORFL_A21 2
#define PORTP_PIN21_SDRAM_BA1 2
#define PORTP_PIN22_GPIO 0
#define PORTP_PIN22_FUNMUX 1
#define PORTP_PIN22_NORFL_A22 2
#define PORTP_PIN23_GPIO 0
#define PORTP_PIN23_FUNMUX 1
#define PORTP_PIN23_NORFL_A23 2
/* 下面宏定义的取值全部在正确值的基础上“加100”以区分上面宏定义的值从而方便库函数的编写*/
/* 下面这些值是偶数编号引脚的功能取值如PIN0、PIN2、... */
#define FUNMUX0_UART0_RXD 100
#define FUNMUX0_UART1_RXD 101
#define FUNMUX0_UART2_RXD 102
#define FUNMUX0_UART3_RXD 103
#define FUNMUX0_I2C0_SCL 105
#define FUNMUX0_I2C1_SCL 106
#define FUNMUX0_PWM0A_OUT 107
#define FUNMUX0_PWM2A_OUT 108
#define FUNMUX0_PWM4A_OUT 109
#define FUNMUX0_PWM0B_OUT 110
#define FUNMUX0_PWM2B_OUT 111
#define FUNMUX0_PWM4B_OUT 112
#define FUNMUX0_PWM_BREAK 113
#define FUNMUX0_TIMR0_IN 114
#define FUNMUX0_TIMR2_IN 115
#define FUNMUX0_CAN_RX 116
#define FUNMUX0_SPI0_SSEL 117
#define FUNMUX0_SPI0_MOSI 118
#define FUNMUX0_SPI1_SSEL 119
#define FUNMUX0_SPI1_MOSI 120
#define FUNMUX0_UART0_CTS 121
#define FUNMUX0_UART1_CTS 122
#define FUNMUX0_UART2_CTS 123
#define FUNMUX0_UART3_CTS 124
/* 下面这些值是奇数编号引脚的功能取值如PIN1、PIN3、... */
#define FUNMUX1_UART0_TXD 100
#define FUNMUX1_UART1_TXD 101
#define FUNMUX1_UART2_TXD 102
#define FUNMUX1_UART3_TXD 103
#define FUNMUX1_I2C0_SDA 105
#define FUNMUX1_I2C1_SDA 106
#define FUNMUX1_PWM1A_OUT 107
#define FUNMUX1_PWM3A_OUT 108
#define FUNMUX1_PWM5A_OUT 109
#define FUNMUX1_PWM1B_OUT 110
#define FUNMUX1_PWM3B_OUT 111
#define FUNMUX1_PWM5B_OUT 112
#define FUNMUX1_PULSE_IN 113
#define FUNMUX1_TIMR1_IN 114
#define FUNMUX1_TIMR3_IN 115
#define FUNMUX1_CAN_TX 116
#define FUNMUX1_SPI0_SCLK 117
#define FUNMUX1_SPI0_MISO 118
#define FUNMUX1_SPI1_SCLK 119
#define FUNMUX1_SPI1_MISO 120
#define FUNMUX1_UART0_RTS 121
#define FUNMUX1_UART1_RTS 122
#define FUNMUX1_UART2_RTS 123
#define FUNMUX1_UART3_RTS 124
#endif //__SWM320_PORT_H__