zoukankan      html  css  js  c++  java
  • 软硬件调试九法:第一条规则,理解系统

    1 阅读芯片手册
           会告诉你芯片如何初始化、如何配置、外围电路如何搭配,才能让其正常稳定工作。
     另外还要看厂家提供的errata sheet,比如STM32,每个系列都有errata sheet(勘误手册),里面介绍了MCU使用时的局限性,可以避免设计中由于误用MCU引发的的致命缺陷!
    2 仔细阅读手册的每个细节
     比如有关MCU中断处理机制、IO口及其复用功能的使用、复位管理、工作电压、新版和旧版的细微区别等注意事项等就隐藏在数据手册的细节之中。
     比如STM32的datasheet中,引脚定义列表中有标注数字符号的,在列表下方都有注释说明,一定要看,例如PC13,14,15三个IO口使用时同时只能有一个做输出,并且频率要低于2M,负载低于30pF,驱动电流只有3mA等限制。比如在输出模式下, PD0和PD1只能配置为50MHz输出模式。
    3 掌握基础知识
     掌握了基础的知识,才能判断是否是bug。
    4 了解工作流程
    需要了解系统功能,并对其进行划分,从而有助于判断问题出现在哪个功能模块中。

    5 了解工具
    要了解示波器、频谱仪、逻辑分析仪、万用表、负载仪、电桥等调试工具的强大功能如何使用以及其局限性。例如:
    1、审查源码可以看出逻辑错误,但是无法显示时序问题
    2、逻辑分析仪工具可以显示时序问题,但是无法暴露程序逻辑错误
    3、模拟示波器可以看到噪声,但是无法存储太多数据
    4、数字示波器可以捕获大量数据,但是无法观测频率较高的信号,无法显示多通道信号的时序关联,无法观察频率的稳定性。
    5、数字万用表,一般0.3秒读取一次采样结果,因此无法测量短时间信号,只能测量稳定的信号或者给出平均值,对电容容量的测量误差较大,精确测量电容需要用电桥分析仪。6、体温计无法测量水沸腾的问题,普通温度计无法衡量是否发烧

    6 查阅细节

    不要盲目相信自己的记忆力,要查阅细节,在使用芯片时,要查阅手册以保证连线正确、查阅函数名称以及其每个参数的真实含义,以免调用错误的函数或者输入错误的参数。

  • 相关阅读:
    工作总结
    JSON数据使用
    DataTable知识
    树形结构菜单
    区域树前后台
    跨域总结
    工作一年感想
    项目整体架构分析
    springboot 和 mongdb连接问题 Exception in thread "main" com.mongodb.MongoSecurityException:
    go函数、方法、接口笔记
  • 原文地址:https://www.cnblogs.com/shuolang/p/5290651.html
Copyright © 2011-2022 走看看