OpenEdv-开源电子网

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

SPI方面知识求助

[复制链接]

10

主题

56

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
279
金钱
279
注册时间
2017-3-27
在线时间
66 小时
发表于 2017-3-27 09:34:40 | 显示全部楼层 |阅读模式
1金钱
F4的板子 关于SPI的原来用的PB3-PB5,现在想用PA5-7的 在SPI_INIT修改了 以下代码(//表示源代码 )
        RCC_APB2PeriphClockCmd(RCC_AHB1Periph_GPIOA|RCC_AHB1Periph_GPIOB|RCC_AHB1Periph_GPIOC, ENABLE);//ê1ÄüGPIOA/B/cê±Öó
//  RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOB, ENABLE);//ê1ÄüGPIOBê±Öó
//        RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOC, ENABLE);//ê1ÄüGPIOBê±Öó
       
  RCC_APB2PeriphClockCmd(RCC_APB2Periph_SPI1, ENABLE);//ê1ÄüSPI1ê±Öó

//  GPIO_InitStructure.GPIO_Pin = GPIO_Pin_3|GPIO_Pin_4|GPIO_Pin_5;//PB3~5
//  GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF;//
//  GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;
//  GPIO_InitStructure.GPIO_Speed = GPIO_Speed_100MHz;//100MHz
//  GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_UP;//éÏà-
//  GPIO_Init(GPIOB, &GPIO_InitStructure);//3õê¼»ˉ
//       
//        GPIO_PinAFConfig(GPIOB,GPIO_PinSource3,GPIO_AF_SPI1); //PB3¸′óÃÎa SPI1
//        GPIO_PinAFConfig(GPIOB,GPIO_PinSource4,GPIO_AF_SPI1); //PB4¸′óÃÎa SPI1
//        GPIO_PinAFConfig(GPIOB,GPIO_PinSource5,GPIO_AF_SPI1); //PB5¸′óÃÎa SPI1
       
       
  //GPIOFA7,5,63õê¼»ˉéèÖÃ
  GPIO_InitStructure.GPIO_Pin = GPIO_Pin_5|GPIO_Pin_6|GPIO_Pin_7;//PA5~7¸′óÃ1|Äüêä3ö       
  GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF;//¸′óÃ1|Äü
  GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;//íÆíìêä3ö
  GPIO_InitStructure.GPIO_Speed = GPIO_Speed_100MHz;//100MHz
  GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_UP;//éÏà-
  GPIO_Init(GPIOA, &GPIO_InitStructure);//3õê¼»ˉ
        //¸′óÃÅäÖÃ
        GPIO_PinAFConfig(GPIOA,GPIO_PinSource5,GPIO_AF_SPI1); //PA5¸′óÃÎa SPI1
        GPIO_PinAFConfig(GPIOA,GPIO_PinSource6,GPIO_AF_SPI1); //PA6¸′óÃÎa SPI1
        GPIO_PinAFConfig(GPIOA,GPIO_PinSource7,GPIO_AF_SPI1); //PA7¸′óÃÎa SPI1

主程序
        while(1)
        {
if(W25QXX_ReadID()==W25Q128)
        {
                LED0=!LED0;                //DS0éá˸
                delay_ms(1000);
}
        else  
        {
                LED0=!LED0;
                delay_ms(100);
        }

操作源代码可以进入if中,修改到PA5以后就直接else,应该是io配置有问题 ,没玩过F4 求大神看下被


最佳答案

查看完整内容[请看2#楼]

硬件上,PA4 5 6 和W25Q128没有连接,你怎么实现SPI操作它,自己弄得引线?
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

6

主题

93

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
317
金钱
317
注册时间
2016-11-1
在线时间
64 小时
发表于 2017-3-27 09:34:41 | 显示全部楼层
wangbo411326 发表于 2017-3-27 10:46
兄弟 源代码是这样的
RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOB, ENABLE);
我现在想用A5-A7作为SO. ...

硬件上,PA4 5 6 和W25Q128没有连接,你怎么实现SPI操作它,自己弄得引线?
回复

使用道具 举报

10

主题

56

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
279
金钱
279
注册时间
2017-3-27
在线时间
66 小时
 楼主| 发表于 2017-3-27 09:59:23 | 显示全部楼层
是不是悬赏少啊,下次搞多点 ,第一次发帖没注意
回复

使用道具 举报

6

主题

93

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
317
金钱
317
注册时间
2016-11-1
在线时间
64 小时
发表于 2017-3-27 10:32:33 | 显示全部楼层
第一行的时钟设置不对,APB2  AHB1  咋写的
回复

使用道具 举报

10

主题

56

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
279
金钱
279
注册时间
2017-3-27
在线时间
66 小时
 楼主| 发表于 2017-3-27 10:46:39 | 显示全部楼层
fankai 发表于 2017-3-27 10:32
第一行的时钟设置不对,APB2  AHB1  咋写的

兄弟 源代码是这样的
RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOB, ENABLE);
我现在想用A5-A7作为SO.SI SCK,
RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOA, ENABLE);
这样改还是无法实现 。。。
回复

使用道具 举报

10

主题

56

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
279
金钱
279
注册时间
2017-3-27
在线时间
66 小时
 楼主| 发表于 2017-3-27 13:22:10 | 显示全部楼层
fankai 发表于 2017-3-27 12:37
硬件上,PA4 5 6 和W25Q128没有连接,你怎么实现SPI操作它,自己弄得引线?

开发指南上面 不是默认连接吗  CS在软件里面配置,只要完成IO配置不就可以吗
回复

使用道具 举报

10

主题

56

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
279
金钱
279
注册时间
2017-3-27
在线时间
66 小时
 楼主| 发表于 2017-3-27 13:22:53 | 显示全部楼层
fankai 发表于 2017-3-27 12:37
硬件上,PA4 5 6 和W25Q128没有连接,你怎么实现SPI操作它,自己弄得引线?

原来的PB口时候 不用连接 就可以进入主函数的if判断
回复

使用道具 举报

10

主题

56

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
279
金钱
279
注册时间
2017-3-27
在线时间
66 小时
 楼主| 发表于 2017-3-27 14:04:59 | 显示全部楼层
fankai 发表于 2017-3-27 10:32
第一行的时钟设置不对,APB2  AHB1  咋写的

搞定了 谢谢 小半年没玩单片机了 以前玩的别的 没注意到开发板电路 谢谢 硬件连接有问题
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-6-19 00:59

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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