FM25L16铁电存储器与F020读写
FM25L16铁电存储器与F020读写 unsigned char SpiReadWrite(unsigned char c) { SPIF = 0; SPI0DAT = c; while (SPIF == 0); return SPI0DAT; } /* unsigned char FMRead(unsigned int addr) { unsigned char b; fm0(); _nop_(); _nop_(); _nop_(); _nop_(); SpiReadWrite(EE_READ); SpiReadWrite(addr >> 8); SpiReadWrite(addr & 0xff); b = SpiReadWrite(0); _nop_(); _nop_(); fm1(); _nop_(); _nop_(); return b; } void FMWrite(unsigned int addr, unsigned char b) { fm0(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); SpiReadWrite(EE_WREN); _nop_(); _nop_(); _nop_(); fm1(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); fm0(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); SpiReadWrite(EE_WRITE); SpiReadWrite(addr >> 8); SpiReadWrite(addr & 0xff); SpiReadWrite(b); _nop_(); _nop_(); fm1(); _nop_(); _nop_(); } */ void FMReadPage(unsigned int addr, unsigned char * index, unsigned char n) { unsigned char i; fm0(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); SpiReadWrite(EE_READ); SpiReadWrite(addr >> 8); SpiReadWrite(addr & 0xff); for(i=0;i<n;i++) { *(index+i) = SpiReadWrite(0); } _nop_(); _nop_(); _nop_(); fm1(); _nop_(); _nop_(); _nop_(); } void FMWritePage(unsigned int addr, unsigned char * index, unsigned char n) { unsigned char i; fm0(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); SpiReadWrite(EE_WREN); _nop_(); _nop_(); _nop_(); fm1(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); fm0(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); SpiReadWrite(EE_WRITE); SpiReadWrite(addr >> 8); SpiReadWrite(addr & 0xff); for(i=0;i<n;i++) { SpiReadWrite(*(index+i)); } _nop_(); _nop_(); fm1(); _nop_(); _nop_(); _nop_(); }
#define EE_WRITE 0x02 //дÊý¾Ý
#define EE_READ 0x03 //¶ÁÊý¾Ý
#define EE_WRDI 0x04 //½ûֹд²Ù×÷
#define EE_RDSR 0x05 //¶Á״̬¼Ä´æÆ÷
#define EE_WREN 0x06 //ÔÊÐíд²Ù×÷
#define fm0() (P6&=0xdf)
#define fm1() (P6|=0x20)
unsigned char SpiReadWrite(unsigned char c)
{
SPIF = 0;
SPI0DAT = c;
while (SPIF == 0);
return SPI0DAT;
}
/*
unsigned char FMRead(unsigned int addr)
{
unsigned char b;
fm0();
_nop_();
_nop_();
_nop_();
_nop_();
- zhuzaixq2016-03-31不错,参考参考还是可以的
- zdd5632013-11-10不太好用,最后还是自己写的
- 第六个葫芦娃2022-02-21一无是处!!!!
- 牛明强2015-03-27可惜不是我需要的那种芯片的
- 粉丝: 0
- 资源: 1
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 202304910142原道明(1).pbix
- 基于Lua的聊天过滤修改版设计源码
- Uibot6.0 (RPA财务机器人师资培训第5天 ) 报销汇总机器人案例实战
- 基于Vue的西安美食攻略应用程序设计源码
- tensorflow-2.6.2-cp38-cp38-win-amd64.whl
- 2023-04-06-项目笔记 - 第八十六阶段 - 4.4.2.84全局变量的作用域-84 -2024.03.28
- 基于C语言解决九宫重排问题(源码+剖析)
- 考研分数计算神器(通过考研分数计算规则制作出来的计算工具,结果精准,操作简单,并且还可以与第二个人进行比较)
- 脚本监控重要文件,并邮箱报警
- 九宫重排介绍.zip说明