
Stm32zest 零速全力矩控制算法在哪里可以看到,关键词是啥,有意了解购买
CubelIDE,HAL_FLASH_Program仿真时出错。
STM32F103 GPIO速度。
STM32F407的定时器9和10怎么设置为主从关系
stm32f103 revision code X为什么读内部ID号时,时钟50M,会出错
关于STM32G替代STM32F问题
利用STM32F103的ADC采集模拟电压信号
GPIO在Open Drain Pull-up模式下,不能输出高电平3.3V吗?
STM32G031G8U6 flash读写问题
STM32F407ZGT6的低温性能如何
楼主,您看一下引脚功能配置是否正确。我这里407是可以正常使用的。
GPIO_PinAFConfig(GPIOA, GPIO_PinSource0, GPIO_AF_UART4); GPIO_PinAFConfig(GPIOA, GPIO_PinSource1, GPIO_AF_UART4);
[md]GPIO_InitTypeDef GPIO_InitStructure; USART_InitTypeDef USART_InitStructure;
RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOA, ENABLE); RCC_APB1PeriphClockCmd(RCC_APB1Periph_UART4, ENABLE);
GPIO_PinAFConfig(GPIOA,GPIO_PinSource0, GPIO_AF_UART4); GPIO_PinAFConfig(GPIOA,GPIO_PinSource1,GPIO_AF_UART4);
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0|GPIO_Pin_1; GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF; GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; GPIO_InitStructure.GPIO_OType = GPIO_OType_PP; GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_UP; GPIO_Init(GPIOA, &GPIO_InitStructure);
USART_InitStructure.USART_BaudRate = 115200; USART_InitStructure.USART_WordLength = USART_WordLength_8b; USART_InitStructure.USART_StopBits = USART_StopBits_1; USART_InitStructure.USART_Parity = USART_Parity_No ; USART_InitStructure.USART_HardwareFlowControl = USART_HardwareFlowControl_None; USART_InitStructure.USART_Mode = USART_Mode_Tx | USART_Mode_Rx; USART_Init(UART4, &USART_InitStructure);
USART_DMACmd(UART4,USART_DMAReq_Tx,ENABLE); UART4_TX_DMA_Config();//DMA初始化
if U4_DMA
USART_DMACmd(UART4,USART_DMAReq_Rx,ENABLE); UART4_RX_DMA_Config();//DMA初始化
endif
USART_Cmd(UART4, ENABLE);
[md]麻烦帮我看下,谢谢!
寄存器值没有问题,比较过串口1(正常)跟串口4的寄存器,除了波特率寄存器的值不一样,串口1跟串口4的时钟不一样,值不一样是正常的,串口4能发,说明波特率是正确的。另外用一个新的工程文件也测试过一样。还把PA1配置成I/O模式,能正确设置为高低电平
[md]发送正常说明配置是对的,接收不到说明接收的GPIO配置可能不对,检查一下接收的GPIO配置寄存器。设计到IO配置,AF的配置。
[md]最终确认是芯片的问题。因为一些原因,后来互换了两批stm32在两种板子上测试,发现新批次的stm32在两种板子上都不能用,旧批次的stm32在两种板子上都能用,另外加过上拉电阻,修改过限流电阻测试过。两个批次的stm32的产地不同。
[md]如果是ST生产的应该不会的。是不是买到假的了。