搜索
bottom↓
回复: 196

WinAVR新手必读(请在看其它任何关于WinAVR使用方面书籍/资料之前阅读)

[复制链接]

出0入0汤圆

发表于 2007-10-26 17:54:33 | 显示全部楼层 |阅读模式
1. 获得必须的软件
请从Atmel官方获得最新版本的AVR Studio(此帖发表时所能获得的为4.13及其Service Pack 1)
http://www.atmel.com/dyn/products/tools_card.asp?tool_id=2725

请从WinAVR官方获得最新版本的WinAVR(此帖发表时所能获得的为WinAVR-20070525)
http://sourceforge.net/project/showfiles.php?group_id=68108
也可以在http://sourceforge.net主页上搜索WinAVR

注意:WinAVR和AVR Studio是2个不同的软件,前者是开源项目,不属于Atmel所有,后者是Atmel版权所有的。

2. 安装步骤
  1)安装WinAVR
  2)安装AVR Studio
  3)安装AVR Studio的Service Pack(如果有的话)

3. 新建测试工程
  1)启动AVR Studio
  2)选择"New Project"
  3)"Project type"里选择"AVR GCC",单击"Location"旁的按钮,选择工程保存位置(这里假设为C:\),避免路径中有中文,
    在"Project name:"里填入工程名test01,把"Create initial file"的钩去除,把"Create folder"钩上,
    单击"Next>>"
  4)"Debug platform:"里选择"AVR Simulator","Device:"里选择"Atmega128",单击"Finish"
  5)菜单File->New File,建立空白文档,复制以下代码到该文档中(注意:最后一个“}”下面还有一个空行):

#include "avr/io.h"

int main(void)
{
        while(1);
}

  6)菜单File->Save,在“另存为”对话框里选择工程保存的路径下工程名命名的文件夹下(这里假设为C:\test01\),
    你会看到已经有一个test01.aps文件存在了,那是AVR Studio的工程文件。“文件名”里填入“main.c”,保存。
  7)在"AVR GCC"工程管理窗格内的"Source Files"上单击右键,右键菜单里选择"Add Existing Source File(s)...",
    在"Add Source File"里选择刚刚建立的main.c文件。会看到工程管理窗格内的"Source Files"下多了个main.c文件。
  8)菜单Project->Configuration Oprions,在"General"下(默认就是),确认"Use External MakeFile"没有钩上,
    "Frequency:"填入频率“8000000”,"Optimiztion"选择"-00",确认"Create Hex File"已经钩上,
    然后单击确定(请勿修改其它设置)
  9)菜单Build->ReBuild All,编译工程。如果操作正确,应该没有警告和错误。
10)菜单Debug->Start Debugging,顺利的话,软件仿真已经启动。
11)至此,测试工程已成功。可以在工程保存目录下看到一个default文件夹,打开后有test01.elf(AVR Studio的支持的仿真调试文件格式之一),
    test01.hex(烧写时要用的文件)

4. 给新手的建议:

  如果书中/资料中以命令行方式编译文件,请跳过这些例子中的命令行操作,改为用AVR Studio新建工程来编译。
  如果有Makefile方面的讲解,也请跳过。因为这些讲解可能太过于简略,而难以理解。

  1)不要去用WinAVR带的mfile所产生的Makefile文件,只使用AVR Studio菜单Project->Configuration Oprions来配置工程,
    (不要钩上"Use External MakeFile")
  2)工程保存路径中不要有中文名,即只在英文名文件夹下(包括其上各级文件夹也是英文)
  3)始终使用Build->ReBuild All,编译工程
  4)新建工程时,工程名不要用Makefile(不论何种大小写组合)
  5)新建工程时,不要钩上"Create initial file"
  6)不要修改"Output File"里的文件名
  7)现在,中断程序是以ISR(...)方式声明的,书和资料可能落后于WinAVR的更改,
    请随时通过开始菜单里WinAVR下的avr-libc Manual [WinAVR]查看目前WinAVR的各种函数和头文件说明

5. 进一步学习:
  当你比较熟悉用AVR Studio完成你的工程编译过程后,可以考虑学习Makefile:
  《一步一步学写makefile》http://blog.csdn.net/Jiangfriend/archive/2007/06/27/1669206.aspx
  《Makefile学习教程: 跟我一起写 Makefile》http://www.stlchina.org/twiki/bin/view.pl/ScriptProgram/LearnMakefile

