
STM32F103连接ADC芯片,用SPI1,示波器量不到时钟信号,各管脚都是低电平。代码如下,请帮忙看看是否问题,谢谢! void ADS_SPI_Init(void) { /* Configure SPI_MASTER pins: NSS, SCK and MOSI */ GPIO_InitTypeDef GPIO_InitStructure; GPIO_InitStructure.GPIO_Pin = GPIO_Pin_4 | GPIO_Pin_5 | GPIO_Pin_7; GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_PP; GPIO_Init(GPIOA, &GPIO_InitStructure);// GPIOA的RCC在别处 //配置SPI寄存器 RCC_APB2PeriphResetCmd(RCC_APB2Periph_SPI1, ENABLE);// Enable SPI1 reset state SPI_I2S_DeInit(SPI1); SPI_InitTypeDef SPI_InitStruct; SPI_InitStruct.SPI_Direction = SPI_Direction_2Lines_FullDuplex; //全双工 SPI_InitStruct.SPI_Mode = SPI_Mode_Master; //主模式 SPI_InitStruct.SPI_DataSize = SPI_DataSize_16b; //16位 SPI_InitStruct.SPI_CPOL = SPI_CPOL_Low; //时钟极性,SCK空闲时低电平 SPI_InitStruct.SPI_CPHA = SPI_CPHA_2Edge; //时钟相位,下降沿 SPI_InitStruct.SPI_NSS = SPI_NSS_Hard; //硬件模式,NSS脚直接连到从机(ADC芯片) SPI_InitStruct.SPI_BaudRatePrescaler = SPI_BaudRatePrescaler_8; //8分频,72M/8 SPI_InitStruct.SPI_FirstBit = SPI_FirstBit_MSB; //高位在前 SPI_InitStruct.SPI_CRCPolynomial = 7; //CRC多项式寄存器(SPI_CRCPR) SPI_Init(SPI1,&SPI_InitStruct); //初始化寄存器 SPI_SSOutputCmd(SPI1, ENABLE); //NSS输出使能 SPI_Cmd(SPI1, ENABLE); //使能SPI } /******************************************************************************* 发送 *******************************************************************************/ void ADS_SPI_Send(u16 data) { SPI_I2S_SendData(SPI1, data); while(!SPI_I2S_GetFlagStatus(SPI1, SPI_I2S_FLAG_TXE)); //发送缓冲器空闲标志(TXE) } /******************************************************************************* 读取 *******************************************************************************/ u16 ADS_SPI_Receive(void) { while(!SPI_I2S_GetFlagStatus(SPI1, SPI_I2S_FLAG_RXNE)); //接收缓冲器非空(RXNE) return(SPI_I2S_ReceiveData(SPI1)); } |
串口DMA + 空闲中断收发 ?
F103RCT6芯片对AFIO->MAPR寄存器写入时出错
使用STM32捕获PWM时同时捕获2个通道时会出现捕获的频率值不准确的问题
WS2812B怎么显示任意字符 / 图案?
STM32F103RCT6 定位孔 镂空,会影响使用吗?
HAL库1.8.4在做破坏性测试的时候出现g_state永远为busy的情况导致串口通信发送卡死
L9663驱动开发
用rt_thread 环境编写,DAP-LINK 下载烧录,每一次空芯片下载之后就无法二次下载。求解
stm32cubemx F103芯片tim3 encoder模式pc6和pc7引脚,自动生成代码缺少gpio映射。
stm32的同一个定时器,不同的通道,可以不同时的输出pwm波形吗
评分
查看全部评分
评分
查看全部评分
基本上不會用 硬體 NSS