问答

汇集网友智慧,解决技术难题

chuancqc

TA的家园币:44  

  • GD32F303 SPI DMA 条件下如何配置8位的CRC

    如题GD32F303SPIDMA条件下如何配置8位的CRC,我的配置如下voidSpi1_init(){spi_parameter_structspi_init_struct;/*deinitilizeSPIandtheparameters*/spi_i2s_deinit(SPI1);spi_struct_para_init(&spi_init_struct);rcu_periph_clock_enable(RCU_GPIOB);rcu_periph_clock_enable(RCU_SPI1);rcu_periph_clock_enable(RCU_AF);/*configureSPI1GPIO:NSS/PB12,SCK/PB13,MISO/PB14,MOSI/PB15*/gpio_init(GPIOB,GPIO_MODE_AF_PP,GPIO_OSPEED_MAX,GPIO_PIN_13|GPIO_PIN_15);/*SPI1GPIOconfig:SCK/PB13,MOSI/PB15*/gpio_init(GPIOB,GPIO_MODE_IN_FLOATING,GPIO_OSPEED_MAX,GPIO_PIN_14);/*SPI1GPIOconfig:MISO/PB14*/gpio_init(GPIOB,GPIO_MODE_OUT_PP,GPIO_OSPEED_MAX,GPIO_PIN_12);/*PB12asCS*/SPI1_CS_H;spi_init_struct.trans_mode=SPI_TRANSMODE_FULLDUPLEX;spi_init_struct.device_mode=SPI_MASTER;spi_init_struct.frame_size=SPI_FRAMESIZE_8BIT;spi_init_struct.clock_polarity_phase=SPI_CK_PL_LOW_PH_1EDGE;//SPI接口逻辑在时钟极性(CPOL)=0和时钟相位(CPHA)=0的情况下运行spi_init_struct.nss=SPI_NSS_SOFT;//注意SPI_NSS_HARD是指外部的CS也就是说对从机有效主机应该使用SPI_NSS_SOFTspi_init_struct.prescale=SPI_PSC_32;spi_init_struct.endian=SPI_ENDIAN_MSB;//大端spi_init(SPI1,&spi_init_struct);/*setcrcpolynomial*/spi_crc_polynomial_set(SPI1,7);spi_crc_on(SPI1);/*enableSPI1*/spi_enable(SPI1);}我使用了,可是实际上示波器没有监测到下发的正常校验结果spi_crc_polynomial_set(SPI1,7);spi_crc_on(SPI1);发送数据填充{Afex->Spi_Txbuf[0]=Afex->Aevaddr;Afex->Spi_Txbuf[1]=0xFF;//Afex->Spi_Txbuf[2]=CRC8(Afex->Spi_Txbuf,2);AFE1_CS_L;SPI1_TransmitReceiveDma(Afex->Spi_Txbuf,Afex->Afe_Rxbuf,2);AFE1_CS_H;}//DMA数据填充和发送使能等这里用了个信号量阻塞uint8_tSPI1_TransmitReceiveDma(cons

    GD32F303 CRC spi DMA

    2024-08-08 18
  • HC32F4A0PGTB LQFP100 价格求解

    有供应商知道现在这个货源的价格么,还有供货情况

    p10 HC

    2021-01-06 4