还有什么要提醒新手的,请论坛上的高手们帮忙补上吧:)

阿莫论坛20周年了!感谢大家的支持与爱护!!

月入3000的是反美的。收入3万是亲美的。收入30万是移民美国的。收入300万是取得绿卡后回国,教唆那些3000来反美的!
头像被屏蔽

出0入0汤圆

发表于 2007-10-26 18:23:13 | 显示全部楼层
谢谢啊。是原创的吗? 呵呵,注明一下最好。

出0入50汤圆

发表于 2007-10-26 20:44:17 | 显示全部楼层
这么好的文章没人顶?

出0入0汤圆

发表于 2007-10-26 20:48:45 | 显示全部楼层
我顶!!!!

出0入0汤圆

发表于 2007-10-26 20:51:18 | 显示全部楼层
晚了,我已经看过别的了。。。

出0入0汤圆

发表于 2007-10-27 17:16:00 | 显示全部楼层
很好啊,我正郁闷着呢,试试看

出0入0汤圆

发表于 2007-10-27 17:48:24 | 显示全部楼层

出0入0汤圆

发表于 2007-10-27 22:11:13 | 显示全部楼层
有用收下了

出0入0汤圆

发表于 2007-10-27 22:14:34 | 显示全部楼层
呵呵,阿莫的
AVR 开发软件大全  现在不全了啦,好久没有更新了.......

出0入0汤圆

发表于 2007-10-27 22:38:04 | 显示全部楼层
好东西,应该顶

出0入0汤圆

发表于 2007-11-4 16:02:17 | 显示全部楼层
不错!

出0入0汤圆

发表于 2007-11-18 21:18:23 | 显示全部楼层
谢谢。这才是给新手最好的礼物。。。在我看来比任何资料都重要。关于硬件平台的搭建是不是也能有这么一份高手不屑为之的入门提示呢?期待。建议将这帖和关于工具选择等基础性的东西放到新手区最显目的位置。

出0入0汤圆

发表于 2007-11-18 22:07:29 | 显示全部楼层
好帖,一直在用20050214版,
就是因为没有找到这样的好文章.

出0入0汤圆

发表于 2007-12-11 18:49:02 | 显示全部楼层
总结的很好,我是撞破了好多次头,才知道这些的,不过这个条能不能说下原因.
"5)新建工程时,不要钩上"Create initial file" "
我一直在这里填上main.c不知有问题不?

出0入0汤圆

 楼主| 发表于 2007-12-12 10:33:28 | 显示全部楼层
再补上2条:

8)GCC是区分文件名大小写的,.c是C文件,但是.C是C++文件
9)当使用优化后出现程序不按预期的方式运行时,先使用-00级(即不优化)编译并测试,如果未优化时正常,那么是你的代码需要考虑像volatile之类的优化限制问题,可以搜索论坛或发帖求助,并贴出测试用代码(而不是只描述问题)。

关于建议 2),中文路径的问题可以参考我在这贴里的回复,不过涉及到自己修改Makefile,新手慎用。
http://www.ouravr.com/bbs/bbs_content.jsp?bbs_sn=849048

回【13楼】 gogosee,没什么问题的,其实这条不是很重要,只是因为AVR Studio默认是用工程名来命名初始c文件的,而非main.c。只要知道怎么修改就行了。
我这个帖子只是针对刚开始学的新手的,有些建议只是为了避免新手因不会修改配置而产生的不必要的错误,给出的是比较保守的操作流程。

出0入0汤圆

发表于 2007-12-12 10:48:25 | 显示全部楼层
谢了,再次学习。

出0入0汤圆

发表于 2007-12-12 12:49:59 | 显示全部楼层
值得新手借鉴
我也是新手,前些日子也是用ZL的方法,成功地将WINAVR提供的例子demo编译并debug

出0入0汤圆

发表于 2007-12-12 13:34:30 | 显示全部楼层
非常感谢!!

出0入0汤圆

发表于 2007-12-12 17:35:02 | 显示全部楼层

出0入0汤圆

发表于 2007-12-12 19:09:27 | 显示全部楼层
好东西,顶;。。。

