使用C:\Program Files (x86)\Cypress\EZ-USB FX3 SDK\1.3\firmware\serialif_examples\cyfxusbspiregmode 源工程调试SPI flash,但是先CyFxSpiEraseSector(1,7,wp),再CyFxSpiTransfer(1792,4,flash_write,0);再CyFxSpiTransfer(1792,4,flash_read,1);//从flash中读取数据,擦除、读和写都成功,但是会对后面程序运行造成

公告

大中华汽车电子生态圈社区并入开发者社区- 更多资讯点击此

Tip / 登入 to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
chme_4259176
Level 2
Level 2
5 replies posted 10 questions asked 5 questions asked

CyU3PReturnStatus_t write_data(void)//向flash写入数据

{

   unsigned char flash_write[4]={0};

unsigned char flash_read[4]={0};

   CyU3PReturnStatus_t status = CY_U3P_SUCCESS;

   unsigned char wp[10]={0x01};

   flash_write[0] =Flag ;flash_write[1] =2 ;flash_write[2] = 2;flash_write[3] = 3;

   status=CyFxSpiEraseSector(1,7,wp);

   if(status != CY_U3P_SUCCESS){

      CyU3PDebugPrint (4, "Erase Error: %x\r\n",status);

   }

   status=CyFxSpiTransfer(1792,4,flash_write,0);//向flash写入数据

   if(status != CY_U3P_SUCCESS){

      CyU3PDebugPrint (4, "Write Error: %x\r\n",status);

   }//*/

//   status = CyFxSpiTransfer(1792,4,flash_read,1);//从flash中读取数据

//        if(status != CY_U3P_SUCCESS){

//           CyU3PDebugPrint (4, "\r\nRead Error: %x\r\n",status);

//        }

   return status;

}

CyU3PReturnStatus_t read_data(void)//从flash中读取数据

{

    unsigned char flash_read[4]={0};

    CyU3PReturnStatus_t status = CY_U3P_SUCCESS;

    CyFxSpiTransfer(1792,4,flash_read,1);//从flash中读取数据

    Flag=flash_read[0];

    return CY_U3P_SUCCESS;//Flag;

}

0 点赞
1 解答
2 回复数