-
gd32f470串口乱码
使用串口UART3通过rs232芯片和外部设备通讯,采集到数据第一字节是对的,后面的都会乱码。波特率是115200.波特率115200、9600等数据发送都是对的,没有问题。如何使用波特率9600,串口接收不会乱码。请问是什么问题。
2023-07-10 5 -
hc32f460 SPI读取一直为0
使用hc32f460,SPI1,发送0x55,测试时钟和MOSI引脚电平,变化正常。miso脚一直是高电平,但是SPI读出来数据一直是0x00,按理说应该是0xff。SPI配置如下#defineSD_SPI_PERIPH_CLKFCG1_PERIPH_SPI1#defineSPI_SDCM_SPI1#defineSD_SPI_CS_PORTGPIO_PORT_A#defineSD_SPI_CS_PINGPIO_PIN_04#defineSD_SPI_PORTGPIO_PORT_A#defineSD_SPI_SCK_PINGPIO_PIN_05#defineSD_SPI_MISO_PINGPIO_PIN_06#defineSD_SPI_MOSI_PINGPIO_PIN_07#defineSD_SPI_SCK_PIN_FUNC(GPIO_FUNC_43)#defineSD_SPI_MOSI_PIN_FUNC(GPIO_FUNC_40)#defineSD_SPI_MISO_PIN_FUNC(GPIO_FUNC_41)staticvoidApp_SPIxCfg(void){stc_gpio_init_tstcGpioInit;stc_spi_init_tstcSpiInit;stc_spi_delay_tstcSpiDelayCfg;(void)GPIO_StructInit(&stcGpioInit);stcGpioInit.u16PinDrv=PIN_HIGH_DRV;(void)GPIO_Init(SD_SPI_CS_PORT,SD_SPI_CS_PIN,&stcGpioInit);(void)GPIO_Init(SD_SPI_PORT,SD_SPI_SCK_PIN,&stcGpioInit);(void)GPIO_Init(SD_SPI_PORT,SD_SPI_MOSI_PIN,&stcGpioInit);stcGpioInit.u16PinDir=PIN_DIR_OUT;(void)GPIO_Init(SD_SPI_CS_PORT,SD_SPI_CS_PIN,&stcGpioInit);GPIO_SetFunc(SPI_SCK_PORT,SPI_SCK_PIN,SD_SPI_SCK_PIN_FUNC);GPIO_SetFunc(SPI_MOSI_PORT,SPI_MOSI_PIN,SD_SPI_MOSI_PIN_FUNC);GPIO_SetFunc(SPI_MISO_PORT,SPI_MISO_PIN,SD_SPI_MISO_PIN_FUNC);/*Clearinitializestructure*/(void)SPI_StructInit(&stcSpiInit);(void)SPI_DelayStructInit(&stcSpiDelayCfg);/*Configureperipheralclock*/FCG_Fcg1PeriphClockCmd(SD_SPI_PERIPH_CLK,ENABLE);/*SPIDe-initialize*/SPI_DeInit(SPI_UNIT);/*ConfigurationSPIstructure*/stcSpiInit.u32WireMode=SPI_3_WIRE;stcSpiInit.u32TransMode=SPI_FULL_DUPLEX;stcSpiInit.u32MasterSlave=SPI_MASTER;stcSpiInit.u32ModeFaultDetect=SPI_MD_FAULT_DETECT_DISABLE;stcSpiInit.u32Parity=SPI_PARITY_INV
2022-12-04 0 -
apm32f103c8替换stm32串口发送会串进接收端口
打算使用apm32f103c8替换stm32f103c8t6,串口1打开了接收空闲中断和dma接收,有时候会同时发送数据出去,这些数据会不完整地被同一串口rx接收到,并产生了空闲中断,配置了串口1rx为上拉输入,输出为推挽输出。如果是主从机之间对话,会导致无穷无尽的收发。
2022-10-02 1