精华内容
下载资源
问答
  • 串口调试助手出现乱码

    万次阅读 2012-09-07 17:50:16
    首先用一个正确的程序试一下确保软件本身没有什么问题, ...自己今天下午调了一个串口发送字符串的程序,就是因为没有把波特率和VPB时钟频率匹配好,导致一直出现乱码 当 UART_BPS 设为9600,Fpclk 为(Fosc/4)*1

    首先用一个正确的程序试一下确保软件本身没有什么问题,

    然后再依次检查波特率和VPB时钟频率是否匹配,因为它们不匹配的时候同样会出现乱码。

    如果最后还是乱码的话,可能就是程序的问题了,需要检查程序是否有语法以外的错误。

    自己今天下午调了一个串口发送字符串的程序,就是因为没有把波特率和VPB时钟频率匹配好,导致一直出现乱码

    当 UART_BPS 设为9600,Fpclk 为(Fosc/4)*1时是正确的组合,

    错误一:UART_BPS 设为9600,Fpclk为 (Fosc/4)*2,出现了乱码,

    错误二:UART_BPS 设为115200,Fpclk 为(Fosc/4)*1,出现了乱码

    错误三:UART_BPS 设为115200,Fpclk 为(Fosc/4)*2,出现了乱码

    程序如下所示:

    方法一:

    #include <NXP/iolpc2148.h>

    void UART1_Init(void);
    void UART1_SendStr(char *Str);
    void UART1_SendByte(char byte);
    void delayn(unsigned long n);
    #define UART_BPS  9600 //设置串口通信波特率

    #define Fosc 12000000   //晶振频率

    #define Fpclk (Fosc/4)*1 //VPB时钟频率,MD此处公式写错了,导致字符串显示不出


    //UART1串口初始化
    void UART1_Init(void)
    {
      //unsigned char Fdiv;
      U1FCR=1;     //FIFO使能
      U1LCR=0x83;  //使能访问除数锁存,8位字符长度,1个停止位,禁止奇偶产生和校验,
      //Fdiv=(Fpclk/16)/UART_BPS; //设置波特率
      U1DLL=Fpclk/(16*9600);   //除数的底8位
      U1DLM=(Fpclk/(16*9600))>>8;   //除数的高8位
      U1LCR=0x03;       //禁止访问除数锁存器
    }
    //发送字符串
    void UART1_SendStr(char *Str)  
    {
      while((*Str)!='\0')  //遇到结束符,退出
      {
        UART1_SendByte(*Str); //发送数据
        Str++;
      }
    }
    //发送单个字符
    void UART1_SendByte(char byte)
    {
      while((U1LSR&0x20)==0); //等待数据发送完毕
       U1THR=byte;  //写入数据
    }
    //延时函数
    void delayn(unsigned long n)
    {
      while(n--);
    }
    int main(void)
    {
      PINSEL0=0x00050000; //P0.8,P0.9选择UART0
      UART1_Init();      //UART1串口初始化
      while(1)
      {
        UART1_SendStr("UART1 TEST.\n");
        delayn(100000);
      }
    }

    方法二:

    #include <NXP/iolpc2148.h>

    void UART1_Init(void);
    void UART1_SendStr(char *Str);
    void UART1_SendByte(char byte);
    void delayn(unsigned long n);
    #define UART_BPS  9600 //设置串口通信波特率

    #define Fosc 12000000   //晶振频率
    //#define Fcclk (Fosc*4)  //系统频率
    #define Fpclk (Fosc/4)*1 //VPB时钟频率,MD此处公式写错了,导致字符串显示不出
    //unsigned char Fdiv;
    typedef unsigned short U16;
    /*************************串口1初始化******************************************/
    void UART1_Init ()
    {
      U16 Fdiv;
      U0LCR = 0x83;                   // DLAB = 1,可设置波特率
      Fdiv =(Fpclk/16)/UART_BPS;
      U0DLL = Fdiv%256;
      U0DLM = Fdiv/256;
      U0LCR = 0x03;
    }

    //发送字符串
    void UART1_SendStr(char *Str)  
    {
      while((*Str)!='\0')  //遇到结束符,退出
      {
        UART1_SendByte(*Str); //发送数据
        Str++;
      }
    }
    //发送单个字符
    void UART1_SendByte(char byte)
    {
      while((U1LSR&0x20)==0); //等待数据发送完毕
       U1THR=byte;  //写入数据
    }
    //延时函数
    void delayn(unsigned long n)
    {
      while(n--);
    }
    int main(void)
    {
      PINSEL0=0x00050000; //P0.8,P0.9选择UART0
      UART1_Init();      //UART1串口初始化
      while(1)
      {
        UART1_SendStr("xiao mu lang shi ge da duan dan.haha\n");
        delayn(1000000);
      }
    }


    展开全文
  • 描述:在串口调试助手上可以看到不停地 收到 CC2530 发过来的从串口助手发送过去的数据 波特率:115200bps **************************************/ #include <ioCC2530.h> #include <string.h>...
  • 串口调试助手向STM32发送数据过多时,串口调试助手会自动返回一组乱码数据,如图。想知道原理和解决方法!!!波特率、缓冲区字节之类的参数都是设置正确的。数据在120个字节以下,不会出现次现象。求解答!!!!!...
  • 如何解决RichEdit line insertion error,串口调试助手出现RichEdit line insertion error,没有外部以太网连接,却一直在接收乱码,点击清除显示,却出现RichEdit line insertion error 这种错误。 还没有通过...

    如何解决RichEdit line insertion error,串口调试助手出现RichEdit line insertion error,没有外部以太网连接,却一直在接收乱码,点击清除显示,却出现RichEdit line insertion error 这种错误。

    还没有通过网线连接单板,就能收到乱七八糟的东西,并有错误,请问这是什么原因

    展开全文
  • 串口调试助手.zip

    2020-05-31 15:09:08
    串口调试助手 qt写的 接收单片机的中文会出现乱码,仅供参考,里面有两个文件夹一个是编译好的程序,一个是代码
  • 串口调试助手C#

    2014-08-29 15:12:47
    创新实训项目展示:串口调试助手。解决了网络上出现的此类程序的常见问题,比如:假死、接受乱码、hex接受出错等。
  • 串口调试助手,上位机数据,有时正常,有时出现周期性乱码(有时不正常)。 串口调试助手问题,用sscom可以,用uartassist乱码. 测试下位机 : STM32F103ZET6 测试软件 : 正常使用的 :sscom3.3(比较好用);...

    情况说明 串口调试助手,上位机数据,有时正常,有时出现周期性乱码(有时不正常)。

    串口调试助手问题,用sscom可以,用uartassist乱码.

    测试下位机    STM32F103ZET6

    测试软件

    正常使用的 :sscom3.3(比较好用);sscom4.2(广告位较大);secureCRT_v6.2.0

    乱码的是 :UartAssist_v3.7.2(铭心网络);AccessPort1.37

    得出结论 换串口线即可都正常。

    问题 :是串口线的问题,但为何sscom,secureCRT可以正常工作?

    展开全文
  • 主要针对的是串口助手调试CC3200 UART时出现乱码问题的解决方案。

    参考 STM32 USART出现乱码

    在使用超级终端Tera Team软件调试CC3200 UART示例程序时,界面总是输出乱码。
    在这里插入图片描述
    参考了另外一篇博客之后,提出有可能是波特率设置的问题。在设置里面,发现设置的波特率为9600bit/s。
    在这里插入图片描述

    void
    UARTConfigSetExpClk(unsigned long ulBase, unsigned long ulUARTClk,
                        unsigned long ulBaud, unsigned long ulConfig)
    {
        unsigned long ulDiv;
    
        //
        // Check the arguments.
        //
        ASSERT(UARTBaseValid(ulBase));
        ASSERT(ulBaud != 0);
    
        //
        // Stop the UART.
        //
        UARTDisable(ulBase);
    
        //
        // Is the required baud rate greater than the maximum rate supported
        // without the use of high speed mode?
        //
        if((ulBaud * 16) > ulUARTClk)
        {
            //
            // Enable high speed mode.
            //
            HWREG(ulBase + UART_O_CTL) |= UART_CTL_HSE;
    
            //
            // Half the supplied baud rate to compensate for enabling high speed
            // mode.  This allows the following code to be common to both cases.
            //
            ulBaud /= 2;
        }
        else
        {
            //
            // Disable high speed mode.
            //
            HWREG(ulBase + UART_O_CTL) &= ~(UART_CTL_HSE);
        }
    
        //
        // Compute the fractional baud rate divider.
        //
        ulDiv = (((ulUARTClk * 8) / ulBaud) + 1) / 2;
    
        //
        // Set the baud rate.
        //
        HWREG(ulBase + UART_O_IBRD) = ulDiv / 64;
        HWREG(ulBase + UART_O_FBRD) = ulDiv % 64;
    
        //
        // Set parity, data length, and number of stop bits.
        //
        HWREG(ulBase + UART_O_LCRH) = ulConfig;
    
        //
        // Clear the flags register.
        //
        HWREG(ulBase + UART_O_FR) = 0;
    
        //
        // Start the UART.
        //
        UARTEnable(ulBase);
    }
    

    上面是CC3200 SDK提供的API函数,主要是为了配置UART接口,其中函数第三个参数ulBaud就是指波特率。

    void 
    InitTerm()
    {
    #ifndef NOTERM
      MAP_UARTConfigSetExpClk(CONSOLE,MAP_PRCMPeripheralClockGet(CONSOLE_PERIPH), 
                      UART_BAUD_RATE, (UART_CONFIG_WLEN_8 | UART_CONFIG_STOP_ONE |
                       UART_CONFIG_PAR_NONE));
    #endif
      __Errorlog = 0;
    }
    

    上面是主函数里的初始化终端函数,就是引用了UAET的API函数对UART进行初始化,我们看到第三个参数为UART_BAUD_RATE,这个就是波特率。这是一个宏定义,我们去找找它定义为了多少。

    #define UART_BAUD_RATE  115200
    #define SYSCLK          80000000
    #define CONSOLE         UARTA0_BASE
    #define CONSOLE_PERIPH  PRCM_UARTA0
    

    在uart_if.h这个头文件,可以发现波特率被设置为了115200。接下来我们去修改超级终端的波特率,重新运行,发现乱码问题已经解决了。
    在这里插入图片描述
    在这里插入图片描述

    展开全文
  • BCOM串口调试助手1.0

    2015-03-13 09:09:17
    和其它串口主要不同在于添加了更新串口端口号按钮,不需重新打开软件就可重新获取串口串口输出数据编码可选,这样可以完美支持中文,不会出现乱码,并且算法保证因故障乱码后可自动恢复。另外命令列表行数可变。 ...
  • 这两天调试一下F28335的串口调试,板子是智创电子的最小开发板,刚开始调试时,出现以下情况: 代码是自带的,可是老出现上边的乱码,经过一天时间,看数据...还有一个问题是关于串口调试助手16进制发送的问题...
  • 串口调试助手 sscom3.2

    2011-05-26 15:41:02
    4.中文显示无乱码,且不影响速度 5.串口波特率可以选择为110bps-256000bps.(波特率>115200时需要硬件支持) 6.可以即时显示存在的串口号.如果您增加了usb转串口等设备,串口号也会在列表中出现. 7.可以选择“5、6、7、8...
  • 且一打开串口LED灯停止闪烁,PWM波也停止输出,也就是所有其他的功能全都无法正常工作,甚至出现乱码显示,一开始以为是自己程序出问题了,于是使用了正点原子提供的官方串口实验例程,也是同样的问题,网上百度了...
  • 【STM32】串口通信出现乱码(使用官方标准库)

    千次阅读 多人点赞 2020-09-26 16:18:00
    解决stm32串口通信出现乱码,sscom串口调试助手,官方标准库。
  • 和其它串口主要不同在于添加了更新串口端口号按钮,不需重新打开软件就可重新获取串口串口输出数据编码可选,这样可以完美支持中文,不会出现乱码,并且算法保证因故障乱码后可自动恢复。另外命令列表行数可变。
  • 串口调试工作程序出现问题

    千次阅读 2013-04-15 16:12:36
    串口调试助手 精装版经常出现以下问题,格式混乱 推荐大家使用超级终端或者ecom串口助手 另外,在ubuntu系统中minicom支持rs232转usb,而cutecom试用很多次,还是没有测通。 最后,一个需要解决...
  • ⑵、但是当把英文标题直接换成中文时,则会出现乱码,如下:   这是由于不同的编译器所使用的编码方式不一致导致的,有的使用GBK,有的使用UTF-8等。 ⑶、所以我们只需要设置其编码格式与系统对应即可,添加相应...
  • (1)修正COM、USB、NET、SERVER接收数据时会出现乱码的BUG (2)优化了线程接收数据的策略 ===================================================== 2010-12-10 (1)支持USB、网络接口监视 (2)优化了自动升级...
  • STM32使用keil串口输出中文乱码问题

    万次阅读 多人点赞 2018-08-20 16:23:22
    问题描述:在进行串口实验时,我们发现使用串口调试助手输出的中文全是乱码(不是文件中的中文乱码,是串口输出的时候出现乱码),见以下图片: 解决方案: 1.首先在你的文件中找到main.c文件,然后使用记事本...
  • python在调用pyserial通信的时候,接收到串口调试助手或者设备发送过来的HEX值,在特定位置会出现错误编码,接收到的不是十六进制数据,而是一些乱符号,' ', '!', '"', '#', '$', '%', '&amp;', '\'', '('...
  • STM32串口通信乱码解决方法

    千次阅读 2019-07-04 11:06:25
    STM32使用USART做串口通信实验的时候,串口调试助手能够接收到数据但出现乱码现象,显示开发板发来的数据总是问号或者不规则字体,主要原因可能是串口波特率设置不对或者系统时钟设置出问题。 波特率设置 波特率设置...
  • 但是Mac mini的串口调试助手上收到的并不是我发送给他的内容,发的内容多了甚至会出现乱码。 尝试过很多个串口调试程序,其中有一款能准确的跟Mac mini通讯,连发多次也不会出错,并且用USB转串口线连两个Windows...
  • 在进行串口通信实验时,使用printf()打印中文,串口调试助手出现乱码的现象。 打印代码如下: printf("请输入数据,以回车键结束"); 串口调试助手显示如下: 解决 在工程文件中找到写有以下代码的文件,我这里...
  • STM32串口通信乱码详细处理方法

    万次阅读 多人点赞 2018-01-13 10:26:24
    STM32串口通信以及温度采集搞定,其中主要遇到STM32系列单片机时钟树的问题,串口通信遇到串口调试助手能够接收到数据但出现乱码现象,开始一直以为是串口配置和程序代码问题,因为是第一次上电在线调试STM32板子,...
  • STM32 USART出现乱码

    万次阅读 多人点赞 2017-09-27 19:41:51
    USART使用串口助手调试出现乱码的情况,一般都是波特率的问题,例如:向串口发送“hello world\r\n”,但是串口助手收到的数据却是这样: 于是我仔细检查代码中设置的波特率的大小,发现没错,也是设置为115200,...
  • 在调试Stm32f429串口通信时,串口调试助手出现如图所示乱码。 由于需要用到的串口是UART7,而正点原子阿波罗开发板提供的例程是USART1,所以猜想是否是两个串口配置不一样,但串口一虽然是同步/异步的,但使用时...
  • 问题出在将串口线改成激光收发器后,串口调试助手出现乱码、数据丢失的现象; 激光头和接收管都是TB买的,调试助手上面的一列数字是我用跳线连接两个单片机的串口时正常的数据,下面的乱码是改成激光头后的数据。 ...
  • 解决办法:1)看看程序里面的波特率和串口调试助手里面的波特率是否一致,如果不一致请改成一致的。  2)如果检查波特率是一致的那就就应该检查一下程序了,看看SMOD是否置1,定时器设置的时间是否正确,以及串口...
  • 串口打印机安装

    2010-12-07 00:09:00
    近期因项目需要,原来用USB接口的...检测串口线也没有问题(用串口调试助手,将另一端的2、3脚短接,数据正常收发)。打电话给厂家(知名厂家)技术人员,回答的也是很含糊,讲了等于没讲,看来还是要自已搞定。后让公司...

空空如也

空空如也

1 2 3
收藏数 44
精华内容 17
关键字:

串口调试助手出现乱码