aboutsummaryrefslogtreecommitdiffstats
path: root/src/stm32lib/examples/SPI/M25P64_FLASH/spi_flash.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/stm32lib/examples/SPI/M25P64_FLASH/spi_flash.h')
-rwxr-xr-xsrc/stm32lib/examples/SPI/M25P64_FLASH/spi_flash.h68
1 files changed, 68 insertions, 0 deletions
diff --git a/src/stm32lib/examples/SPI/M25P64_FLASH/spi_flash.h b/src/stm32lib/examples/SPI/M25P64_FLASH/spi_flash.h
new file mode 100755
index 0000000..9b7d569
--- /dev/null
+++ b/src/stm32lib/examples/SPI/M25P64_FLASH/spi_flash.h
@@ -0,0 +1,68 @@
+/******************** (C) COPYRIGHT 2008 STMicroelectronics ********************
+* File Name : spi_flash.h
+* Author : MCD Application Team
+* Version : V2.0.1
+* Date : 06/13/2008
+* Description : Header for spi_flash.c file.
+********************************************************************************
+* THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS
+* WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE TIME.
+* AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY DIRECT,
+* INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING FROM THE
+* CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE CODING
+* INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS.
+*******************************************************************************/
+
+/* Define to prevent recursive inclusion -------------------------------------*/
+#ifndef __SPI_FLASH_H
+#define __SPI_FLASH_H
+
+/* Includes ------------------------------------------------------------------*/
+#include "stm32f10x_lib.h"
+
+/* Exported types ------------------------------------------------------------*/
+/* Exported constants --------------------------------------------------------*/
+/* Uncomment the line corresponding to the STMicroelectronics evaluation board
+ used to run the example */
+#if !defined (USE_STM3210B_EVAL) && !defined (USE_STM3210E_EVAL)
+ //#define USE_STM3210B_EVAL
+ #define USE_STM3210E_EVAL
+#endif
+
+#ifdef USE_STM3210B_EVAL
+ #define GPIO_CS GPIOA
+ #define RCC_APB2Periph_GPIO_CS RCC_APB2Periph_GPIOA
+ #define GPIO_Pin_CS GPIO_Pin_4
+#else /* USE_STM3210E_EVAL */
+ #define GPIO_CS GPIOB
+ #define RCC_APB2Periph_GPIO_CS RCC_APB2Periph_GPIOB
+ #define GPIO_Pin_CS GPIO_Pin_2
+#endif
+
+/* Exported macro ------------------------------------------------------------*/
+/* Select SPI FLASH: Chip Select pin low */
+#define SPI_FLASH_CS_LOW() GPIO_ResetBits(GPIO_CS, GPIO_Pin_CS)
+/* Deselect SPI FLASH: Chip Select pin high */
+#define SPI_FLASH_CS_HIGH() GPIO_SetBits(GPIO_CS, GPIO_Pin_CS)
+
+/* Exported functions ------------------------------------------------------- */
+/*----- High layer function -----*/
+void SPI_FLASH_Init(void);
+void SPI_FLASH_SectorErase(u32 SectorAddr);
+void SPI_FLASH_BulkErase(void);
+void SPI_FLASH_PageWrite(u8* pBuffer, u32 WriteAddr, u16 NumByteToWrite);
+void SPI_FLASH_BufferWrite(u8* pBuffer, u32 WriteAddr, u16 NumByteToWrite);
+void SPI_FLASH_BufferRead(u8* pBuffer, u32 ReadAddr, u16 NumByteToRead);
+u32 SPI_FLASH_ReadID(void);
+void SPI_FLASH_StartReadSequence(u32 ReadAddr);
+
+/*----- Low layer function -----*/
+u8 SPI_FLASH_ReadByte(void);
+u8 SPI_FLASH_SendByte(u8 byte);
+u16 SPI_FLASH_SendHalfWord(u16 HalfWord);
+void SPI_FLASH_WriteEnable(void);
+void SPI_FLASH_WaitForWriteEnd(void);
+
+#endif /* __SPI_FLASH_H */
+
+/******************* (C) COPYRIGHT 2008 STMicroelectronics *****END OF FILE****/