找回密码
 立即注册

QQ登录

只需一步,快速开始

打印 上一主题 下一主题
开启左侧

[M051] 想请教一下各位前辈关于M031-SPI读写外挂flash的相关问题

[复制链接]
跳转到指定楼层
楼主
celink-c000559 发表于 2022-11-5 14:04:20 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我采用SPI对外挂的flash(w25q256)读取ID,寄存器状态,但返回的都是0Xff,查找问题许久,但还是没有解决,我尝试把自动硬件从选关闭了、速率降低了,但还是不行因此想向各位前辈赐教,在此非常感谢各位前辈的斧正,关键代码如下:

void SYS_Init(void)
{
    SYS_UnlockReg();
    CLK_EnableXtalRC(CLK_PWRCTL_HIRCEN_Msk);
    CLK_WaitClockReady(CLK_STATUS_HIRCSTB_Msk);
    CLK_SetHCLK(CLK_CLKSEL0_HCLKSEL_HIRC, CLK_CLKDIV0_HCLK(1));
    CLK->PCLKDIV = (CLK_PCLKDIV_APB0DIV_DIV2 | CLK_PCLKDIV_APB1DIV_DIV2);
               
   /******硬件SPI控制器******/
    CLK_SetModuleClock(SPI0_MODULE, CLK_CLKSEL2_SPI0SEL_PCLK1, MODULE_NoMsk);
    CLK_EnableModuleClock(SPI0_MODULE);

    SystemCoreClockUpdate();       

   //set PB multi-function pins for PWM0 channel 0~5                                               
   SYS->GPA_MFPL = (SYS->GPA_MFPL & ~(SYS_GPA_MFPL_PA2MFP_Msk |SYS_GPA_MFPL_PA1MFP_Msk |SYS_GPA_MFPL_PA0MFP_Msk)) |
                                (SYS_GPA_MFPL_PA2MFP_SPI0_CLK |SYS_GPA_MFPL_PA1MFP_SPI0_MISO |SYS_GPA_MFPL_PA0MFP_SPI0_MOSI);

    SYS_LockReg();
}



void SPI_Init(void)
{
        SPI_Open(SPI0, SPI_MASTER, SPI_MODE_0, 8, 4000000);
        SPI_DisableAutoSS(SPI0);

}

uint8_t SpiReadWriteData(uint8_t SendData)
{
        SPI_WRITE_TX(SPI0, SendData);
        /***Check SPI0 busy status***/
        while (SPI_IS_BUSY(SPI0));
        /***Read received data***/
        return SPI_READ_RX(SPI0);
}


void Read_Device_ID(void)
{
        uint16_t ID;       
        SPI_CS_0();
        SpiReadWriteData(Device_ID);
        SpiReadWriteDatae(0x00);
        SpiReadWriteData(0x00);
        SpiReadWriteData(0x00);
        ID = SpiReadWriteData(0XFF);
        ID =( ID<<8)|SpiReadWriteData(0XFF);
        SPI_CS_1();
        printf("Device_ID:%x\r\n",ID);
}


在此,再次感谢各位前辈的赐教。









分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 顶 踩
回复

使用道具 举报

沙发
admin 发表于 2022-11-7 17:27:10 | 只看该作者
可以试下下面这套程序,将下面这个地方添加上对应的芯片的ID
牛卧堂
回复 支持 反对

使用道具 举报

板凳
admin 发表于 2022-11-7 17:27:35 | 只看该作者

牛卧堂
回复 支持 反对

使用道具 举报

地板
admin 发表于 2022-11-7 17:28:07 | 只看该作者
SPI_Flash.zip (2.93 MB, 下载次数: 366)
牛卧堂
回复 支持 反对

使用道具 举报

5#
 楼主| celink-c000559 发表于 2022-11-7 19:49:43 | 只看该作者
admin 发表于 2022-11-7 17:27
可以试下下面这套程序,将下面这个地方添加上对应的芯片的ID

非常感谢您的指导
回复 支持 反对

使用道具 举报

高级模式
B Color Image Link Quote Code Smilies |上传

本版积分规则

新唐MCU