自学单片机第十二篇上:首次测试设备——软件

关注一下,更多精彩等着你!

这是新手的第一次尝试,是老师傅的一次回望当年。

准备阶段,我们尽量让第一次测试完整,可操作。由于准备比较多,讲得尽可能详细,所以分为两篇,上篇是软件测试,下篇是硬件测试。

所有材料:

1,安装软件的电脑,至少安装了keil和ISP,keil用于编辑程序,ISP用于把程序下载到单片机中。没有这两个,我们即使首次测试成功,接下来的学习也会很艰难。

2,可以上电的最小系统板,已安装单片机。上电是基本的,单片机也是基本的,没有单片机,程序就没地方存,没有电,什么也干不了。

3,下载器,它是电脑和芯片的连接纽带,没有它,接下来也是学着艰难,下载线可以想办法,下载器就只能买了。

材料准备好了,小白们就可以准备了,大佬们也准备好板凳。

首先,测试软件是否可以运行,并写下第一个代码,同时导出可执行文件。

打开安装好的keil软件。

自学单片机第十二篇上:首次测试设备——软件

然后我们建立一个工程

自学单片机第十二篇上:首次测试设备——软件

文件名我写成了002,主要是为了好记,你们可以命成自己喜欢的,例如我们要练习LED灯,可以直接命名为小灯点亮,没有问题的,支持中文。

自学单片机第十二篇上:首次测试设备——软件

接着是选择我们需要编程的控制器型号,原则上选择相近的型号即可,最好选择一致,自带的没有STC的库,所以我导入了一个,由于我已经导入,所以可以直接看到。

自学单片机第十二篇上:首次测试设备——软件

你们可以用inter的8051替代,没有问题的。如果需要知道如何导入芯片库,我们后面说到下载的时候会介绍一下方法。选择好之后,点击确定。从这一步开始,程序就已经进入编辑阶段了,你选择的这个芯片型号,就决定了接下来你使用的函数中,哪些是已经准备好的,可以直接调用,如果选错,可能会导致无法编译或者编译错误。就像学习文理分科一样,虽然不影响学习,但是最终考试题会不一样。

自学单片机第十二篇上:首次测试设备——软件

我选择的是与我的芯片型号一致的STC89C52RC

自学单片机第十二篇上:首次测试设备——软件

看到这个选择”否”,意思是将这个引导文件添加到工程的项目中,我们暂时不需要,所以不用。如果选择了”是”也不影响操作,接着进行下一步即可。(截图忘记保存,不影响操作,大家自己看提示就可以完成)

新建一个程序文档,我们可以在项目上单击右键,会弹出菜单栏,选择第二项》》添加一个新的文档。

自学单片机第十二篇上:首次测试设备——软件

我们在对话框中,选择第一个.c文件,然后输入文件名,原则上支持中文,但是条件允许的情况下,尽量选择英文加数字,防止出现编译错误。毕竟这个软件是国外开发的。还是要迁就一下它,防止软件使用中乱发脾气。

自学单片机第十二篇上:首次测试设备——软件

这个添加的文件直接就是程序文档,后缀名就是”****.c”。

自学单片机第十二篇上:首次测试设备——软件

还有一种快捷的添加文件方式,也说一下,就是这个一页纸一样的图标,左键单击就添加了,不过出现的是一个没有后缀名的文档。

自学单片机第十二篇上:首次测试设备——软件

自学单片机第十二篇上:首次测试设备——软件

我们需要点击上方的蓝色的保存按键,或者直接Ctrl+s,在弹出的对话框下方,输入想要命名的文件名,例如”003.c”,切记,此时的”.c”不可以省略,否则就会保存为文本文档,程序就读不出来。填完,点击保存即可。

自学单片机第十二篇上:首次测试设备——软件

下面我们写入第一个程序,也是每个学习单片机的同学最容易接受的一段代码,估计大家都是从这个开始的吧,我当年第一次学,可是比这个难,所以直接完犊子了,今天就来的简单些,防止重蹈当年的覆辙。

首先是第一句:#include<reg51.h>

