0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

单片机常用的调试方法

CHANBAEK 来源:BingoMCU 作者:BingoMCU 2023-04-04 14:58 次阅读

一、使用USART发送数据

单片机程序调试过程中,串口打印调试方法是非常重要的手段,在使用串口调试时,我们更多的是使用printf。但是下面我们不介绍printf,介绍一下另外几种我们常用的调试方法。具体方法如下:

1、发送单个字符

void USART1_PutChar(u8 ch)
{
  USART_SendData8(USART1,(u8)ch);

  while(USART_GetFlagStatus(USART1,USART_FLAG_TXE)==RESET);

  while(USART_GetFlagStatus(USART1,USART_FLAG_TC) == RESET);
}

2、发送固定长度的字符串

void USART1_PutStrLen(u8 *buf,u16 len)
{
  for(;len > 0 ; len--)
  {
      USART_SendData8(USART1,*buf++);

      while(USART_GetFlagStatus(USART1,USART_FLAG_TXE) == RESET);
  }

  while(USART_GetFlagStatus(USART1,USART_FLAG_TC) == RESET);
}

3、发送任意长度的字符串

void USART1_PutStr(u8 *buf)
{
  while(*buf)
  {
      USART_SendData8(USART1,*buf++);

      while(USART_GetFlagStatus(USART1,USART_FLAG_TXE) == RESET);
  }
  while(USART_GetFlagStatus(USART1,USART_FLAG_TC) == RESET);
}

二、如何发送16bit的数据

  单片机(STM8)的USART发送的是8bit的数据,所以如果要发送16bit的数据,则需要将16bit的数据转换为8bit的高低两个字节进行发送,需做如下处理。

u16 data;
u8 high_byte,low_byte;
high_byte=data>>8;
low_byte=data;

则经过这样的转换之后,就可以直接使用USART进行发送了。

三、使用翻转电平的方式测量程序执行时间

  我们想要知道某一段代码的执行时间,可以通过示波器来测量,在需要测量的代码处做一个翻转电平的程序,就可以通过示波器来查看程序的执行时间了。代码如下:

u8 toggle_flag=1;
if(toggle_flag)
{
    GPIO_SetBits(GPIOC,GPIO_Pin_0); 
    toggle_flag=0;
}
else
{
    GPIO_ResetBits(GPIOC,GPIO_Pin_0);
    toggle_flag=1;
}
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 单片机
    +关注

    关注

    6032

    文章

    44513

    浏览量

    632695
  • 调试
    +关注

    关注

    7

    文章

    572

    浏览量

    33892
  • 串口
    +关注

    关注

    14

    文章

    1543

    浏览量

    76160
  • 程序
    +关注

    关注

    116

    文章

    3773

    浏览量

    80830
  • Printf
    +关注

    关注

    0

    文章

    81

    浏览量

    13623
收藏 人收藏

    评论

    相关推荐

    单片机串口模块调试方法

    笔者在调试某Cortex-M3内核单片机时遇到一个问题,此单片机不具备在线仿真功能,因此调试代码时只能使用UART输出Log的方式调试
    发表于 07-28 15:48 1483次阅读
    <b class='flag-5'>单片机</b>串口模块<b class='flag-5'>调试</b><b class='flag-5'>方法</b>

    单片机的在线调试方法

    本文主要讲述的是单片机的在线调试方法
    发表于 04-22 16:43 34次下载

    ARM单片机开发调试方法

    ARM单片机开发调试方法
    发表于 07-25 13:21 36次下载

    单片机破解的常用方法及应对策略

    单片机破解的常用方法及应对策略 摘要:介绍了单片机内部密码破解的常用方法,重点说明了侵入型攻击
    发表于 05-24 09:27 780次阅读

    常用单片机介绍

    常用单片机介绍 单片机种类繁多,但是一般常用的有以下几种:    ATMEL公司的AVR单片机,是增强型RISC内
    发表于 03-18 15:30 2080次阅读

    单片机系统硬件抗干扰常用方法实践

    单片机系统硬件抗干扰常用方法实践       影响单片机系统可靠安全运行的主要因素主要来自系统内部和外部的各种电气干扰,并受系统结构
    发表于 03-02 01:17 846次阅读

    单片机开发调试应注意的问题

    单片机开发调试应注意的问题 1、使用总线不外引的单片机 ·是最正统的单片机使用模式 ·符合小型、简单、可靠、廉价的单片机设计初衷
    发表于 03-26 12:30 1741次阅读

    单片机常用算法设计

    单片机常用算法归纳
    发表于 04-05 14:01 5次下载

    单片机最小系统的调试方法_单片机最小系统设计制作及开发流程

    本文主要介绍了单片机最小系统的调试方法单片机最小系统设计制作及开发流程。
    的头像 发表于 04-24 09:35 1.2w次阅读
    <b class='flag-5'>单片机</b>最小系统的<b class='flag-5'>调试</b><b class='flag-5'>方法</b>_<b class='flag-5'>单片机</b>最小系统设计制作及开发流程

    单片机程序常用的几种调试方法

    单片机程序常用的几种调试方法,这些调试方法都需要结合电脑上位
    发表于 07-17 09:31 1.3w次阅读

    单片机系统硬件的静态调试和动态调试综述

    单片机系统硬件的静态调试和动态调试综述
    发表于 07-18 10:59 2次下载

    分享:单片机常用术语

    分享:单片机常用术语
    发表于 02-10 11:11 6次下载
    分享:<b class='flag-5'>单片机</b><b class='flag-5'>常用</b>术语

    51单片机串口配置方法

    串口,作为单片机程序开发中最常用、最方便,也是应用最广泛的程序调试方法;无论是作为调试工具,打印出调试
    的头像 发表于 04-14 14:58 4843次阅读
    51<b class='flag-5'>单片机</b>串口配置<b class='flag-5'>方法</b>

    单片机调试时的那些技术

    单片机调试时的那些技术
    的头像 发表于 10-18 17:56 746次阅读
    <b class='flag-5'>单片机</b><b class='flag-5'>调试</b>时的那些技术

    单片机调试常见问题与解决方法

    单片机调试是嵌入式系统开发中的一个重要环节,它涉及到对单片机程序的测试和优化,以确保系统能够正常工作。在调试过程中,开发者可能会遇到各种问题。 1. 程序无法烧录到
    的头像 发表于 11-01 14:11 257次阅读