STM32的RTC万年历显示问题

时间:2022-01-19 06:30:43

博客整理后写出来的,有点乱,大家见谅!

想让串口输出万年历效果.每次秒刷新一次

结果是串口软件一直输出,看起来很难受

STM32的RTC万年历显示问题

STM32的RTC万年历显示问题STM32的RTC万年历显示问题STM32的RTC万年历显示问题

STM32的RTC万年历显示问题

STM32的RTC万年历显示问题

STM32的RTC万年历显示问题

先讲一讲C代码的\r和\n的区别

\r 就是return 回到 本行 行首 这就会把这一行以前的输出 覆盖掉 
\n 是回车+换行 把光标 先移到 行首 然后换到下一行 也就是 下一行的行首拉

[root@mylinux c]# vi huiche.c
      1 main()
      2 {
      3     printf("aa\rb");
      4     printf("cc\nd");
      5 }
[root@mylinux c]# gcc huiche.c 
[root@mylinux c]# ./a.out 
bcc
d[root@mylinux c]#
\r 就是return 回到 本行 行首 这就会把这一行以前的输出 覆盖掉 
\n 是回车+换行 把光标 先移到 行首 然后换到下一行 也就是 下一行的行首拉
输入字符,回显所输入字符,但不回显ESC,按回车键换行
main()
{
    char c; 
    while(c!='\r')
    {   c=getchar();
        if (c==0X1B)
            continue;
        printf("%c",c);
    }
}
:输入字符,回显所输入字符,但不回显ESC,按回车结束
main()
{
    char c; 
    while(c!='\n')
    {   c=getchar();
        if (c==0X1B)
            continue;
        printf("%c",c);
    }
}

还是不行啊......直接C++测试转移字符

STM32的RTC万年历显示问题

(代码没问题,看来是软件的问题)

马上换了一个软件,最后想到的是超级终端

(完美解决)

注意:网上的一些串口上位机都不能识别这个转义字符

串口输出直接是一行一行的输出

(这个没有我们系统的控制台输出那么智能)

STM32的RTC万年历显示问题

后期我将写一个更加完美的串口调试助手上位机程序,到时候共享给大家.

The end!.

软件交流群:160441098

嵌入式交流群:227262400