Rareyee 发表于 2017-11-13 16:44:42

stm32F767 无法串口发送?用的是ch340芯片

ALIENTEK 阿波罗STM32F7开发板例程 串口无作用
int main(void)
{
    u8 len;       
        u16 times=0;
    Cache_Enable();               //打开L1-Cache
    HAL_Init();                                        //初始化HAL库
    Stm32_Clock_Init(432,25,2,9);   //设置时钟,216Mhz
    delay_init(216);                //延时初始化
        uart_init(115200);                        //串口初始化
    LED_Init();                     //初始化LED
    while(1)
    {
       if(USART_RX_STA&0x8000)
                {                                          
                        len=USART_RX_STA&0x3fff;//得到此次接收到的数据长度
                        printf("\r\n您发送的消息为:\r\n");
                        HAL_UART_Transmit(&UART1_Handler,(uint8_t*)USART_RX_BUF,len,1000);        //发送接收到的数据
                        while(__HAL_UART_GET_FLAG(&UART1_Handler,UART_FLAG_TC)!=SET);                //等待发送结束
                        printf("\r\n\r\n");//插入换行
                        USART_RX_STA=0;
                }else
                {
                        times++;
                        if(times%5000==0)
                        {
                                printf("\r\nALIENTEK STM32F7开发板 串口实验\r\n");
                                printf("正点原子@ALIENTEK\r\n\r\n\r\n");
                        }
                        if(times%200==0)printf("请输入数据,以回车键结束\r\n");
                        if(times%30==0)LED0_Toggle;//闪烁LED,提示系统正在运行.
                        delay_ms(10);   
                }
        }
}




自己用stn32cubeMX配置了也无法进行

while (1)
{
           HAL_UART_Transmit( &huart1, (uint8_t *)"HELLO WORLD\n",12,11);
HAL_Delay(1000);


}







发表于 2017-11-13 16:53:37

楼主先测试一下MCU的串口输出是否有波形,再看一下和340的连接是否为RX-TX,TX-RX

Rareyee 发表于 2017-11-13 16:58:11

安 发表于 2017-11-13 16:53
楼主先测试一下MCU的串口输出是否有波形,再看一下和340的连接是否为RX-TX,TX-RX ...

mcu RX上是5VTX3.3V左右一直保持着   接法是对的

kylongmu 发表于 2017-11-13 18:08:00

printf你定义输出到哪里了?另外CubeMX生成的F7串口代码不会出问题,先学习原厂的程序。
页: [1]
查看完整版本: stm32F767 无法串口发送?用的是ch340芯片