SPI2 SPI2_SetSpeed() 求助各位大神

2019-07-20 10:01发布

我将SPI例程中的SPI接口PB3,PB4,PB5在硬件上连接PB13,PC2,PC3,把软件中的配置也对应改好。在配置过程中发现,当SPI2的SPI2_SetSpeed()参数设置为SPI_BaudRatePrescaler_2,无法通讯,设置为SPI_BaudRatePrescaler_4时,可以通讯,但是读取的数据有误,当设置为8~256时通讯正常。
原子的例程中使用的是SPI1,其中速度设置为SPI_BaudRatePrescaler_2,AHB1的最大速度为84Mhz,AHB2的最大速度为42Mhz。可为什么SPI2的速度设置会出现这样的问题呢?



友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
3条回答
正点原子
1楼-- · 2019-07-20 12:51
 精彩回答 2  元偷偷看……
kekehuhu
2楼-- · 2019-07-20 15:07
正点原子 发表于 2018-1-15 01:09
关键你的外设是什么?最大频率是多少?

原子哥,我是在SPI的例程里改的,只是把SPI接口PB3,PB4,PB5在硬件上连接PB13,PC2,PC3,其余的都没有改变。
正点原子
3楼-- · 2019-07-20 20:21
kekehuhu 发表于 2018-1-15 10:25
原子哥,我是在SPI的例程里改的,只是把SPI接口PB3,PB4,PB5在硬件上连接PB13,PC2,PC3,其余的都没有 ...

我们SPI例程是接的W25Q系列的flash
你如果是这个的话,MCU跑最快也不会超过,你检查下PB13,PC2,PC3是否接其他东西了?
或者PB3,PB4,PB5IO状态是否没设置好,互相干扰了?

一周热门 更多>