大家周末好,有个问题请教一下,最近发现STM32F405的SPI在片选信号有效后,需要等1us左右的延时才能发出CLK时钟信号;结束的情况也有类似延时。用的是HAL库。请问这两段时间能缩小或者取消掉么?详见示波器图。 |
é»è²ä¸ºCSï¼ç´«è²ä¸ºCLK
stm32f407进入boot里,通过DFU更新程序,没有识别到usb设备
STM32F4作为SPI从机,主机发送完数据后,从机没有正确进入中断
STM32F407 USB怎么测试接口的极限速度
大佬们,请教有关串口通信问题
STM32F407ZGT6物料表面丝印问题
stm32cubeide如何修改芯片型号和启动文件
CDC_Transmit_HS 卡死
修改stm32f407 tim14的ccr1,但是占空比不变?
修改stm32f407 tim14的ccr1,但是占空比不变
STM32IDE工程内如何访问、计算得到当前程序flash已经使用的情况?
红è²é¨å为延æ¶
评分
查看全部评分
软件CS,测试了下这两段时间跟通讯频率没关系;目前结束时的延时,找到原因了, 程序在 Check Busy flag
if(SPI_CheckFlag_BSY(hspi, Timeout, tickstart) != HAL_OK)
{
errorcode = HAL_ERROR;
hspi->ErrorCode = HAL_SPI_ERROR_FLAG;
goto error;
}
但是开始那段延时还没找到原因,手册上没找到。。。目前这段时间勉强够用。
可以试试硬件CS
在单片机主中断50us里读取编码器位置,软件方式,调用的HAL_StatusTypeDef HAL_SPI_TransmitReceive(SPI_HandleTypeDef *hspi, uint8_t *pTxData, uint8_t *pRxData, uint16_t Size, uint32_t Timeout);
硬件NSS没引出来,下次再测试一下这个吧。
暂时可以接受。后面在看看改为DMA的方式读取能缩短时间不。