电脑桌面
添加小米粒文库到电脑桌面
安装后可以在桌面快捷访问

M25P80的模拟SPI总线读写程序VIP免费

M25P80的模拟SPI总线读写程序_第1页
M25P80的模拟SPI总线读写程序_第2页
M25P80的模拟SPI总线读写程序_第3页
3 月19 日 M25P80 的模拟SPI 总线读写程序 欢迎转载,但请注明出处与作者.谢谢谅解! MCU:MSP430. 存储器:M25P80(SPI 总线) 虽然MSP430 本身自带SPI 总线模块.但下面的程序并没有用此.而是用普通I/O 模拟总线时序进行操作的.详细代码如下: 在调试时,犯了超级无敌白痴错误.我竟然把FLASHRAM 编程写入只能有1 变0,不能从0 到1,结果在调式的时候不断的向首地址写数,然后都给变成0,接下来回读数据全0,当时还以为是自己的时序没搞定呢.无意间换了个地址重写重读,数据正常。/于是乎"天才的"我认为是首地址已经被我写坏(调试的时候不停的循环写入).接着我象改变的地址重新写一个新数,读出比较,发现数据还是不对.才想起 FLASH RAM 的这个特点,不象 E2RAM 可以随改随写.FLASH 要先擦除再写..!切记 /********************************************************************* *公司名称: * *模 块 名: SPI 总线FLASHRAM 读写模块 * *创 建 人: 日期: * *修 改 人: 日期: * *功能描述: * *其他说明: * *版 本:VER 1.0 **********************************************************************/ #define M25_CLK_0 P4OUT&=~ BIT2 // 时钟置 0 #define M25_CLK_1 P4OUT|=BIT2 //时钟置 1 #define M25_SI_0 P4OUT&=~ BIT3 //输入0,上升沿写数据 #define M25_SI_1 P4OUT|=BIT3 //输入1 #define M25_SO (P4IN & 0X80)>>7 //读出数据,下降沿读数 #define M25_CS_0 P5OUT&=~ BIT2 //片选有效 #define M25_CS_1 P5OUT|=BIT2 //片选无效 #define M25_WP_0 P4OUT&=~ BIT5 #define M25_WP_1 P4OUT|=BIT5 #define M25_HD_0 P4OUT&=~ BIT4 //C 为低电平时,HOLD 下降沿,HOLD 模式 #define M25_HD_1 P4OUT|=BIT4 #define WREN 0X06 //写使能 #define WRDI 0X04 //写禁止 #define RDSR 0X05 //读状态寄存器 #define WRSR 0X01 //写状态寄存器,WEL 为0 不允许写 #define READ 0X03 //读字节 #define FAST_READ 0X0B //快读指令 #define PP 0X02 //页写指令 #define SE 0XD8 //区域擦除 #define BE 0XC7 //批擦除 #define DP 0XB9 //深度掉电模式 #define RES 0XAB //从深度掉电模式苏醒 #define uchar unsigned char #define uint unsigned int /**********************************************...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

确认删除?
VIP
微信客服
  • 扫码咨询
会员Q群
  • 会员专属群点击这里加入QQ群
客服邮箱
回到顶部