📄 main.c
字号:
/****************************************Copyright (c)****************************************************
** Guangzhou ZHIYUAN electronics Co.,LTD.
**
** http://www.embedtools.com
**
**--------------File Info---------------------------------------------------------------------------------
** File name: main.c
** Latest modified Date: 2007.09.08
** Latest Version: v1.1
** Descriptions: The SST25VF016B application function
**
**--------------------------------------------------------------------------------------------------------
** Created by: Zhao shimin
** Created date: 2007.09.08
** Version: v1.0
** Descriptions: The original version
**
**--------------------------------------------------------------------------------------------------------
** Modified by: Kang qinhua
** Modified date: 2008.01.13
** Version: v1.1
** Descriptions:
**
*********************************************************************************************************/
#include "config.h"
/* 宏, 用于描述API的入口参数 */
/* 读操作函数入口参数的宏 */
#define RDADDR 0x2007
#define NO_BYTES 20
#define RCVBUFPT RdBuf
/* 写操作函数入口参数的宏 */
#define WRADDR 0x2007
#define SNDBUFPT WrBuf
#define WRNO_BYTES 20
uint32 ChipID = 0;
uint8 WrBuf[20] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19,20};
uint8 RdBuf[20];
/*********************************************************************************************************
** Function name: main
**
** Descriptions: 调用软件包,演示SST25VF016B的常规功能
**
** input parameters: NONE
** output parameters: NONE
**
** Returned value: NONE
**
** Created by: Zhao shimin
** Created Date: 2007/09/08
**--------------------------------------------------------------------------------------------------------
** Modified by:
** Modified date:
**--------------------------------------------------------------------------------------------------------
*********************************************************************************************************/
int main (void)
{
uint32 i = 0;
SPIInit();
SSTF016B_RdID(Jedec_ID, &ChipID); /* 单步运行到此处时, 在Watch里
查看ChipID的值是否0xBF2541 */
ChipID &= ~0xff000000; /* 仅保留低24位数据 */
if (ChipID != 0xBF2541) {
while(1);
}
SSTF016B_Erase(0, 511); /* 擦除芯片 */
SSTF016B_WR(WRADDR, SNDBUFPT, WRNO_BYTES); /* 以0x2007为起始地址,将WrBuf
数组里的20个数据写入芯片 */
SSTF016B_RD(RDADDR, NO_BYTES, RCVBUFPT); /* 以0x2007为起始地址,读20个
数据到RdBuf中 */
for (i = 0;i < 19;i++) {
if (RdBuf[i] != WrBuf[i] ) {
while (1);
}
}
SSTF016B_Erase(2, 2); /* 擦除扇区2 */
SSTF016B_RD(RDADDR, NO_BYTES, RCVBUFPT); /* 在此处设置断点,于Watch里观
察RdBuf数组的值是否变为0xFF */
while (1) {
;
}
}
/*********************************************************************************************************
END FILE
********************************************************************************************************/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -