单片机初学者编程经常会碰到的问题及处理办法
2022-12-21 来源:zhihu
在刚开始接触单片机学习的时候,尤其是C语言基础比较薄弱的老铁们,经常会碰到很多比较低级的错误,程序编译错误一大堆,但不知道如何解决!
一、程序开发经常容易出现的问题汇总:
①忘记写分号,或分号输入错误,导致程序编译错误。
基本上每个C语言初学者都会碰到这个问题,忘记写分号,或者分号的输入格式错误。
C语言中的每条语言结束都是以分号为标志的,而且分号必须是英文输入模式下的输入。
②大括号不对等,导致编译不通过
C语言程序编程,大括号的左括号和右括号必须一一对应,否则编译提示错误。
③函数未声明,编译提示函数功能违法。
C语言中编程种,调用代码后面书写的函数,必须要先在文件的前面声明,再调用,否则就会报错,如果是调用前面的函数,可以不声明。
为了养成良好的习惯,C文件的所有函数最好都可以在对应的.H文件或本文件的前面声明一下。
④语法错误,“=”和“==”混淆,“&”和“&&”,“|”和“||”用法不能区分。
初学者,对C语言的符号理解不够透彻,导致程序编写逻辑错误。
⑤没有将.C文件加到工程中,导致编译无法通过。
⑥打开工程,.h文件提示感叹号。
从其他地方下载或拷贝的工程,.h经常会提示感叹号,出现这个问题只需要重新编译,感叹号就会消失。
⑦其他问题,没有增加.h文件,没有写main函数,备注格式错误等。
二、如何处理这些问题
每一个软件程序开发者,刚开始学习软件编程的时候,都会出现这些零零碎碎的问题,但大家别慌,出现这些问题都是很正常的,软件开发学习过程都会有这样的经历,当我们敲的代码多了,自然而然就会掌握经验,避免这些问题。
刚开始学习编程,如何处理这些问题?
编译错误的处理办法:
处理方法1:双击提示的错误信息,光标会自动跳转到错误提示处。
在光标跳转到的位置,仔细检查问题,是不是大括号不对应?是不是分号写成了中文输入格式?是不是“|”写成了”||”.
这个是程序编程过程中最常用的方法。
处理方法2: 将编译的错误提示,点击右键复制,然后百度搜索相关信息。
这个办法适合于处理一些较复杂的问题
处理方法3: 向一些有经验的老工程请教。
这种方法是必须是要有人帮助你的情况下才能实现。
我们在单片机学习的过程中,经常会因为一些小的问题很久不能解决和处理而放弃单片机的学习,如果大家没有这样的资源,可以关注无际单片机编程,得到帮助。
三、单片机程序开发,养成良好的编程习惯
①掌握单片机C语言基础
C语言是单片机程序开发的基础,所以单片机开发首先要学习单片机C语言基础。关于C语言开发必须要掌握的知识点如下所示:
这块入门的系统教程可以到无际单片机编程拿,很多零基础的看了反馈都还不错。
②层次分明,大括号对应
1).大括号需要一一对应
2).被包含的大括号内的程序需要右移一个tab按键字符
3).如蓝色框,同一个括号内的程序需要左对齐书写
程序开发逻辑一定要分明,这样不仅方便我们阅读程序代码,也方便我们查找代码程序的错误和警告
④统一的变量定义格式
在C语言编程中,虽然对变量的名词,函数名,端口的定义没有严格的要求,但我们在程序中的变量名称,函数名的格式要尽量统一。
1).变量的定义: 习惯变量的头字母大写,后面字母小写,变量的名称尽量和对应的英文字母一致
例如:unsigned char KeyState;/// 按键的状态
2).端口的定义: 端口定义,名称全部大写
例如:sbit LED1 = P3^0; //定义LED1对应的IO是P3.0
3).函数名的书写:
函数的名称一般根据函数的功能来定义的,方便大家阅读,如下:
⑤增加规范的程序备注说明。
对功能比较重要,逻辑较复杂的函数,我们一定要做好程序的备注说明,这不仅方便别人阅读,也方便自己查看,自己写的程序放的时间太久了也容易忘记。