亚洲春色中文字幕久久久-三上亚,91精品国产亚一区二区三区,久久久九色综合亚洲成色777,涩涩视频下载,国产午夜亚洲精品午夜鲁丝片,国产精品A一区二区三区腾讯导航,影音先锋色情AV在线看片,蜜臀国产在线视频,极品少妇高潮啪啪无码吴梦梦 ,精品人妻无码一区二区三区手机版

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 6609|回復: 4
收起左側

W25Q128用STM32驅動程序,寫數據總不成功,求解

[復制鏈接]
ID:247125 發表于 2020-5-23 19:45 | 顯示全部樓層 |閱讀模式
W25Q128JVSQ

可以讀讀取到ID,讀出0地址的16個字節全是0xFF。

然后寫0~16地址.寫完讀出來還是0xFF。用的原子的驅動程序和板子

以下是串口輸出:
Flash ID:0XEF17
JEDEC ID:0XEF4018
Status all:0X600200
SPI_FLASH data addr=0~16
//代碼如下
//SPI FLASH
SPI_Flash_Init();
print_hex("Flash ID:",SPI_Flash_ReadID());
print_hex("JEDEC ID:",flash_read_jedec_id());
print_hex("Status all:",flash_read_state_all());
for(temp=0;temp<16;temp++)
{
  send.buf[temp]= temp;
}
flash_page_write(send.buf,0x0,0x0,16);
//flash驅動代碼
void flash_page_write(uint8 *pBuffer,uint16 page,uint8 addr,uint8 NumByteToWrite)
{
u8 i;
SPI_FLASH_Write_Enable();                  //SET WEL
SPI_FLASH_CS=0;                            //使能器件   
    SPI1_ReadWriteByte(W25X_PageProgram);      //發送寫頁命令   
    SPI1_ReadWriteByte(page>>8); //發送24bit地址   
    SPI1_ReadWriteByte(page);   
    SPI1_ReadWriteByte(addr);   
   for(i=0;i<NumByteToWrite;i++)SPI1_ReadWriteByte(pBuffer[ i]);//循環寫數  
SPI_FLASH_CS=1;                            //取消片選
SPI1_ReadWriteByte(0xff); //延時8個時鐘
SPI_Flash_Wait_Busy();        //等待寫入結束
}
網上搜索代碼大多是這樣。特意在每個CS拉高后延時8個CLK。還是沒有效果。
92653e1527e2925577d0184182d76bd.png
回復

使用道具 舉報

ID:247125 發表于 2020-5-23 19:52 | 顯示全部樓層
寫使能已經調試過,SPI_FLASH_Write_Enable(); 執行后status 變成0x02.應該是寫使能打開了,寫完16字節后立即讀狀態就是0x0.也沒有讀到busy
回復

使用道具 舉報

ID:592807 發表于 2020-5-25 10:56 | 顯示全部樓層
用這個我試過沒問題,還是讀不出來就可能是你其他地方沒做好

25-SPI—讀寫串行FLASH(W25Q64).rar

668.35 KB, 下載次數: 196

回復

使用道具 舉報

ID:247125 發表于 2020-5-25 18:50 | 顯示全部樓層
感謝各位關注,問題已解決,換了一篇flash就好 了。
Flash ID:0XEF17
JEDEC ID:0XEF4018
Status all:0X600200
erase_sector=26
SPI_FLASH data addr=0~16:\0       

回復

使用道具 舉報

ID:555216 發表于 2020-5-26 21:13 | 顯示全部樓層
謝謝 同樣的問題
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表