本文博客链接:http://blog.csdn.net/jdh99,作者:jdh,
由于一层楼发不完 分三层发。
环境: 主机:WIN7 开发环境:MDK4.72 MCU:STM32F103ZE
说明: sram型号:IS62WV51216BLL
连接方式:FSMC
大小:1M字节.512K * 16
源代码: inf_sram.h
/*********************************************************************
* sram接口层头文件
* (c)copyright 2013,jdh
* All Right Reserved
*文件名:inf_sram.h
*程序员:jdh
*修改日期:2013/10/10
* 2013/10/11
**********************************************************************/
/*********************************************************************
* 说明
*sram型号:IS62WV51216BLL
*连接方式:FSMC
*大小:1M字节.512K * 16
**********************************************************************/
#ifndef _INF_SRAM_H_
#define _INF_SRAM_H_
/*********************************************************************
* 头文件
**********************************************************************/
#include "stm32f10x.h"
#include "stm32f10x_fsmc.h"
/*********************************************************************
* 宏定义
**********************************************************************/
/*********************************************************************
* SRAM2的BANK1起始地址
**********************************************************************/
#define Bank1_SRAM2_ADDR ((uint32_t)0x64000000)
/*********************************************************************
* 函数
**********************************************************************/
/*********************************************************************
* 初始化sram
**********************************************************************/
void inf_init_sram(void);
/*********************************************************************
* 写入数据包
*输入:pBuffer:数据指针
* WriteAddr:写入数据地址
* NumHalfwordToWrite:数据长度
*返回:无
**********************************************************************/
void FSMC_SRAM_WriteBuffer(uint16_t* pBuffer,uint32_t WriteAddr,uint32_t NumHalfwordToWrite);
/*********************************************************************
* 读取数据包
*输入:pBuffer:存放数据的指针
* ReadAddr:读取数据地址
* NumHalfwordToRead:读取数据长度,单位半字,即2字节
*返回:无
**********************************************************************/
void FSMC_SRAM_ReadBuffer(uint16_t* pBuffer, uint32_t ReadAddr, uint32_t NumHalfwordToRead);
/*********************************************************************
* 写入半字数据
*输入:WriteAddr:写入数据地址
* data:数据
*返回:无
**********************************************************************/
void FSMC_SRAM_WriteHalfWord(uint32_t WriteAddr, uint16_t data);
/*********************************************************************
* 读取半字数据
*输入:ReadAddr:读取数据地址
*返回:读取的数据
**********************************************************************/
uint16_t FSMC_SRAM_ReadHalfWord(uint32_t ReadAddr);
|