118 lines
3.6 KiB
C
118 lines
3.6 KiB
C
/*
|
|
* Copyright (c) 2006-2021, RT-Thread Development Team
|
|
*
|
|
* SPDX-License-Identifier: Apache-2.0
|
|
*
|
|
* Change Logs:
|
|
* Date Author Notes
|
|
* 2009-09-22 Bernard add board.h to this bsp
|
|
*/
|
|
|
|
// <<< Use Configuration Wizard in Context Menu >>>
|
|
#ifndef __BOARD_H__
|
|
#define __BOARD_H__
|
|
|
|
#include <stm32f2xx.h>
|
|
|
|
/* board configuration */
|
|
// <o> SDCard Driver <1=>SDIO sdcard <0=>SPI MMC card
|
|
// <i>Default: 1
|
|
#define STM32_USE_SDIO 1
|
|
|
|
/* whether use board external SRAM memory */
|
|
// <e>Use external SRAM memory on the board
|
|
// <i>Enable External SRAM memory
|
|
#define STM32_EXT_SRAM 0
|
|
// <o>Begin Address of External SRAM
|
|
// <i>Default: 0x68000000
|
|
#define STM32_EXT_SRAM_BEGIN 0x68000000 /* the begining address of external SRAM */
|
|
// <o>End Address of External SRAM
|
|
// <i>Default: 0x68080000
|
|
#define STM32_EXT_SRAM_END 0x68080000 /* the end address of external SRAM */
|
|
// </e>
|
|
|
|
// <o> Internal SRAM memory size[Kbytes] <8-128>
|
|
// <i>Default: 64
|
|
#define STM32_SRAM_SIZE 128
|
|
#define STM32_SRAM_END (0x20000000 + STM32_SRAM_SIZE * 1024)
|
|
|
|
// <o> Console on USART: <0=> no console <1=>USART 1 <2=>USART 2 <3=> USART 3
|
|
// <i>Default: 1
|
|
#define STM32_CONSOLE_USART 1
|
|
|
|
// <o> Ethernet Interface: <0=> Microchip ENC28J60
|
|
#define STM32_ETH_IF 0
|
|
|
|
void rt_hw_board_led_on(int n);
|
|
void rt_hw_board_led_off(int n);
|
|
void rt_hw_board_init(void);
|
|
|
|
#if STM32_CONSOLE_USART == 0
|
|
#define CONSOLE_DEVICE "no"
|
|
#elif STM32_CONSOLE_USART == 1
|
|
#define CONSOLE_DEVICE "uart1"
|
|
#elif STM32_CONSOLE_USART == 2
|
|
#define CONSOLE_DEVICE "uart2"
|
|
#elif STM32_CONSOLE_USART == 3
|
|
#define CONSOLE_DEVICE "uart3"
|
|
#endif
|
|
|
|
#if STM32_USE_SDIO
|
|
/**
|
|
* @brief SD FLASH SDIO Interface
|
|
*/
|
|
#define SD_DETECT_PIN GPIO_Pin_0 /* PB.0 */
|
|
#define SD_DETECT_GPIO_PORT GPIOB /* GPIOB */
|
|
#define SD_DETECT_GPIO_CLK RCC_AHB1Periph_GPIOB
|
|
|
|
#define SDIO_FIFO_ADDRESS ((uint32_t)0x40012C80)
|
|
/**
|
|
* @brief SDIO Intialization Frequency (400KHz max)
|
|
*/
|
|
#define SDIO_INIT_CLK_DIV ((uint8_t)0x76)
|
|
/**
|
|
* @brief SDIO Data Transfer Frequency (25MHz max)
|
|
*/
|
|
#define SDIO_TRANSFER_CLK_DIV ((uint8_t)0x0)
|
|
|
|
#define SD_SDIO_DMA DMA2
|
|
#define SD_SDIO_DMA_CLK RCC_AHB1Periph_DMA2
|
|
|
|
#define SD_SDIO_DMA_STREAM3 3
|
|
//#define SD_SDIO_DMA_STREAM6 6
|
|
|
|
#ifdef SD_SDIO_DMA_STREAM3
|
|
#define SD_SDIO_DMA_STREAM DMA2_Stream3
|
|
#define SD_SDIO_DMA_CHANNEL DMA_Channel_4
|
|
#define SD_SDIO_DMA_FLAG_FEIF DMA_FLAG_FEIF3
|
|
#define SD_SDIO_DMA_FLAG_DMEIF DMA_FLAG_DMEIF3
|
|
#define SD_SDIO_DMA_FLAG_TEIF DMA_FLAG_TEIF3
|
|
#define SD_SDIO_DMA_FLAG_HTIF DMA_FLAG_HTIF3
|
|
#define SD_SDIO_DMA_FLAG_TCIF DMA_FLAG_TCIF3
|
|
#elif defined SD_SDIO_DMA_STREAM6
|
|
#define SD_SDIO_DMA_STREAM DMA2_Stream6
|
|
#define SD_SDIO_DMA_CHANNEL DMA_Channel_4
|
|
#define SD_SDIO_DMA_FLAG_FEIF DMA_FLAG_FEIF6
|
|
#define SD_SDIO_DMA_FLAG_DMEIF DMA_FLAG_DMEIF6
|
|
#define SD_SDIO_DMA_FLAG_TEIF DMA_FLAG_TEIF6
|
|
#define SD_SDIO_DMA_FLAG_HTIF DMA_FLAG_HTIF6
|
|
#define SD_SDIO_DMA_FLAG_TCIF DMA_FLAG_TCIF6
|
|
#endif /* SD_SDIO_DMA_STREAM3 */
|
|
|
|
void SD_LowLevel_DeInit(void);
|
|
void SD_LowLevel_Init(void);
|
|
void SD_LowLevel_DMA_TxConfig(uint32_t *BufferSRC, uint32_t BufferSize);
|
|
void SD_LowLevel_DMA_RxConfig(uint32_t *BufferDST, uint32_t BufferSize);
|
|
|
|
#endif
|
|
void rt_hw_usart_init(void);
|
|
|
|
/* SD Card init function */
|
|
void rt_hw_msd_init(void);
|
|
|
|
/* ETH interface init function */
|
|
|
|
#endif
|
|
|
|
// <<< Use Configuration Wizard in Context Menu >>>
|