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

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

3天内不再提示

单片机程序设计调试几点经验

j4AI_wujianying 来源:单片机精讲吴鉴鹰 2019-11-20 11:19 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

1、程序的确定性比硬件大,不要害怕程序问题。

2、写程序,最重要的不是学会某种语言,而是会分析问题并提出解决问题的方法。

3、含有中断的程序较为复杂,需要编写者清楚同一时刻,我在做什么,其他人在做什么,用“并发”的方式思考问题,才能写好。

4、程序模块化是为了编写而不是为了运行,模块化和函数是两个不同的概念,函数是为了将需要多次使用的代码统一编写,以便减少程序代码量,便于维护;模块化是指将复杂的程序功能化整为零而成的功能块,一个模块可能由多个函数组成,也可能就是一个函数,还有可能只是一段紧密相连的代码块。

模块---打开冰箱门

1、抬起右手,移动到冰箱门把中心右侧1cm处

2、弯曲右手手指,构筑冰箱门3、以2kg的力量向后拉

4、完成

5、好的模块化设计,模块间的接口简单明了。总的来说,好看好改的程序就是好程序。

6、编写程序的好习惯是分模块编写,边写边测试,在通过测试的模块基础上编写下一个模块,可以减少程序出现问题的可能性,快速排除与问题相关的模块并定位到程序语句。

7、注释不是程序,但可以帮助编写者提高边写的可能性,也可以大大提高程序的可维护性。建议C语言程序注释到函数,一些重要的操作至少要注释;汇编语言程序,至少注释70%的语句行,建议一行一注。

8、程序有BUG是很正常的,要学会找BUG的方法。

9、故障分软硬,软故障最难找。软故障多源于设计临界所导致,在一定出发条件下发生,当条件破坏时,故障可能消失得无影无踪。软故障的误导性来源于对硬故障的经验积累。硬故障因为无需出发条件,人们往往用

尝试---判断--再尝试1

10、单片机软件和硬件密不可分,查找问题时要两者兵种,不可死认一方。

11、Debug高手和新手间的区别,高手知道该如何去找,而新手会迷茫。

12、平时就要注意积累。学习软硬件只是,还要熟悉自己的实际应用,包括应用条件,否则会对放在面前,对推理极有价值的关键现象视而不见。找BUG可以用“猜” 的方法,但是“猜”完了要推理到所有的现象上去“验证”。所以我们说“怀疑---否定---再怀疑---再否定,直到找到真理所在”,前面的“尝试--- 判断---再尝试”是找BUG的基本方法。

13、在BUG面前,新手和高手初始化状态是一样的,只是高手有意识去找现象用于分析,新手看着现象发呆罢了。

14、论据有两种获得方式---寻找和傻等,高手以寻找为主,新手以傻等为主。

15、随机对随机的方式是一种在查找小概率软故障时用得极端确认方法,需要使用者对故障的基本特征熟练掌握,明确“小概率事件很少发生”的原理。

16、当一个系统由若干个部分组成时,寻找故障的时候可以将怀疑引起故障的部分更换到其他系统上,通过观察故障现象是否随该部分迁移来判断BUG所在。

17、将精力集中在需要查找的部分,排除其他模块的影响,用最简单的方法去判断,这就是模块隔离法的价值所在。

18、发生时间相关性BUG,其分开测试正确,合并测试出错的特性往往让初学者抓狂,在调试含有中断的程序时,一定要多条思路,怀疑程序的时间相关性。

19、因为只有在实际运行时才会表现出来,时间相关性BUG比较难于查找,这也就是我们建议程序在实际环境中调试,而不是仿真环境下调试的原因之一,遵守基本规则编写程序是避免时间相关性BUG说呢之所有BUG的根源。多观察现象,积累判断依据是找时间相关性BUG的法宝。虽然写程序很累,只要我们不断的积累经验不断的学习,乐趣自然在其中,当我们开发成功一个产品我想得到的不仅仅是一个产品,还有自豪和满足吧。程序员是一个有激情的工作,希望我们都能继续写下去。

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

    关注

    6074

    文章

    45344

    浏览量

    663811
  • 模块化
    +关注

    关注

    0

    文章

    347

    浏览量

    22522
  • BUG
    BUG
    +关注

    关注

    0

    文章

    156

    浏览量

    16225

原文标题:单片机程序设计调试几点经验

