完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
官方有SPI1的demo例程,但是我因为使用了RGMII接口,所以只能使用SPI3来操作外部SPI Flash。根据CH32V307VCT6的datasheet:SPI3需要使用重映射功能。重映射后,SPI3_NSS为PA4,SPI3_SCK为PC10,SPI3_MISO为PC11,SPI3_MOSI为PC12。配置如下图:
我也使用的SPI_NSS_SOFT模式,人为控制PA4的拉低拉高。 通过修改demo例程的代码后,我在while(1)中每1秒读取一次SPI FLASH的ID,均为0,使用示波器发现NSS为高电平,SCK一直无时钟信号,感觉SPI3没有配置一样。初始化SPI3有问题吗?还望赐教,谢谢。我把修改后的几个关键的SPI FLASH的函数也贴进来,便于分析问题。 |
|
相关推荐
2个回答
|
|
你好,附件是我在我们EVT SPI读写FLASH例程基础上修改为SPI3的例程,例程读ID等操作都是没问题的,你可以对比参考一下
|
|
|
|
感谢大佬的支持!根据您提供的例程,很快找到原因了:我使用的主频是144MHz,估计是时钟太快了,我把demo中的SPI_InitStructure.SPI_BaudRatePrescaler = SPI_BaudRatePrescaler_4改为SPI_InitStructure.SPI_BaudRatePrescaler = SPI_BaudRatePrescaler_8以后,读写就正常了。
|
|
|
|
只有小组成员才能发言,加入小组>>
475 浏览 1 评论
CH579M+RT-Thread,RTC从Sleep模式唤醒失败是什么原因?
2873 浏览 2 评论
2361 浏览 1 评论
818浏览 2评论
CH569通过HSPI实现USB3.0和FPGA高速双向通讯
644浏览 1评论
499浏览 1评论
CH32F103C8T6使用当前官网上的CDC例程会出现设备描述符请求失败
364浏览 1评论
640浏览 1评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-25 21:29 , Processed in 1.036166 second(s), Total 49, Slave 42 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号