亿加合和智能车制作

标题: 用野火的库,到串口这一步,想从电脑发送字符串给单片机,然后单片机借助串口助手显示 [打印本页]

作者: LZG14    时间: 2013-8-13 11:41
标题: 用野火的库,到串口这一步,想从电脑发送字符串给单片机,然后单片机借助串口助手显示
代码是这样的:
void  main(void)
{
   char ch;
   char str[20];

    uart_init(UART1, 19200);                    //初始化串口1,波特率为19200 ,波特率太大,容易不稳定
    printf("串口查询接收实验\n\n");             //发送提示信息
    printf("\t\t——野火kinetis开发板\n\n");

    while(1)
    {
        /**********    测试无限等待接收    **********/
       printf("请发送数据:\n");
        ch = uart_getchar(UART1);                //从串口1中等待接收数据
        printf("你发送的字符为:%c\n\n", ch);    //从串口1中发送出去

       time_delay_ms(1000);                     //延时1s

        /**********    测试有限等待接收一个字符    **********/
        printf("快点发送字符哦,不等你的哦:\n");
        if(uart_pendchar (UART1, &ch))  printf("哈哈,赶得及哦!你发送的字符为:%c\n\n", ch);   //从串口1中发送出去
        else                           printf("o(︶︿︶)o 唉,赶不及了!收不到你的数据。\n\n");     //从串口1中发送出去

        time_delay_ms(1000);


        /**********    测试有限等待接收字符串    **********/
        printf("快点发送字符串哦,不等你的哦:\n");

        if(uart_pendstr(UART1, str))
            printf("哈哈,赶得及哦!你发送的字符为:%s\n\n", str);    //从串口1中发送出去
        else
            printf("o(︶︿︶)o 唉,赶不及了!收不到你的数据。\n\n");     //从串口1中发送出去*/
    }
}

然后出现了只能接受单个字符,从电脑发送给单片机的字符串只有第一个被存进数组,其他的都没有[attach]49756[/attach][attach]49755[/attach]
帮忙解答下哈,谢啦

作者: 辰宇    时间: 2013-11-16 10:41
我用串口调试助手怎么什么都不显示额?库函数里面有什么需要修改的么?主程序跟你的一样





欢迎光临 亿加合和智能车制作 (http://111.231.132.190/) Powered by Discuz! X3.2