文章出处:【微信号:wujianying_danpianji,微信公众号:单片机精讲吴鉴鹰】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    单片机系统硬件的调试方法

    单片机的系统硬件调试,通常有静态调试和动态调试两种不同,前者是通过目测、万能表测试、加电检查、联机检查的方法,在加电于样机之前.对样机的型号规格,以及安装要求等进行核对,同时检查 电源
    发表于 12-03 06:10

    第1章 如何学习单片机

      在错误的道路上日夜兼程,最终也无法成功,方法和思路绝对是最重要的。本章节讲到的学习单片机的方法,都是作者学习单片机的无数经验和教训总结出来的瑰宝。通过作者前面的披荆斩棘,开辟了道路,可以告诉读者
    的头像 发表于 10-10 10:32 240次阅读

    单片机烧录原理是怎样的?辉芒微单片机烧录程序详细步骤讲解

    烧录(Programming)就是把 .hex/.bin 文件里的机器码搬运进单片机片内 Flash 的过程。辉芒微(FMD)单片机内部有一块 自举 BootROM,上电时会先跑这段程序;如果检测
    的头像 发表于 09-17 16:14 1421次阅读
    <b class='flag-5'>单片机</b>烧录原理是怎样的?辉芒微<b class='flag-5'>单片机</b>烧录<b class='flag-5'>程序</b>详细步骤讲解

    什么单片机比较耐用

    凯星科技有限公司在多年的单片机应用开发中,对各类单片机的耐用性有着深入了解,通过为拓邦、朗科、安徽龙多等客户提供方案,积累了丰富的选型与优化经验。 影响单片机耐用性的核心因素
    的头像 发表于 07-31 13:48 562次阅读

    怎么测单片机系统频率

    单片机系统频率是指单片机工作时的时钟频率,它直接影响单片机的运行速度和处理能力,准确测量系统频率对单片机应用开发、程序
    的头像 发表于 07-25 11:39 488次阅读

    单片机怎么烧程序

    单片机程序是将编写好的程序代码写入单片机内部存储单元,让单片机按照预设逻辑工作的过程,是单片机
    的头像 发表于 07-23 11:47 664次阅读

    单片机原理及应用

    本书全面系统地介绍了 MCS-51 系列单片机的基本结构、工作原理及应用技术。主要内容包括:微型计算机的基础知识、MCS-51 单片机的基本结构、汇编语言和 C51 语言程序设计方法、中断系统
    发表于 06-16 16:58

    图解单片机功能与应用(完整版)

    从基础知识的介绍出发,图文并茂,直观、系统地介绍了单片机的内部结构、工作原理和应用技巧。全书分为10章,内容包括51单片机编程资源图解、51单片机指令系统图解、汇编语言程序设计图解、输
    发表于 06-16 16:52

    STC单片机范例程序

    电子发烧友网站提供《STC单片机范例程序.zip》资料免费下载
    发表于 06-04 16:27 9次下载

    2.4寸TFT彩屏配套测试程序-51单片机

    如题,2.4寸TFT彩屏配套测试程序-51单片机
    发表于 06-04 16:26 0次下载

    C51单片机及C语言知识点必备秘籍

    定时/计数器实验 21:单片机串行口介绍 系列四 22:单片机串行口通信程序设计 23:LED 数码管静态显示接口与编 24:动态扫描显示接口电路及程序 25:
    发表于 05-15 14:00

    单片机C语言编程宝典大全,初学必备【强推下载!】

    (400页PPT) 6. 单片机程序设计实例 7. 单片机应用程序设计技术_周航慈.pdf 8. 8051单片机C语言彻底应用 9. C语言
    发表于 03-14 11:03

    单片机选型迷茫?这几点助你精准抉择!

      单片机如何选型?   单片机的选型是一件重要且费心的事情。如果单片机型号选择合适,单片机应用系统就会经济且工作可靠;如果选择不合适,就会造成经济浪费,影响系统的正常运行,甚至无法达
    发表于 02-26 14:58

    单片机Debug工具性能对比 单片机调试常用命令

    单片机(Microcontroller Unit, MCU)调试是嵌入式开发中的一个重要环节,它帮助开发者发现和修复代码中的错误,优化程序性能。不同的单片机和开发环境可能使用不同的
    的头像 发表于 12-19 09:56 2176次阅读

    单片机Debug与仿真区别

    是指在软件或硬件开发过程中,通过特定的工具和技术来查找、诊断和修复错误的过程。在单片机开发中,Debug通常涉及到以下几个方面: 硬件调试 :检查单片机的硬件连接是否正确,包括电源、时钟、I/O接口等。 软件
    的头像 发表于 12-19 09:47 1425次阅读