×
单片机 > 单片机程序设计 > 详情

事无巨细,GCC AVR入门详解

发布时间:2020-08-26 发布时间:
|

简介:乘着Cepark电子园正在搞AVR单片机开发板优惠活动,花160块钱买了他们提供的散件。近日终于收到了,虽然是散件,自己焊的也很难看,但好歹能用,足够我折腾好些日子了。希望接下去的短短日子里,能小有收获,即便是最简单的东西也希望跟大家分享。


这是第一篇,我说说AVR的集成开发环境。也就是常说的IDE(Integrated Development Environment)。图片比较多,虽然用软件处理过体积,网页可能还是比较慢,还请见谅。

现今世界上的AVR开发环境可以说是百花齐放了,互相当然各有长短,我们看看都有哪些:

首当其冲的应该还是IAR,为什么呢,因为当初AVR还在ATMEL胎中酝酿的时候,IAR公司参与了AVR的设计,因此可以认为IAR有更为正统的血液,它最了解AVR,它的编译器编出来的代码应该最优秀。好比你生的孩子还是你最了解——至少相当长一段时间是这样的。事实上,IAR for AVR确实展现了这个实力,它的功能确实最为强大,无论是源代码编写还是软件乃至硬件仿真,编译出来的代码也十分优秀。但是事物总是相对存在的,优点有时就意味着缺点。IAR功能全面而强悍,代价就是它的软件界面比较复杂,设置选项多,网上的资料也比较少,最要命的是这个软件非常的贵,好吧你说你有破解版,但是破解文件一般并不通用,而且破解方法一般都稍显繁琐。以上几条,对于新接触AVR的人来说,几乎是迈不过的坎。


接下来是官方的AVR studio,官方出品,但是一般没有人用这个软件来做开发环境,为什么呢,因为它本身不支持C语言,一般我们只用它的仿真功能搭配其他C编译器来用。


第三个,WINAVR,又称GCC AVR。GCC AVR应该是目前使用率最高的AVR开发环境了,软件体积小,界面简单易用,教程资料很多,代码效率高,最重要的是,它是完全免费的。但是它几乎没有仿真调试的功能。所以我首要推荐GCC AVR+AVR studio搭建你的AVR IDE。


第四个,ICC AVR,大部分AVR教材所用的示例软件,也是十分简单易用,适合新手初学,在此也推荐选用,但是它的功能一般,bug比较多,比较高级的要求它应付起来就有些吃力了。


此外还有CODEVISION,最大的优点就是它的界面很像keil,这会吸引到众多从51转到AVR的人,不过它有2K代码限制,破解方法又不多。略过不表。


归根结底,编译器始终不见得是最重要的,最重要的是使用编译器的人罢。只要适合你,你能用之写出优秀的程序,就是最好的。


我选择了GCC AVR。现在我来讲讲GCC AVR的一个最简单的开发流程。首先要从网上下载WINAVR这个软件,因为是免费软件,应该很容易找到。之后一路NEXT,直到安装完毕。

下图显示了一个完整的GCC工程的界面


可以看出来,GCC AVR有个标准的windows软件界面,有常见的菜单栏工具栏等等,选项也并不多,整个软件界面内容也不多,应该说是很亲切的界面。


下面我们来看怎样用GCC AVR进行开发。


第一步,首先找到开始系统菜单里的WINAVR程序文件夹,双击打开Programmers Notepad,启动GCC AVR,然后点击菜单栏里的File—New Project(s),弹出以下对话框:


将工程名和保存位置填好之后,确定,至此新建一个GCC AVR的工程完毕,可见如下界面:


第二步,添加.C文件,点击工具栏里的“新建”按钮,出现一个名字为NEW*的文本文件,而此时注意工具栏里的“保存”按钮是灰色的无法点击,所以要在这个文本里随意输入任意字符,这时可以将这个文本保存了。将文本在工程文件夹里保存为.c文件,这个就是我们将要用来编辑源代码的程序文件。第二步完成后有下图界面(非全图):


第三步,将建好的C文件添加进GCC工程里。具体操作如下:右键工程文件(注意是工程文件而不是工程文件组),选择Add Files,选择刚才新建好的C文件,确定即可实现添加,添加完毕后可以输入源程序,也可以稍后几步再输。如下三图指示,第三图为添加完毕之后所见界面:


第四步,添加Makefile文件。

PS:如果说GCC AVR有什么缺点的话,要用户自己配置Makefile文件应该算其中一大缺点。Makefile是配置GCC AVR的编译信息的文件,GCC就是根据这个文件的信息来编译的,里面包含了MCU信号,频率,输出信息及优化选项等信息,Makefile每个GCC工程是必须要有的。不过配置Makefile其实也非常简单。


首先找到WINAVR程序文件组里的MFile,就是一盏黄色茶壶的的图标,打开之后见如下界面:


接着点击File——Save as,将此文件另存到你的工程文件夹里。然后类似于添加C文件的操作,把Makefile添加至工程中。完成后有下图界面,注意看左边工程文件区:


第五步,配置Makefile文件。双击打开Makefile,找到如下地方:


其中MCU=“你的主控芯片型号”,F_CPU="当前主控芯片的工作频率",FORMAT=iHEX表示会输出HEX结尾的文件,可以供我们烧写,最后一个要注意(红色框),TARGET="你的C文件名,但是不要填写后缀名",如上图图所示。如实更改完以上四项信息之后(一般只需要改第一和第四项),保存Makefile文件。


第六步,接下来在你添加的C文件有了源代码之后,保存C文件。然后如下图所指,依次点击Tool——[WinAVR]Make All,这时GCC AVR就开始编辑源文件了。


编译很快完成,GCC AVR的编译速度还是过得硬的。软件会有编译结果框,里面会包含有一系列的信息,包括错误和警告信息,我们会经常根据这些信息进行程序的修改。编译结果的最后两行是此次编译的错误个数和编译时间的统计,如果Process Exit Code后面的数字为0,则表示被编译的源代码基本上不会出现什么大问题,可以保证没有大的语法错误(但是不表示你的程序功能是正常的,质量是完美的)。


最后,你会发现工程程序文件夹多了许多文件,值得一提的是,后缀名为elf的文件是仿真文件,可以在AVR studio里进行仿真:


至此,一个简单完整的GCC AVR工程开发流程到这里就告完结,一切复杂的过程都是这样开始的。


希望能给需要的人一些帮助。

关键字:GCC  AVR  入门详解

『本文转载自网络,版权归原作者所有,如有侵权请联系删除』

热门文章 更多
AVR熔丝位操作时的要点和需要注意的相关事项