OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 2308|回复: 2

VS1003B从51移植到STM32不工作

[复制链接]

30

主题

68

帖子

0

精华

初级会员

Rank: 2

积分
54
金钱
54
注册时间
2019-5-4
在线时间
56 小时
发表于 2019-6-4 21:13:59 | 显示全部楼层 |阅读模式
10金钱
淘宝上买了个VS1003B的小模块,在51下面测试正常,正弦测试能听到类似蜂鸣音,移植到STM32就什么声音都没有。我有个疑问,模块外部接口有5V/GND/DREQ/XRESET/XCS/XDCS/SCLK/SO/SI共9个IO口,除去电源接口,另外7个IO口在51下面高电平为5V,在STM32下高电平变成3.3V,这样直接把这些接口对接MCU的IO口会不会有问题?正确的移植方法是怎样的?

正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

0

主题

143

帖子

0

精华

初级会员

Rank: 2

积分
173
金钱
173
注册时间
2019-5-30
在线时间
4 小时
发表于 2019-6-5 11:33:05 | 显示全部楼层
回复

使用道具 举报

30

主题

68

帖子

0

精华

初级会员

Rank: 2

积分
54
金钱
54
注册时间
2019-5-4
在线时间
56 小时
 楼主| 发表于 2019-6-5 14:58:34 | 显示全部楼层
移植的原子哥向VS10xx写命令的函数,隐约觉得可能设置SPI时钟频率的地方有问题,因为我的系统时钟频率只有8M,所以两句调用SPI1_SetSpeed()的地方需要修改吗?

[mw_shl_code=c,true]//向VS10XX写命令
//address:命令地址
//data:命令数据
void VS_WR_Cmd(u8 address,u16 data)
{  
    while(VS_DQ==0);//等待空闲
        SPI1_SetSpeed(SPI_SPEED_64);//低速

        VS_XDCS=1; //MP3_DATA_CS=1;
        VS_XCS=0; //MP3_CMD_CS=0;
        
        SPI1_WriteReadData(VS_WRITE_COMMAND);//发送VS10XX的写命令
        SPI1_WriteReadData(address); //地址
        SPI1_WriteReadData(data>>8); //发送高八位
        SPI1_WriteReadData(data);         //低八位
        VS_XCS=1;          //MP3_CMD_CS=1;
        SPI1_SetSpeed(SPI_SPEED_8);//高速           
} [/mw_shl_code]
回复

使用道具 举报

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

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-6-17 10:01

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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