|
|
|
@@ -9,123 +9,47 @@
|
|
|
|
|
#include "hc32_ddl.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//#define WATCH_DOG 1
|
|
|
|
|
/*模块启用与关闭*/
|
|
|
|
|
#define USE_DEBUG 1 //DEBUG开关,0、关闭,1、启用
|
|
|
|
|
#define USE_VBAT_AD 0 //锂电池电压AD获取选择,0、关闭,1、启用
|
|
|
|
|
#define USE_WDT 0 //看门狗选择,0、关闭,1启用
|
|
|
|
|
#define USE_EXFALSE 0 //外部FALSE存储选择,0、关闭,1、启用
|
|
|
|
|
#define USE_RTC 1 //RTC时钟开关,0、关闭,1、开启
|
|
|
|
|
#define USE_LPTIM0 0 //LPTIM0开关,0、关闭,1、开启
|
|
|
|
|
#define USE_DMA 0 //DMA开关,0、关闭,1、开启
|
|
|
|
|
#define USE_RS485 0 //RS485开关,0、关闭,1、启用
|
|
|
|
|
#define USE_I2C1 0 //I2C1开关,0、关闭,1、启用
|
|
|
|
|
#define USE_SPI1 0 //SPI1开关,0、关闭,1、启用
|
|
|
|
|
#define USE_SPI3 0 //SPI3开关,0、关闭,1、启用
|
|
|
|
|
|
|
|
|
|
#define DEBUG 1
|
|
|
|
|
#define RS485 1
|
|
|
|
|
#define USE_BOOTLOADER 0 //BOOTLOADER开关,0、关闭,1、启用
|
|
|
|
|
|
|
|
|
|
#define DBGUART_IRQn Int006_IRQn
|
|
|
|
|
#define DBGUART_EI_IRQn Int007_IRQn
|
|
|
|
|
#define DBG_RXPIN_IRQn Int002_IRQn
|
|
|
|
|
#define USE_CS1237_LEFTUP 1 //左上CS1237开关,0、关闭,1、启用
|
|
|
|
|
#define USE_CS1237_LEFTLOW 1 //左下CS1237开关,0、关闭,1、启用
|
|
|
|
|
#define USE_CS1237_RIGHTUP 1 //右上CS1237开关,0、关闭,1、启用
|
|
|
|
|
#define USE_CS1237_RIGHRLOW 1 //右上CS1237开关,0、关闭,1、启用
|
|
|
|
|
|
|
|
|
|
#define RS485UART_IRQn Int008_IRQn
|
|
|
|
|
#define RS485UART_EI_IRQn Int009_IRQn
|
|
|
|
|
#define RS485_RXPIN_IRQn Int005_IRQn
|
|
|
|
|
//<<---------------------------- MCU -------------------------------->>
|
|
|
|
|
//< DEBUG
|
|
|
|
|
#if(USE_DEBUG == 1)
|
|
|
|
|
#define DBG_USART_CH (M4_USART1)
|
|
|
|
|
#define DBG_USART_RX_PORT (PortA)
|
|
|
|
|
#define DBG_USART_RX_PIN (Pin11)
|
|
|
|
|
#define DBG_USART_TX_PORT (PortA)
|
|
|
|
|
#define DBG_USART_TX_PIN (Pin12)
|
|
|
|
|
#define DBG_USART_RX_FUNC (Func_Usart1_Rx)
|
|
|
|
|
#define DBG_USART_TX_FUNC (Func_Usart1_Tx)
|
|
|
|
|
#define DBG_USART_RI_NUM (INT_USART1_RI)
|
|
|
|
|
#define DBG_USART_EI_NUM (INT_USART1_EI)
|
|
|
|
|
#define DBG_USART_TI_NUM (INT_USART1_TI)
|
|
|
|
|
#define DBG_USART_TCI_NUM (INT_USART1_TCI)
|
|
|
|
|
#define DBG_FCG1_PERIPH (PWC_FCG1_PERIPH_USART1)
|
|
|
|
|
#define DBG_RXPIN_EXIT_CH (ExtiCh13)
|
|
|
|
|
#define DBG_RXPIN_EXIT_SRC (INT_PORT_EIRQ13)
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#define RTC_IRQn Int001_IRQn
|
|
|
|
|
|
|
|
|
|
//DEBUG
|
|
|
|
|
#define DBG_USART_CH (M4_USART3)
|
|
|
|
|
//#define DBG_USART_RX_PORT (PortA)
|
|
|
|
|
//#define DBG_USART_RX_PIN (Pin15)
|
|
|
|
|
//#define DBG_USART_TX_PORT (PortA)
|
|
|
|
|
//#define DBG_USART_TX_PIN (Pin12)
|
|
|
|
|
#define DBG_USART_RX_PORT (PortB)
|
|
|
|
|
#define DBG_USART_RX_PIN (Pin09)
|
|
|
|
|
#define DBG_USART_TX_PORT (PortB)
|
|
|
|
|
#define DBG_USART_TX_PIN (Pin08)
|
|
|
|
|
#define DBG_USART_RX_FUNC (Func_Usart3_Rx)
|
|
|
|
|
#define DBG_USART_TX_FUNC (Func_Usart3_Tx)
|
|
|
|
|
#define DBG_USART_RI_NUM (INT_USART3_RI)
|
|
|
|
|
#define DBG_USART_EI_NUM (INT_USART3_EI)
|
|
|
|
|
#define DBG_USART_TI_NUM (INT_USART3_TI)
|
|
|
|
|
#define DBG_USART_TCI_NUM (INT_USART3_TCI)
|
|
|
|
|
#define DBG_FCG1_PERIPH (PWC_FCG1_PERIPH_USART3)
|
|
|
|
|
#define DBG_RXPIN_EXIT_CH (ExtiCh13)
|
|
|
|
|
#define DBG_RXPIN_EXIT_SRC (INT_PORT_EIRQ13)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//#define DBG_USART_CH (M4_USART1)
|
|
|
|
|
//#define DBG_USART_RX_PORT (PortC)
|
|
|
|
|
//#define DBG_USART_RX_PIN (Pin13)
|
|
|
|
|
//#define DBG_USART_TX_PORT (PortH)
|
|
|
|
|
//#define DBG_USART_TX_PIN (Pin02)
|
|
|
|
|
//#define DBG_USART_RX_FUNC (Func_Usart1_Rx)
|
|
|
|
|
//#define DBG_USART_TX_FUNC (Func_Usart1_Tx)
|
|
|
|
|
//#define DBG_USART_RI_NUM (INT_USART1_RI)
|
|
|
|
|
//#define DBG_USART_EI_NUM (INT_USART1_EI)
|
|
|
|
|
//#define DBG_USART_TI_NUM (INT_USART1_TI)
|
|
|
|
|
//#define DBG_USART_TCI_NUM (INT_USART1_TCI)
|
|
|
|
|
//#define DBG_FCG1_PERIPH (PWC_FCG1_PERIPH_USART1)
|
|
|
|
|
//#define DBG_RXPIN_EXIT_CH (ExtiCh13)
|
|
|
|
|
//#define DBG_RXPIN_EXIT_SRC (INT_PORT_EIRQ13)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//RS485
|
|
|
|
|
#define RS485_USART_CH (M4_USART1)
|
|
|
|
|
//#define RS485_USART_RX_PORT (PortB)
|
|
|
|
|
//#define RS485_USART_RX_PIN (Pin08)
|
|
|
|
|
//#define RS485_USART_TX_PORT (PortB)
|
|
|
|
|
//#define RS485_USART_TX_PIN (Pin09)
|
|
|
|
|
#define RS485_USART_RX_PORT (PortA)
|
|
|
|
|
#define RS485_USART_RX_PIN (Pin15)
|
|
|
|
|
#define RS485_USART_TX_PORT (PortA)
|
|
|
|
|
#define RS485_USART_TX_PIN (Pin12)
|
|
|
|
|
#define RS485_USART_RX_FUNC (Func_Usart1_Rx)
|
|
|
|
|
#define RS485_USART_TX_FUNC (Func_Usart1_Tx)
|
|
|
|
|
#define RS485_USART_RI_NUM (INT_USART1_RI)
|
|
|
|
|
#define RS485_USART_EI_NUM (INT_USART1_EI)
|
|
|
|
|
#define RS485_USART_TI_NUM (INT_USART1_TI)
|
|
|
|
|
#define RS485_USART_TCI_NUM (INT_USART1_TCI)
|
|
|
|
|
#define RS485_FCG1_PERIPH (PWC_FCG1_PERIPH_USART1)
|
|
|
|
|
#define RS485_RXPIN_EXIT_CH (ExtiCh14)
|
|
|
|
|
#define RS485_RXPIN_EXIT_SRC (INT_PORT_EIRQ14)
|
|
|
|
|
|
|
|
|
|
#define RS485_CTRL_PORT (PortC)
|
|
|
|
|
#define RS485_CTRL_PIN (Pin13)
|
|
|
|
|
#define RS485_TX() PORT_SetBits(RS485_CTRL_PORT, RS485_CTRL_PIN)
|
|
|
|
|
#define RS485_RX() PORT_ResetBits(RS485_CTRL_PORT, RS485_CTRL_PIN)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/* LED */
|
|
|
|
|
#define LED_Blue_PORT (PortH)
|
|
|
|
|
#define LED_Blue_PIN (Pin02)
|
|
|
|
|
|
|
|
|
|
#define LED_Green_PORT (PortB)
|
|
|
|
|
#define LED_Green_PIN (Pin01)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/* SPI_SCK Port/Pin definition */
|
|
|
|
|
#define SPI_SCK_PORT (PortA)
|
|
|
|
|
#define SPI_SCK_PIN (Pin05)
|
|
|
|
|
#define SPI_SCK_FUNC (Func_Spi1_Sck)
|
|
|
|
|
|
|
|
|
|
/* SPI_MOSI Port/Pin definition */
|
|
|
|
|
#define SPI_MOSI_PORT (PortA)
|
|
|
|
|
#define SPI_MOSI_PIN (Pin04)
|
|
|
|
|
#define SPI_MOSI_FUNC (Func_Spi1_Mosi)
|
|
|
|
|
|
|
|
|
|
/* SPI_MISO Port/Pin definition */
|
|
|
|
|
#define SPI_MISO_PORT (PortA)
|
|
|
|
|
#define SPI_MISO_PIN (Pin02)
|
|
|
|
|
#define SPI_MISO_FUNC (Func_Spi1_Miso)
|
|
|
|
|
|
|
|
|
|
/* SPI_MOSI Port/Pin definition */
|
|
|
|
|
#define SPI_NSS_PORT (PortA)
|
|
|
|
|
#define SPI_NSS_PIN (Pin03)
|
|
|
|
|
#define SPI_NSS_FUNC (Func_Spi1_Nss0)
|
|
|
|
|
#define SPI_NSS_SET() PORT_SetBits(SPI_NSS_PORT, SPI_NSS_PIN)
|
|
|
|
|
#define SPI_NSS_CLR() PORT_ResetBits(SPI_NSS_PORT, SPI_NSS_PIN)
|
|
|
|
|
|
|
|
|
|
/* SPI unit and clock definition */
|
|
|
|
|
#define SPI_UNIT (M4_SPI1)
|
|
|
|
|
#define SPI_UNIT_CLOCK (PWC_FCG1_PERIPH_SPI1)
|
|
|
|
|
|
|
|
|
|
//SPI3
|
|
|
|
|
// SPI3
|
|
|
|
|
#if(USE_SPI3 == 1)
|
|
|
|
|
/* SPI3_SCK Port/Pin definition */
|
|
|
|
|
#define SPI3_SCK_PORT (PortB)
|
|
|
|
|
#define SPI3_SCK_PIN (Pin14)
|
|
|
|
@@ -151,37 +75,90 @@
|
|
|
|
|
/* SPI3 unit and clock definition */
|
|
|
|
|
#define SPI3_UNIT (M4_SPI3)
|
|
|
|
|
#define SPI3_UNIT_CLOCK (PWC_FCG1_PERIPH_SPI3)
|
|
|
|
|
#endif
|
|
|
|
|
// RS485
|
|
|
|
|
#if(USE_RS485 == 1)
|
|
|
|
|
#define RS485_USART_CH (M4_USART1)
|
|
|
|
|
//#define RS485_USART_RX_PORT (PortB)
|
|
|
|
|
//#define RS485_USART_RX_PIN (Pin08)
|
|
|
|
|
//#define RS485_USART_TX_PORT (PortB)
|
|
|
|
|
//#define RS485_USART_TX_PIN (Pin09)
|
|
|
|
|
#define RS485_USART_RX_PORT (PortA)
|
|
|
|
|
#define RS485_USART_RX_PIN (Pin15)
|
|
|
|
|
#define RS485_USART_TX_PORT (PortA)
|
|
|
|
|
#define RS485_USART_TX_PIN (Pin12)
|
|
|
|
|
#define RS485_USART_RX_FUNC (Func_Usart1_Rx)
|
|
|
|
|
#define RS485_USART_TX_FUNC (Func_Usart1_Tx)
|
|
|
|
|
#define RS485_USART_RI_NUM (INT_USART1_RI)
|
|
|
|
|
#define RS485_USART_EI_NUM (INT_USART1_EI)
|
|
|
|
|
#define RS485_USART_TI_NUM (INT_USART1_TI)
|
|
|
|
|
#define RS485_USART_TCI_NUM (INT_USART1_TCI)
|
|
|
|
|
#define RS485_FCG1_PERIPH (PWC_FCG1_PERIPH_USART1)
|
|
|
|
|
#define RS485_RXPIN_EXIT_CH (ExtiCh14)
|
|
|
|
|
#define RS485_RXPIN_EXIT_SRC (INT_PORT_EIRQ14)
|
|
|
|
|
|
|
|
|
|
#define RS485_CTRL_PORT (PortC)
|
|
|
|
|
#define RS485_CTRL_PIN (Pin13)
|
|
|
|
|
#define RS485_TX() PORT_SetBits(RS485_CTRL_PORT, RS485_CTRL_PIN)
|
|
|
|
|
#define RS485_RX() PORT_ResetBits(RS485_CTRL_PORT, RS485_CTRL_PIN)
|
|
|
|
|
#endif
|
|
|
|
|
//< RTC
|
|
|
|
|
#if(USE_RTC == 1)
|
|
|
|
|
#define RTC_IRQn Int001_IRQn
|
|
|
|
|
#endif
|
|
|
|
|
//<<----------------------------- CS1237 ------------------------------->>
|
|
|
|
|
//< LEFTUP CS1237
|
|
|
|
|
#if(USE_CS1237_LEFTUP == 1)
|
|
|
|
|
#define LEFTUP_CS1237_DOUT_PORTx (PortB)
|
|
|
|
|
#define LEFTUP_CS1237_DOUT_PINx (Pin00)
|
|
|
|
|
#define SET_LEFTUP_CS1237_DOUT() PORT_SetBits(LEFTUP_CS1237_DOUT_PORTx, LEFTUP_CS1237_DOUT_PINx)//拉高
|
|
|
|
|
#define CLR_LEFTUP_CS1237_DOUT() PORT_ResetBits(LEFTUP_CS1237_DOUT_PORTx, LEFTUP_CS1237_DOUT_PINx)//拉低
|
|
|
|
|
#define GET_LEFTUP_CS1237_DOUT() Gpio_GetInputIO(LEFTUP_CS1237_DOUT_PORTx, LEFTUP_CS1237_DOUT_PINx)
|
|
|
|
|
|
|
|
|
|
/* SDIOC Port/Pin definition */
|
|
|
|
|
#define SDIOC_CD_PORT (PortA)
|
|
|
|
|
#define SDIOC_CD_PIN (Pin10)
|
|
|
|
|
#define LEFTUP_CS1237_SCLK_PORTx (PortB)
|
|
|
|
|
#define LEFTUP_CS1237_SCLK_PINx (Pin01)
|
|
|
|
|
#define SET_LEFTUP_CS1237_SCLK() PORT_SetBits(LEFTUP_CS1237_SCLK_PORTx, LEFTUP_CS1237_SCLK_PINx)//拉高
|
|
|
|
|
#define CLR_LEFTUP_CS1237_SCLK() PORT_ResetBits(LEFTUP_CS1237_SCLK_PORTx, LEFTUP_CS1237_SCLK_PINx)//拉低
|
|
|
|
|
#endif
|
|
|
|
|
//< LEFTLOW CS1237
|
|
|
|
|
#if(USE_CS1237_LEFTLOW == 1)
|
|
|
|
|
#define LEFTLOW_CS1237_DOUT_PORTx (PortB)
|
|
|
|
|
#define LEFTLOW_CS1237_DOUT_PINx (Pin02)
|
|
|
|
|
#define SET_LEFTLOW_CS1237_DOUT() PORT_SetBits(LEFTLOW_CS1237_DOUT_PORTx, LEFTLOW_CS1237_DOUT_PINx)//拉高
|
|
|
|
|
#define CLR_LEFTLOW_CS1237_DOUT() PORT_ResetBits(LEFTLOW_CS1237_DOUT_PORTx, LEFTLOW_CS1237_DOUT_PINx)//拉低
|
|
|
|
|
#define GET_LEFTLOW_CS1237_DOUT() Gpio_GetInputIO(LEFTLOW_CS1237_DOUT_PORTx, LEFTLOW_CS1237_DOUT_PINx)
|
|
|
|
|
|
|
|
|
|
#define SDIOC_CK_PORT (PortB)
|
|
|
|
|
#define SDIOC_CK_PIN (Pin15)
|
|
|
|
|
#define LEFTLOW_CS1237_SCLK_PORTx (PortB)
|
|
|
|
|
#define LEFTLOW_CS1237_SCLK_PINx (Pin10)
|
|
|
|
|
#define SET_LEFTLOW_CS1237_SCLK() PORT_SetBits(LEFTLOW_CS1237_SCLK_PORTx, LEFTLOW_CS1237_SCLK_PINx)//拉高
|
|
|
|
|
#define CLR_LEFTLOW_CS1237_SCLK() PORT_ResetBits(LEFTLOW_CS1237_SCLK_PORTx, LEFTLOW_CS1237_SCLK_PINx)//拉低
|
|
|
|
|
#endif
|
|
|
|
|
//< RIGHTUP CS1237
|
|
|
|
|
#if(USE_CS1237_RIGHTUP == 1)
|
|
|
|
|
#define RIGHTUP_CS1237_DOUT_PORTx (PortA)
|
|
|
|
|
#define RIGHTUP_CS1237_DOUT_PINx (Pin06)
|
|
|
|
|
#define SET_RIGHTUP_CS1237_DOUT() PORT_SetBits(RIGHTUP_CS1237_DOUT_PORTx, RIGHTUP_CS1237_DOUT_PINx)//拉高
|
|
|
|
|
#define CLR_RIGHTUP_CS1237_DOUT() PORT_ResetBits(RIGHTUP_CS1237_DOUT_PORTx, RIGHTUP_CS1237_DOUT_PINx)//拉低
|
|
|
|
|
#define GET_RIGHTUP_CS1237_DOUT() Gpio_GetInputIO(RIGHTUP_CS1237_DOUT_PORTx, RIGHTUP_CS1237_DOUT_PINx)
|
|
|
|
|
|
|
|
|
|
#define SDIOC_CMD_PORT (PortA)
|
|
|
|
|
#define SDIOC_CMD_PIN (Pin06)
|
|
|
|
|
|
|
|
|
|
#define SDIOC_D0_PORT (PortB)
|
|
|
|
|
#define SDIOC_D0_PIN (Pin04)
|
|
|
|
|
|
|
|
|
|
#define SDIOC_D1_PORT (PortA)
|
|
|
|
|
#define SDIOC_D1_PIN (Pin08)
|
|
|
|
|
|
|
|
|
|
#define SDIOC_D2_PORT (PortA)
|
|
|
|
|
#define SDIOC_D2_PIN (Pin09)
|
|
|
|
|
|
|
|
|
|
#define SDIOC_D3_PORT (PortB)
|
|
|
|
|
#define SDIOC_D3_PIN (Pin05)
|
|
|
|
|
|
|
|
|
|
/* SD sector && count */
|
|
|
|
|
#define SD_SECTOR_START (0u)
|
|
|
|
|
#define SD_SECTOR_COUNT (4u)
|
|
|
|
|
|
|
|
|
|
/* SDIOC unit */
|
|
|
|
|
#define SDIOC_UNIT (M4_SDIOC1)
|
|
|
|
|
#define RIGHTUP_CS1237_SCLK_PORTx (PortA)
|
|
|
|
|
#define RIGHTUP_CS1237_SCLK_PINx (Pin07)
|
|
|
|
|
#define SET_RIGHTUP_CS1237_SCLK() PORT_SetBits(RIGHTUP_CS1237_SCLK_PORTx, RIGHTUP_CS1237_SCLK_PINx)//拉高
|
|
|
|
|
#define CLR_RIGHTUP_CS1237_SCLK() PORT_ResetBits(RIGHTUP_CS1237_SCLK_PORTx, RIGHTUP_CS1237_SCLK_PINx)//拉低
|
|
|
|
|
#endif
|
|
|
|
|
//< RIGHRLOW CS1237
|
|
|
|
|
#if(USE_CS1237_RIGHRLOW == 1)
|
|
|
|
|
#define RIGHRLOW_CS1237_DOUT_PORTx (PortA)
|
|
|
|
|
#define RIGHRLOW_CS1237_DOUT_PINx (Pin04)
|
|
|
|
|
#define SET_RIGHRLOW_CS1237_DOUT() PORT_SetBits(RIGHRLOW_CS1237_DOUT_PORTx, RIGHRLOW_CS1237_DOUT_PINx)//拉高
|
|
|
|
|
#define CLR_RIGHRLOW_CS1237_DOUT() PORT_ResetBits(RIGHRLOW_CS1237_DOUT_PORTx, RIGHRLOW_CS1237_DOUT_PINx)//拉低
|
|
|
|
|
#define GET_RIGHRLOW_CS1237_DOUT() Gpio_GetInputIO(RIGHRLOW_CS1237_DOUT_PORTx, RIGHRLOW_CS1237_DOUT_PINx)
|
|
|
|
|
|
|
|
|
|
#define RIGHRLOW_CS1237_SCLK_PORTx (PortA)
|
|
|
|
|
#define RIGHRLOW_CS1237_SCLK_PINx (Pin05)
|
|
|
|
|
#define SET_RIGHRLOW_CS1237_SCLK() PORT_SetBits(RIGHRLOW_CS1237_SCLK_PORTx, RIGHRLOW_CS1237_SCLK_PINx)//拉高
|
|
|
|
|
#define CLR_RIGHRLOW_CS1237_SCLK() PORT_ResetBits(RIGHRLOW_CS1237_SCLK_PORTx, RIGHRLOW_CS1237_SCLK_PINx)//拉低
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
void BSP_Init(void);
|
|
|
|
|