完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
HAL_GPIO_WritePin(GPIOA, GPIO_PIN_4 ,GPIO_PIN_RESET );片选0
HAL_SPI_Transmit(&hspi1,&liming,sizeof(liming),1000);发送数据 HAL_SPI_Receive(&hspi1,lmGET_data,sizeof(lmGET_data),1000);接收数据 HAL_GPIO_WritePin(GPIOA, GPIO_PIN_4 ,GPIO_PIN_SET );片选1 |
|
相关推荐
29个回答
|
|
调用啦 MOSI输出数据MISO都有对应的返回数据 而且示波器自己读是正确的 |
|
|
|
那看下输入引脚上的配置,一步步看寄存器吧 |
|
|
|
全速跑起来 keil5里面的工具看寄存器 COPL CPHA 都是0 因为我循环发送接收数据所以BSY TXE时而0时而1 但是RXNE时而0时而1的频率很慢 按理说应该有TXE变化速度一半啊 |
|
|
|
我觉得问题在于我用示波器检测到MISO返回数据了 而且是正确数据 但是receive函数读不到 |
|
|
|
naiztycheng 发表于 2018-11-26 06:53 首先谢过水影先森的解答~~ 1.确实我访问的器件需要MOSI先给八位地址再给八位数据,然后MISO返回寄存器数据, 2.HAL_SPI_TransmitReceive我想到了直接发送两个字节了 把地址和数据一起发出去,但是接收的还是全0 奇怪的是我用示波器测出来是有数据的 而且是正确的 真是诡异 3.CPAL和CPOL设置都为0 检查过了 4.liming2就是简单的 uchar类型 |
|
|
|
刷新一下
|
|
|
|
什么叫实际测试有数据但是采集不到?
|
|
|
|
就是示波器我自己测数据 用示波器观察 MISO有返回数据~~~但是receive函数接收存起来一直都是0 |
|
|
|
void HAL_SPI_MspInit(SPI_HandleTypeDef* spiHandle)
{ GPIO_InitTypeDef GPIO_InitStruct; if(spiHandle->Instance==SPI1) { /* USER CODE BEGIN SPI1_MspInit 0 */ /* USER CODE END SPI1_MspInit 0 */ /* Peripheral clock enable */ __HAL_RCC_SPI1_CLK_ENABLE(); /**SPI1 GPIO Configuration PA4 ------> SPI1_NSS PA5 ------> SPI1_SCK PA6 ------> SPI1_MISO PA7 ------> SPI1_MOSI */ GPIO_InitStruct.Pin = GPIO_PIN_4|GPIO_PIN_5|GPIO_PIN_7; GPIO_InitStruct.Mode = GPIO_MODE_AF_PP; GPIO_InitStruct.Pull = GPIO_NOPULL; GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_MEDIUM; GPIO_InitStruct.Alternate = GPIO_AF0_SPI1; HAL_GPIO_Init(GPIOA, &GPIO_InitStruct); GPIO_InitStruct.Pin = GPIO_PIN_6; GPIO_InitStruct.Mode = GPIO_MODE_INPUT ; GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_MEDIUM; HAL_GPIO_Init(GPIOA, &GPIO_InitStruct); /* USER CODE BEGIN SPI1_MspInit 1 */ /* USER CODE END SPI1_MspInit 1 */ } } |
|
|
|
yagan1405 发表于 2018-11-26 11:14 那你试着用中断的方式再读一下。要不就是你MISO管脚的配置有问题。你用官方的例程编译一下试试 |
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
1751 浏览 1 评论
AD7686芯片不传输数据给STM32,但是手按住就会有数据。
1632 浏览 3 评论
4179 浏览 0 评论
如何解决MPU-9250与STM32通讯时,出现HAL_ERROR = 0x01U
1778 浏览 1 评论
hal库中i2c卡死在HAL_I2C_Master_Transmit
2241 浏览 1 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-12 08:13 , Processed in 0.810568 second(s), Total 87, Slave 73 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号