找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 83|回复: 2
打印 上一主题 下一主题
收起左侧

关于WT588D的使用问题

[复制链接]
跳转到指定楼层
楼主
关于使用WT588D-20SS芯片中出现的问题想咨询各位前辈
我是用usb转换器来将生成的bin文件写入到外接flash中,参考数据手册上的实例代码和时序写完三线控制驱动,但是上电后WT588D并没有任何反应,BUSY引脚毫无反应,对WT588复位后依然无效。请问是我的代码出了问题还是哪里操作的不正确


本人代码:

#include "wt588d.h"
#define CS_PIN     GPIO_PIN_1
#define CS_PORT    GPIOA
#define SCL_PIN    GPIO_PIN_2
#define SCL_PORT   GPIOA
#define SDA_PIN    GPIO_PIN_3
#define SDA_PORT   GPIOA

// 初始化GPIO
void WT588D_GPIO_Init(void)
{
        rcu_periph_clock_enable(RCU_GPIOA);

        // 配置CS/CLK/DAT为推挽输出
        gpio_init(CS_PORT, GPIO_MODE_OUT_PP, GPIO_OSPEED_50MHZ,CS_PIN);
        gpio_init(SCL_PORT, GPIO_MODE_OUT_PP, GPIO_OSPEED_50MHZ,SCL_PIN);
        gpio_init(SDA_PORT, GPIO_MODE_OUT_PP, GPIO_OSPEED_50MHZ,SDA_PIN);  

  // 初始状态
        GPIO_BOP(CS_PORT) = CS_PIN;   // CS高电平
        GPIO_BOP(SCL_PORT) = SCL_PIN; // CLK高电平
        GPIO_BOP(SDA_PORT) = SDA_PIN; // DAT高电平
}

// 发送8位命令
void WT588D_SendCommand(uint8_t cmd)
{
    /* 可选复位 */
    // GPIO_BC(WT588D_RST_PORT) = WT588D_RST_PIN;  // RST拉低
    // delay_ms(5);                                // 保持≥5ms
    // GPIO_BOP(WT588D_RST_PORT) = WT588D_RST_PIN; // RST拉高
    // delay_ms(20);                               // 等待>17ms

        /* 唤醒芯片 */
  GPIO_BC(CS_PORT) = CS_PIN;  // CS拉低
  delay_1ms(5);                              // 保持5ms唤醒

  /* 发送8位数据 (LSB first) */
  for(uint8_t i = 0; i < 8; i++)
        {   
                GPIO_BC(SCL_PORT) = SCL_PIN;  // CLK拉低  
    // 设置数据位
    if(cmd & 0x01)
                {     
                        GPIO_BOP(SDA_PORT) = SDA_PIN;  // 输出1
    }
                else
                {
                        GPIO_BC(SDA_PORT) = SDA_PIN;   // 输出0
    }
    cmd >>= 1;  // 准备下一位

    delay_1us(188);  // 数据稳定时间 (150us)
    GPIO_BOP(SCL_PORT) = SCL_PIN;  // CLK上升沿锁存
    delay_1us(188);  // 高电平保持 (总周期300us)
   }

    /* 结束传输 */
    GPIO_BOP(CS_PORT) = CS_PIN;  // CS拉高
    // BUSY信号将在20ms后响应
         
}


电路设计.png (59.83 KB, 下载次数: 0)

本人的电路设计

本人的电路设计

手册示例.png (48.88 KB, 下载次数: 0)

手册中的示例

手册中的示例
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:108361 发表于 2025-6-27 09:21 | 只看该作者
建议问下唯创的厂家FAE
回复

使用道具 举报

板凳
ID:1155124 发表于 2025-6-27 11:29 | 只看该作者
powerdruy 发表于 2025-6-27 09:21
建议问下唯创的厂家FAE

这个我有咨询过,他给了我两个思路,一个是bin文件有没有写进外挂flash,二是代码是否有问题。
我读取外挂flash,其中确实是有bin文件的,falsh也可以正常读写;二是我的代码逻辑和时序也确实是按照示例给的写,现在没有解决问题的头绪了
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表