出0入0汤圆

发表于 2007-12-13 12:37:53 | 显示全部楼层
hen  bu cuo   3q

出0入0汤圆

发表于 2007-12-13 13:37:34 | 显示全部楼层
ding!

出0入0汤圆

发表于 2007-12-13 19:04:08 | 显示全部楼层
谢谢【14楼】 yyccaa ,了解了,确实,刚学的时候,一下接触很多新的东西,不知道那些重要那些次要。而且这个东西没有一个很系统的说明(我是说中文教材),都是零零散散的,东凑凑西瞄瞄,很浪费时间。有能力的应该看英文文档,软件自带的文档都很详细,可惜咋英文不怎样,勉强看得懂,有时还误解,真的很痛苦。

出0入0汤圆

发表于 2007-12-13 19:18:41 | 显示全部楼层
好东西.

出0入0汤圆

发表于 2007-12-15 09:52:36 | 显示全部楼层
好东西,要顶啊

出0入0汤圆

发表于 2007-12-15 11:14:04 | 显示全部楼层
正想開始來學AVRGCC,真是及時雨.頂就一個字

出0入0汤圆

发表于 2007-12-24 11:04:22 | 显示全部楼层
很好啊。
very good

出0入0汤圆

发表于 2008-1-15 22:23:34 | 显示全部楼层
这贴实在啊,贴近新手.顶一下

出0入0汤圆

发表于 2008-1-16 16:25:15 | 显示全部楼层

出0入0汤圆

发表于 2008-2-28 21:10:39 | 显示全部楼层
好帖,看了帖子今天 装上了 WINAVR20071221 和AVRStudio4.13SP2

出0入0汤圆

发表于 2008-2-29 08:22:39 | 显示全部楼层
好东西要收藏

出0入0汤圆

发表于 2008-2-29 13:37:39 | 显示全部楼层
太好的东西了

出0入0汤圆

发表于 2008-3-7 14:19:39 | 显示全部楼层
很不错的东西

出0入0汤圆

发表于 2008-3-7 14:29:54 | 显示全部楼层
鼓掌

出0入0汤圆

发表于 2008-3-7 15:27:56 | 显示全部楼层
THANKS VERY MUCH :-)

出0入0汤圆

发表于 2008-3-8 18:36:04 | 显示全部楼层
发现了。我的研究能力还是很强的。呵呵

出0入0汤圆

发表于 2008-3-14 09:28:39 | 显示全部楼层
做个记号 ,以后来方便

出0入0汤圆

发表于 2008-3-14 11:22:11 | 显示全部楼层
虽然已经不是新手了,但是强烈要求顶置!!!

出0入0汤圆