这个根据各自的单片机型号而定,建议大家选择这个,通用的基本声明,我的是52型号的,用这个也可以,不过以后的学习中,大家可以根据需要书写与自己单片机一致的头文件,例如我的就可以书写成#include<reg52.h>,这里边包含的是一些已经帮我们声明好的变量和定义,可以直接使用,方便了程序书写。暂时先不用理会,先写上第一句。

然后是第二句:sbit LED=P1^0;

这个是一个赋值语句,高中就学习过,意思是把P1.0口的值送给LED,但是前边的sbit,就改变了他的一些功能,此时也可以理解为,P1.0和LED相等,看见P1.0就可以认为是LED,看见LED就认为是P1.0,给P1.0新建了一个名字叫LED。就像我们有大名,喊着比较别扭,于是就起了个小名,喊着亲切还好认。跟这个是一个意思。

在课堂上老师会说这个是一个声明语句,意思是,提前告诉所有程序:唉!都听好了,以后看见有人喊”LED”就是在喊”P1.0″,都听清楚了。

于是程序中就可以用LED代替P1.0进行操作了。

接下来是主程序:void main(void){}

mian后的括号中的void可以不用写,如果严格一些,需要写,不写也不会报错。后边的大括号是必须写的,一对儿出现。我们以后写的所有程序都需要在这个函数中运行,不管你写的什么,都需要走主函数过一下,就像一个火车站的进站口一样,负责检查和执行。

我们需要在主函数的大括号中写上一个语句,完成一个输出。

输出语句:LED=0;

这句话就相当于P1.0=0。

最后需要加一个语句,用于保持程序的当前状态,防止出现错误。

最后的一句:while();

就这么几句,看似简单,其实可以通过它,我们来简单测试一下软件是否可用,下载器是否正常,单片机是否可以正常驱动,作为开始,这就够了。

编译前,项目中只有程序的.c文件。

自学单片机第十二篇上:首次测试设备——软件

点击编译,用于检查和生成可执行文件。如果有错误会在下方的提示窗中显示。

自学单片机第十二篇上:首次测试设备——软件

编译后,下方提示0-错误,0-警告。如果有错误,程序就不会生成可执行文件,如果有警告,可以生成可执行文件,但警告的内容是提示你,即使生成了可执行文件,你也可能会无法正常执行程序。所以最好做到没有错误,没有警告。

一般编译完后,我们的头文件会引导出一个文件,包含在了我们的程序文件中,就是左侧002.c下方的reg52.h。这个先按下不谈。

自学单片机第十二篇上:首次测试设备——软件

查看输出提示,我们发现,并没有提示导出了可执行文件。主要是我们没有设置。要输出文件,还需要设置一下。之前的文章中已经有提到过。

自学单片机第十二篇上:首次测试设备——软件

单击下图中的设置按钮,进入设置界面。

自学单片机第十二篇上:首次测试设备——软件

在设置中的第三项output中,将输出HEX文件前选中,打勾。然后点击确定。

自学单片机第十二篇上:首次测试设备——软件

接着再次编译一次,此时,在0-错误,0-警告的上方,多了一句话,生成了HEX文件,存储在了”.objects 02″这个地址中。我们从这个地址就可以找到所需的可执行文件。这个文档,位置在你存储002.C文件的文件夹中。

自学单片机第十二篇上:首次测试设备——软件

就是下图中间的文件。

自学单片机第十二篇上:首次测试设备——软件

至此,软件调试结束,如果你成功生成了”*****.hex”文件,那么离成功就只有一步之遥了。由于篇幅限制,先分享这么多,硬件的调试,下篇文章会进行详细解释。

对于已经深谙单片机之道的大佬,这些就是连门都没入的基本功,好比进入古代宗门中,的外门弟子修习的法术,而且还是最初级的那种,所以这个适合新手看,若是已经入门或造诣颇深,可以为文章提出更合理的讲解方法,留言回复,让更多小白,轻松入门。授人一计,若得大道。

如果是第一次使用软件,总会有些问题,欢迎不懂的小伙伴私信或留言。

更多多内容,欢迎关注百家号:小亮谈电气。微信公众号:电气学苑。

来源:小亮谈电气

声明:本站部分文章及图片转载于互联网,内容版权归原作者所有,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2020年7月3日
下一篇 2020年7月3日

相关推荐