STC316461253 发表于 2024-12-14 14:28:45

求助!!STC32G12K128 35I-LQFP48串口调试问题求助(已解决)

<p>大家好,在调试 STC32G12K128 35I-LQFP48时用的手册中<strong>串口2使用定时器2波特率发生器</strong> 例程,使用的P4.6,P4.7口,所以增加了一个<strong>P_SW2|=0X01;</strong> 进行串口选择,但是在运行程序时 接收的字符串不是 程序中的 <strong>Uart Test !</strong> 而是一串乱码, 乱码见下图,但是发送 “123”可以正常接收到单片机回复的“123”,请问这是什么问题啊? 怎么解决啊??感觉发送字符串有问题,但是不知道问题在哪,程序如下:</p>
<pre><code>#include &quot;STC32G.H&quot;
#include &quot;intrins.h&quot;

#define FOSC      11059200UL
#define BRT         (65536-(FOSC/115200+2)/4)


bit busy;
char wptr;
char rptr;
char buffer;

void Uart2Isr() interrupt 8
{
    if (S2TI)
    {
      S2TI=0;
      busy = 0;
    }
    if (S2RI)
    {
      S2RI=0;
      buffer = S2BUF;
      wptr &amp;= 0x0f;
    }
}

void Uart2Init()
{
    P_SW2=0X80;
                P_SW2|=0X01;
                S2CFG=0X01;

                S2CON = 0x50;
    T2L = BRT;
    T2H = BRT &gt;&gt; 8;
                T2x12=1;
                T2R=1;

    wptr = 0x00;
    rptr = 0x00;
    busy = 0;
}




void Uart2Send(char dat)
{
    while (busy);
    busy = 1;
    S2BUF = dat;
}

void Uart2SendStr(char *p)
{
    while (*p)
    {
      Uart2Send(*p++);
    }
}

void main()
{
                EAXFR=1;
                CKCON=0X00;
                WTST=0X00;



    P0M0 = 0x00;
    P0M1 = 0x00;
    P1M0 = 0x00;
    P1M1 = 0x00;
    P2M0 = 0x00;
    P2M1 = 0x00;
    P3M0 = 0x00;
    P3M1 = 0x00;
    P4M0 = 0x00;
    P4M1 = 0x00;
    P5M0 = 0x00;
    P5M1 = 0x00;


    Uart2Init();
    IE2 = 0x01;
    EA = 1;
    Uart2SendStr(&quot;Uart Test !\r\n&quot;);


    while (1)
    {
      if (rptr != wptr)
      {
            Uart2Send(buffer);
            rptr &amp;= 0x0f;
                       
      }
    }
}


</code></pre>
<p><img src="data/attachment/forum/202412/14/142841yomw7bp2br7rbr77.png" alt="image.png" title="image.png" /></p>

wlhet 发表于 2024-12-14 14:41:18

<p>没明白你想表达的</p>

STC316461253 发表于 2024-12-14 14:44:35

wlhet 发表于 2024-12-14 14:41
没明白你想表达的

程序应该是上电自动发送 字符串 “Uart Test !” ,但是我这边自动发送一段乱码

STC316461253 发表于 2024-12-14 15:14:18

<p>好了 问题已经解决。<img src="data/attachment/forum/202412/14/151407i7p0hzm7dbx5rs22.png" alt="image.png" title="image.png" /></p>

wlhet 发表于 2024-12-14 15:52:10

STC316461253 发表于 2024-12-14 15:14
好了 问题已经解决。

额,不错,自己搞定
页: [1]
查看完整版本: 求助!!STC32G12K128 35I-LQFP48串口调试问题求助(已解决)