发表于 2008-3-26 23:44:28 | 显示全部楼层
按你们的步奏,出现以下问题:Build started 26.3.2008 at 23:41:33
make: Makefile: No such file or directory
make: *** No rule to make target `Makefile'.  Stop.
Build failed with 2 errors and 0 warnings...
如何解决!谢谢

出0入0汤圆

 楼主| 发表于 2008-3-27 10:25:44 | 显示全部楼层
39楼那是中文路径问题,请注意3 - 3)那步的说明,和14楼里的补充。

出0入46汤圆

发表于 2008-3-27 15:40:52 | 显示全部楼层
顶!

出0入0汤圆

发表于 2008-3-27 21:25:47 | 显示全部楼层
谢谢,顶

出0入10汤圆

发表于 2008-3-27 22:30:37 | 显示全部楼层
一直在用ICC,踩个脚印,肯定会用到

出0入0汤圆

发表于 2008-3-28 07:51:22 | 显示全部楼层
好极了,非常有用的文章,谢谢了!

出0入0汤圆

发表于 2008-4-25 08:13:25 | 显示全部楼层
2. 安装步骤
  1)安装WinAVR
  2)安装AVR Studio


先要装 WINAVR 再装AVR STUDIO

出0入0汤圆

发表于 2008-6-21 15:55:52 | 显示全部楼层
天大的恩人啊,我搞了三个星期,始终没有编译过去,天都快塌了,看了这个贴,现在一下搞定,哎,天气原来如此之好

出0入0汤圆

发表于 2008-7-1 19:01:47 | 显示全部楼层
响应啊莫的号召  尽量不用盗版的 正想从ICC转过来
收藏一下

出0入0汤圆

发表于 2008-8-13 19:31:46 | 显示全部楼层
太好了,彷徨了好久。终于看到我想要的东西了。太谢谢楼主了。。。。

出0入0汤圆

发表于 2008-8-13 22:43:26 | 显示全部楼层
好东西,有空总结总结。整理整理。

出0入0汤圆

发表于 2008-8-14 09:54:50 | 显示全部楼层
谢谢楼主,按照步骤编译成功!

出0入0汤圆

发表于 2008-8-14 11:05:40 | 显示全部楼层
按照LZ编译成功 但是运行时出现问题:
   
(原文件名:33.jpg)

然后 点击【确定】按钮,AVR Studio 就自动关闭了

出0入0汤圆

发表于 2008-8-15 08:12:57 | 显示全部楼层
marking.

出0入0汤圆

发表于 2008-9-27 16:04:55 | 显示全部楼层
不错!!有空看看!!谢谢!!

出0入0汤圆

发表于 2008-9-27 16:44:44 | 显示全部楼层
支持一下!!!

出0入0汤圆

发表于 2008-9-27 17:51:48 | 显示全部楼层
是不是,使用GCC都是用AVR Studio来调试呢?

出0入0汤圆

发表于 2008-9-27 21:07:19 | 显示全部楼层
刚刚决定用WinAVR,一切从头学起.

出0入0汤圆

 楼主| 发表于 2008-9-27 22:25:20 | 显示全部楼层
【51楼】 knight_avr莫非是装的某个ghost版本的xp?这类精简过的版本,经常会引起软件兼容性问题(而完整的原版安装的xp兼容性是最好的)。再或者是病毒问题或安装不正常造成的。
【55楼】 cauchy911,也可以用winavr集成的avr insight、gdb和avarice来调试,但这种组合用法太不方便了,而atmel既然提供了免费的调试软件,就不必考虑前者了。

出0入0汤圆

发表于 2008-9-29 11:36:56 | 显示全部楼层
好东西!看了也试了

出0入0汤圆

发表于 2008-9-29 15:10:29 | 显示全部楼层
看。。

出0入0汤圆

发表于 2008-11-4 11:13:51 | 显示全部楼层
在工程保存目录下看到一个default文件夹,打开后没有test01.elf(AVR Studio的支持的仿真调试文件格式之一), 
    test01.hex(烧写时要用的文件) ,只有dep文件夹和makefile 文件,不知道怎么回事啊,我都是按上面所说设置的啊

出0入0汤圆

发表于 2008-12-18 09:34:01 | 显示全部楼层
好,想从IAR转到gcc!

出0入0汤圆

发表于 2008-12-20 22:50:23 | 显示全部楼层
谢谢楼主,收藏了。

出0入0汤圆

发表于 2008-12-20 23:39:17 | 显示全部楼层
总结得太好了,顶!

出0入46汤圆

发表于 2008-12-21 17:11:01 | 显示全部楼层
我再顶!

出0入0汤圆

发表于 2008-12-26 11:06:57 | 显示全部楼层
大家有没有在AVR Studio + winavr这样的环境下移植过uCGUI这样比较大的工程?
我在此环境下加入GUI的文件(文件太多了),会出现加入越来越慢,导致最后
内存吃紧的情况。不知道是不是AVR Studio把每个加入的源文件文件都调入了内存?
大家遇到过这样的问题没?怎样解决的?
请教了。

出0入0汤圆

发表于 2008-12-26 20:00:11 | 显示全部楼层
mark

出0入0汤圆

发表于 2008-12-28 13:37:24 | 显示全部楼层
不错的方法 ,好用!tks

出0入0汤圆

发表于 2008-12-30 16:11:53 | 显示全部楼层
显示这个错误是怎么回事???
 (原文件名:New Bitmap Image.JPG) 

出0入0汤圆

发表于 2009-1-2 12:38:45 | 显示全部楼层
楼上的问题我也出现过,应该是格式不对

你是不是直接复制以前GCC的源程序过去的啊! 

有的如:PINA --= TEMP; //--这里的两个“--”空格在GCC里面才会有
用studio+gcc时有“--”是不行的

出0入0汤圆

发表于 2009-1-3 11:31:03 | 显示全部楼层
mark

出0入0汤圆

发表于 2009-2-25 14:42:17 | 显示全部楼层
顶了!!!!!

出0入0汤圆

发表于 2009-2-25 17:26:21 | 显示全部楼层
呵呵,才刚刚开始,正好用得着哈,楼主辛苦了

出0入0汤圆

发表于 2009-2-25 19:48:41 | 显示全部楼层
真是好东东,原本有许多功能想自己写,现在有功能包了,谢谢楼主!

出0入0汤圆

发表于 2009-2-25 20:33:13 | 显示全部楼层
mark

出0入0汤圆

发表于 2009-3-10 13:29:36 | 显示全部楼层
MARK!

出0入0汤圆

发表于 2009-3-10 22:16:01 | 显示全部楼层
MARK!

出0入0汤圆

发表于 2009-3-10 22:16:07 | 显示全部楼层
MARK!

出0入0汤圆

发表于 2009-3-11 17:34:34 | 显示全部楼层
MARK

出0入0汤圆

发表于 2009-3-11 19:00:37 | 显示全部楼层
MARK!

出0入0汤圆

发表于 2009-3-11 20:39:53 | 显示全部楼层
学习了

出0入0汤圆

发表于 2009-3-28 21:35:17 | 显示全部楼层
MARK!

出0入0汤圆

发表于 2009-3-29 09:20:08 | 显示全部楼层
一直在用,还是顶一下,GCC真的很好
特别从老外的网站下载回来的工程,看见aps文件时,特别亲切(都是AVRStduio + GCC)
打开,编译,全部通过。

出0入0汤圆

发表于 2009-3-31 22:22:28 | 显示全部楼层
mark!

出0入0汤圆

发表于 2009-4-1 02:13:27 | 显示全部楼层
MARK!

出0入0汤圆

发表于 2009-4-1 08:37:42 | 显示全部楼层
如果觉得winavr+avr stdio麻烦,可以试一下winavr+codeblocks,超好用

出0入0汤圆

发表于 2009-4-13 19:50:18 | 显示全部楼层
MARK

出0入0汤圆

发表于 2009-4-14 15:23:35 | 显示全部楼层
ding!

出0入0汤圆

发表于 2009-5-2 15:15:31 | 显示全部楼层
MARK

出0入0汤圆

发表于 2009-5-2 20:36:41 | 显示全部楼层
学习了。

出0入0汤圆

发表于 2009-5-3 01:07:04 | 显示全部楼层
谢谢。这才是真正入门级教程!

出0入0汤圆

发表于 2009-5-3 11:48:27 | 显示全部楼层
好东西   3ks

出0入0汤圆

发表于 2009-5-5 09:07:25 | 显示全部楼层
谢谢楼主的耐心编写...

为他人服务的精神夸一个

出0入0汤圆

发表于 2009-5-5 10:05:05 | 显示全部楼层
学到了不少

出0入0汤圆

发表于 2009-5-6 22:38:24 | 显示全部楼层
记下 了!!!!!!!!!!!!!!!

出0入0汤圆

发表于 2009-5-15 09:45:58 | 显示全部楼层
编译后出现
/usr/bin/sh: /dev/null: No such file or directory
../../±ÏÒµÉè¼Æ/bootldr/bootldr.c:564: fatal error: opening dependency file dep/bootldr.o.d: No such file or directory
compilation terminated.
make: *** [bootldr.o] Error 1
Build failed with 2 errors and 0 warnings...
请问是怎么回事?急急,谢谢

出0入0汤圆

发表于 2009-5-15 10:19:08 | 显示全部楼层
mark

出0入0汤圆

发表于 2009-5-15 11:40:50 | 显示全部楼层
新手进来。MARK一下

出0入0汤圆

发表于 2009-6-23 15:50:17 | 显示全部楼层
希望能继续讲解一些,我刚刚学,什么都不懂~正不知道从何处下手,能不能指教下啊?

出0入0汤圆

发表于 2009-6-23 17:07:16 | 显示全部楼层
刚试过,不错,谢谢了

出0入0汤圆

发表于 2009-6-23 19:30:03 | 显示全部楼层
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-4-27 22:33

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表