⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ffsport_spi.h

📁 The Fat Fs module is a middleware that written in ANSI C. There is no platform dependence, so long a
💻 H
字号:
/***********************************************************
*           MMC/SD-interface to SPI-slot of STR71x         *
*                                                          *
*          by  Frank Goetze  -  www.embedded-os.de         *
************************************************************
*                      FFSPort_SPI.c                       *
*                 SPI-PORT DECLARATIONS                    *
***********************************************************/
#define MMC_STR71x

#include "../../../../inc/OS_Def_STR71x.h"

#ifndef STR711_REGS
 #define STR_PRCCU_CFR    (*(volatile unsigned long *)0xA0000008)
 #define STR_PRCCU_CFR_CSU_CKSEL     0x1U
 #define STR_PRCCU_CFR_LOCK          0x2U
 #define STR_PRCCU_CFR_CK2_16        0x8U
 #define STR_PRCCU_CFR_DIV2          0x8000U

 #define STR_PRCCU_PLL1CR (*(volatile unsigned long *)0xA0000018)
 #define STR_PRCCU_PLL1CR_DX_MASK    0x7U
 #define STR_PRCCU_PLL1CR_MX_MASK    0x30U
 #define STR_PRCCU_PLL1CR_FREF_RANGE 0x40U
 #define STR_PRCCU_PLL1CR_FREEN      0x80U
 #define STR_PRCCU_PLL1CR_MX0        0x10U
 #define STR_PRCCU_PLL1CR_MX1        0x20U

 #define STR_PRCCU_PDIVR  (*(volatile unsigned long *)0xA0000044)
 #define STR_PRCCU_PDIVR_FACT1_MASK  0x3U
 #define STR_PRCCU_PDIVR_FACT2_MASK  0x300U

 #define STR_PRCCU_PWRCR  (*(volatile unsigned long *)0xA0000054)
 #define STR_PRCCU_PWRCR_VROK        0x1000U

 #define STR_BSPI1_CLK   (*(volatile unsigned short *)0xC000B010)
 #define STR_BSPI1_RXR   (*(volatile unsigned short *)0xC000B000)
 #define STR_BSPI1_TXR   (*(volatile unsigned short *)0xC000B004)
 #define STR_BSPI1_CSR1  (*(volatile unsigned short *)0xC000B008)
 #define STR_BSPI1_CSR2  (*(volatile unsigned short *)0xC000B00C)
 #define STR_BSPI1_CSR2_RFNE         0x8U
 #define STR_BSPI1_CSR2_TFE          0x40U

 #define STR_IOPORT0_PC0 (*(volatile unsigned short *)0xE0003000)
 #define STR_IOPORT0_PC1 (*(volatile unsigned short *)0xE0003004)
 #define STR_IOPORT0_PC2 (*(volatile unsigned short *)0xE0003008)
 #define STR_IOPORT0_PD  (*(volatile unsigned short *)0xE000300C)
 #define STR_IOPORT1_PC0 (*(volatile unsigned short *)0xE0004000)
 #define STR_IOPORT1_PC1 (*(volatile unsigned short *)0xE0004004)
 #define STR_IOPORT1_PC2 (*(volatile unsigned short *)0xE0004008)
 #define STR_IOPORT1_PD  (*(volatile unsigned short *)0xE000400C)
#endif
/*
************************************************************
*                      DEFINITIONS
************************************************************
*/
#define FFSPort_MMC_CS_OFF            STR_IOPORT0_PD |= 0x0100     // set P0.8 high (not P0.7 - see comment warning in c-file)
#define FFSPort_MMC_CS_ON             STR_IOPORT0_PD &=~0x0100     // set P0.8 low
#define FFSPort_MMC_CD()              (STR_IOPORT1_PD & 0x8000)    // P1.15 as card-detect -- only for none-INT based card-detect
#define FFSPort_MMC_WP()              (STR_IOPORT1_PD & 0x0400)    // P1.10 as write-protect

/*
***********************************************************
*          MMC-Port of FFS/FAT FUNCTION PROTOTYPES
***********************************************************
*/
U32 FFSPort_MMC_SetBR(U32 maxclk);
U08 FFSPort_MMC_Send(U08 w);
U08 FFSPort_MMC_Init(void);
U08 FFSPort_MMC_ReInit(void);
//U08 FFSPort_MMC_CD(void);                        // for INT based card-detect

/************************* END ****************************/

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -