打印

困惑:SPI的时钟信号无法发出来!!!

[复制链接]
7177|10
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
zoe2003|  楼主 | 2008-4-16 11:19 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
  最近我在做STM32的SPI,我设置完成后,总是收不到数据,于是我就用示波器看看了时钟信号,发现时钟信号没有发出来。我很怀疑自己的程序设置错了,就拿了KEIl的例程来看看,结果也是没有时钟信号。请问高手怎么会有这种情况!!
沙发
香水城| | 2008-4-16 11:22 | 只看该作者

你是否设置好了相应的I/O口为复用功能?

请试试发送是否有时钟?

使用特权

评论回复
板凳
zoe2003|  楼主 | 2008-4-16 11:34 | 只看该作者

你是否设置好了相应的I/O口为复用功能

 GPIO_InitStructure.GPIO_Pin =GPIO_Pin_4|GPIO_Pin_5 | GPIO_Pin_6 |  GPIO_Pin_7;
  GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
  GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_PP;
  GPIO_Init(GPIOA, &GPIO_InitStructure)

  对于AFIO是没有设置的,难道是这里的问题???

使用特权

评论回复
地板
香水城| | 2008-4-16 11:43 | 只看该作者

请参考STM32固件库中附带的例子

关于SPI有五个例子:

  Example1 Set a communication between the two SPIs in full-duplex mode and performs a transfer from Master to Slave and then Slave to Master in the same application with software NSS management.

   Example2 Set a communication between two SPIs in simplex mode and performs a data buffer transfer from Master to Slave using TxE interrupt for master and RxNE interrupt for slave.

   Example3 set a communication between two SPIs in full-duplex mode and performs a transfer from Master to Slave and Slave to Master followed by CRC transmission. 

   Example4 Set a communication between the two SPIs in simplex mode and performs a transfer from Master in polling mode to the Slave in DMA receive mode. The NSS pin is managed by hardware. 

   Example5 Use the SPI firmware library and an associated SPI FLASH driver to communicate with an M25P64 FLASH 

使用特权

评论回复
5
zoe2003|  楼主 | 2008-4-16 11:52 | 只看该作者

SPI的时钟信号无法发出来!

  这些例子我也都试过的,除了设置SPI空闲时的电平在示波器上不同,也是没有信号的。我先是在公司自己开发的试验板上看的,在英贝特培训时发的板子上试也是同样情况。,所以就更加困惑了!

使用特权

评论回复
6
香水城| | 2008-4-16 12:00 | 只看该作者

把你的项目文件挂上来看看

还有你的硬件电路是如何接的,SPI另一端接在哪里?

我感到奇怪的是,STM32固件库中附带的例子中Example1应该是可以的,因为那是用两个SPI端口做一发一收,除非你用的芯片只有一个SPI端口;请确认一下。

使用特权

评论回复
7
zoe2003|  楼主 | 2008-4-16 19:08 | 只看该作者

SPI的时钟信号无法发出来!

 谢谢香版主,今天下午有好好看了看,是我们两边的程序不太协调,现在已经可以正常地发出时钟脉冲了,呵呵。谢谢!!

使用特权

评论回复
8
香水城| | 2008-4-16 19:15 | 只看该作者

很高兴听到你的问题解决了,也算我没有瞎忙

哈哈,恭喜!

使用特权

评论回复
9
心一oko| | 2013-11-13 13:54 | 只看该作者
楼主你好 我遇到了同样的问题 SCK信号无法发出 我是用SPI来控制LCD显示 但是示波器测试之后发现并没有SCK信号  你能帮帮我么

새 텍스트 문서.rar

814 Bytes

使用特权

评论回复
10
xxjxxjxxj| | 2024-5-10 09:37 | 只看该作者
zoe2003 发表于 2008-4-16 11:52
  这些例子我也都试过的,除了设置SPI空闲时的电平在示波器上不同,也是没有信号的。我先是在公 ...

大佬你现在还记得这件事?我现在就是这种情况

使用特权

评论回复
11
Bowclad| | 2024-5-12 23:38 | 只看该作者
时钟有没有打开啊

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

9

主题

29

帖子

0

粉丝