From 32e57dac2e61e79b029593eb4d34d727bcc10678 Mon Sep 17 00:00:00 2001 From: iperry Date: Thu, 17 Dec 2009 02:37:07 +0000 Subject: Initial commit of library code, moved from leaftest repo git-svn-id: https://leaflabs.googlecode.com/svn/trunk/library@69 749a229e-a60e-11de-b98f-4500b42dc123 --- src/stm32lib/examples/SPI/M25P64_FLASH/spi_flash.h | 68 ++++++++++++++++++++++ 1 file changed, 68 insertions(+) create mode 100755 src/stm32lib/examples/SPI/M25P64_FLASH/spi_flash.h (limited to 'src/stm32lib/examples/SPI/M25P64_FLASH/spi_flash.h') 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****/ -- cgit v1.2.3