75 lines
2.5 KiB
C
75 lines
2.5 KiB
C
#ifndef _FRAM_H_
|
|
#define _FRAM_H_
|
|
|
|
#include "stm32f10x.h"
|
|
#include "stm32f10x_gpio.h"
|
|
|
|
//#define FRAM_SPI SPI3
|
|
//#define FRAM_SPI_CLK RCC_APB2Periph_SPI1
|
|
|
|
|
|
|
|
#define FRAM_SPI_SCK_PIN GPIO_Pin_3
|
|
#define FRAM_SPI_SCK_GPIO_PORT GPIOB
|
|
#define FRAM_SPI_SCK_GPIO_CLK RCC_APB2Periph_GPIOB
|
|
|
|
#define FRAM_SPI_MISO_PIN GPIO_Pin_4
|
|
#define FRAM_SPI_MISO_GPIO_PORT GPIOB
|
|
#define FRAM_SPI_MISO_GPIO_CLK RCC_APB2Periph_GPIOB
|
|
|
|
#define FRAM_SPI_MOSI_PIN GPIO_Pin_5
|
|
#define FRAM_SPI_MOSI_GPIO_PORT GPIOA
|
|
#define FRAM_SPI_MOSI_GPIO_CLK RCC_APB2Periph_GPIOB
|
|
|
|
#define SPI_FLASH_CS_PIN GPIO_Pin_15
|
|
#define SPI_FLASH_GPIO_PORT GPIOA
|
|
#define SPI_FLASH_GPIO_CLK RCC_APB2Periph_GPIOA
|
|
|
|
|
|
/*
|
|
#define FRAM_CS_PIN GPIO_Pin_0
|
|
#define FRAM_CS_GPIO_PORT GPIOB
|
|
#define FRAM_CS_GPIO_CLK RCC_APB2Periph_GPIOB
|
|
*/
|
|
|
|
#if 0
|
|
#define FRAM_CS_PIN GPIO_Pin_4
|
|
#define FRAM_CS_GPIO_PORT GPIOA
|
|
#define FRAM_CS_GPIO_CLK RCC_APB2Periph_GPIOA
|
|
|
|
#define SPI_FLASH_CS_PIN GPIO_Pin_0
|
|
#define SPI_FLASH_GPIO_PORT GPIOB
|
|
#define SPI_FLASH_GPIO_CLK RCC_APB2Periph_GPIOB
|
|
#endif
|
|
|
|
|
|
|
|
#define DGFLASH_CS_LOW() GPIO_ResetBits(SPI_FLASH_GPIO_PORT, GPIO_Pin_15)
|
|
#define DGFLASH_CS_HIGH() GPIO_SetBits(SPI_FLASH_GPIO_PORT, GPIO_Pin_15)
|
|
|
|
|
|
|
|
#define FRAM_CS_LOW() GPIO_ResetBits(SPI_FLASH_GPIO_PORT, GPIO_Pin_15)
|
|
|
|
#define FRAM_CS_HIGH() GPIO_SetBits(SPI_FLASH_GPIO_PORT, GPIO_Pin_15)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
void FRAM_init(void);
|
|
void set_write_enable_latch(void);
|
|
void reset_write_enable_latch(void);
|
|
u8 read_status_reg(void);
|
|
void write_status_reg(u8 val);
|
|
void read_memory_code(u16 addr, u8 *buf, u16 length);
|
|
void write_memory_code(u16 addr, u8 *buf, u16 length);
|
|
void read_device_ID(u8 *buf);
|
|
void fast_read_memory_code(u16 addr, u8 *buf, u16 length);
|
|
uint8_t sFLASH_SendByte(uint8_t byte);
|
|
u8 FRAMReadWriteByte(u8 data);
|
|
void spiFlash_FRAMFlash_init(void);
|
|
void fill_FRAM_area(u16 start, u8 value, u16 length);
|
|
#endif |