搜索
bottom↓
回复: 34

Linux(ubuntu)下开发 AVR,Linux,AVR一起玩

[复制链接]

出0入0汤圆

发表于 2013-5-16 15:56:12 | 显示全部楼层 |阅读模式
本帖最后由 草根工作室 于 2013-5-16 16:19 编辑

由于工作的原因,一直在Linux下开发工作,后来发现,原来Linux下也支持AVR的开发,幸亏有avr-gcc,avr相关的lib库以及avr download工具avrdude。有了这三个支持,Linux下开发AVR有望了!
花了N多的时间,画了一块AVR板子,上面有G-sensor,M-sensor,还有一个nokia 5110的屏,之所以选择这两个传感器,那也是因为跟工作有关。因为Android手机上就有G-sensor,M-sensor,而且
有了这两个sensor,还能用这两个sensor搞出一个Orientation sensor,指南针也就搞好了,这个指南针可不是必须水平放置的,随你怎么放都行。废话说了这么多,容我说完最后一句废话,所有的
代码我准备用谷歌的git来维护,目前服务器正在架设中,估计再有一个星期搞定,目前我的code暂时放在了github网站上,有用linux的在装好git后,可以直接用命令
git clone https://github.com/njitdkj082yy/atmega128.git下载code,当然也可以直接点击这个url,也可以看里面代码历史(当然里面代码只实现简单功能)
第一篇 linux下avr开发环境的安装

我的电脑环境:ubuntu12.04(当然在虚拟机上也可以,我试过)
AVR开发在ubuntu下所需的环境如下(在其它linux distributions类似):
1:avr编译器(cross compiler for avr):gcc-avr
2:avr相关的lib库:avr-libc
3:avr烧录工具:avrdude
下面简单讲讲安装的步骤,分两种方式安装。
方式一:
步骤如下:
1:打开ubuntu软件中心,输入gcc-avr,进行搜索,如下图所示:

2:点击更多信息,发现底下有附加组件,全部勾选。

注:附加组件中,avr-libc是avr所需的库,avr-doc是avr-gcc以及avr-libc的一些说明,都装上。
3:点击安装,输入root密码后,就开始安装了,默认安装的位置是:usr/bin目录下,可以进行检验:
                打开终端(ctrl+alt+t),步骤如下图所示:

从上图可以看出,avr开发相关的工具就这么多了。不过其中圈圈勾的avrdude是烧录hex文件的工具,需要单独安装,读者参考gcc-arv的安装方式即可完成。


方式二:
安装之前,作者先卸载上面已安装的,贴图如下:

步骤如下:
1:$sudo apt-get install gcc-avr

输入密码后,就开始安装了,在安装的过程中,它会提示建议安装avr-libc。
        现在再检查一下 usr/bin/目录下:

2:$sudo apt-get install avr-libc
3:$sudo apt-get install avrdude
4:$sudo apt-get install avrdude-doc
安装好了之后,再检查一下,发现跟方法一的效果是一样的:


这份文档只是开始,毕竟牵涉的东西太多,一句两句说不完。后续会接着上传文档,因为我发现群里用Linux开发AVR的不多,用git来进行代码维护的就更少(相信只有了解git,你才知道原来大家一块来写code,一块合作是如此的简单,安全),当然就更不用说自己再搭服务器,让大伙一块来开发了。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

出0入0汤圆

发表于 2013-5-17 13:15:26 | 显示全部楼层
感谢楼主,一直以来也在寻求在linux玩avr的方法,一直由于缺乏各种资料而没有实现,感谢楼主的教程,以后定会向lz请教。

出0入0汤圆

发表于 2013-5-18 00:33:22 | 显示全部楼层
这个帖子必须mark~持续follow!

出0入0汤圆

发表于 2013-5-18 01:54:42 | 显示全部楼层
Hg比Git好用.
https://bitbucket.org/下可以免费创建五个项目.
LZ还应该装个simulavr用来仿真的.
其实可以用能Eclipse做IDE的

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

出0入0汤圆

 楼主| 发表于 2013-5-18 23:46:24 | 显示全部楼层
笑笑我笑了 发表于 2013-5-18 01:54
Hg比Git好用.
https://bitbucket.org/下可以免费创建五个项目.
LZ还应该装个simulavr用来仿真的.

不过我没有用过hg,只是在一本书上听作者说一个人使用Hg和MQ很好,但很多人使用时则会出现难以协同的问题。我只对git有所了解了啊,毕竟用了一年了,我自己创建好服务器后,随便创建几个project应该都没问题的,有机会我也看看hg。

出0入0汤圆

 楼主| 发表于 2013-5-18 23:48:14 | 显示全部楼层
草根工作室 发表于 2013-5-18 23:46
不过我没有用过hg,只是在一本书上听作者说一个人使用Hg和MQ很好,但很多人使用时则会出现难以协同的问题 ...

我现在的服务器是gerrit代码审核服务器,这样我可以主观去判断是否merge code,hg我就不是很明白啦,不熟耶。

出0入0汤圆

发表于 2013-5-19 00:51:32 | 显示全部楼层
ubuntu是必须要支持的,国家不是在搞什么麒麟ubuntu么?据说未来要怎么地怎么地、、、

出0入0汤圆

发表于 2013-5-20 19:48:16 | 显示全部楼层
必须顶起来,这个玩好了,以后可以团队搞大型项目。

出0入0汤圆

发表于 2013-5-20 21:20:33 | 显示全部楼层
哈哈 这个世界越来越疯狂了!!

出0入0汤圆

发表于 2013-5-20 21:29:40 | 显示全部楼层
准备用HG

出0入4汤圆

发表于 2013-5-20 21:46:12 | 显示全部楼层
很好!mark!

出0入0汤圆

 楼主| 发表于 2013-5-21 09:42:01 | 显示全部楼层
本帖最后由 草根工作室 于 2013-5-21 09:43 编辑

服务器已经基本搭建成功,还剩下最后一点的repo,不过目前大伙应该可以访问了,我的域名为njitdkj082yy.eicp.net,花生壳的,试了几天,有掉线的机会,所以,还在想办法。可以先点下试试:njitdkj082yy.eicp.net:1234/gitweb

底下把repo搞好,我再接着往下写,大伙可以多讨论,我也是第一次尝试,别把我服务器搞废了就行,呵呵,继续mark哦!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

出0入0汤圆

发表于 2013-5-21 11:25:39 | 显示全部楼层
向楼主学习,安装个试试看

出0入4汤圆

发表于 2013-5-21 11:33:10 | 显示全部楼层
我用楼主的Makefile编译结果有6千3百多个字节,用我的Makefile编译只有3千4百多个字节,相差将近一倍,优化都是s(标准)级。

出0入0汤圆

 楼主| 发表于 2013-5-21 12:17:36 | 显示全部楼层
sunliezhi 发表于 2013-5-21 11:33
我用楼主的Makefile编译结果有6千3百多个字节,用我的Makefile编译只有3千4百多个字节,相差将近一倍,优化 ...

这个要学习下了啊,能share不?这几个星期我都搞服务器去了,代码都是几个月前的了,要不等我服务器彻底搞定,您push一版上去,大家可以学习比较下!这也是我搭服务器的初衷呢!

出0入0汤圆

发表于 2013-5-21 12:33:49 来自手机 | 显示全部楼层
codeblock也可以做IDE不错,

出0入4汤圆

发表于 2013-5-21 12:46:27 | 显示全部楼层
我就将它们放在这里吧,其他的我不会搞
编译后会在当前目录下建立3个文件夹分别用以存放目标文件和可执行文件。
你的代码我稍作修改了:
将各文件中的“F_CPU=...”放到Makefile中;
在不带参数的函数的()中加上void,相应的xxx.h文件中也得改;
void Prints(uint8_t *str)中的uint8_t改成char.

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

出0入0汤圆

发表于 2013-5-21 13:06:50 来自手机 | 显示全部楼层
不错,这个可以试试,gcc-avr还是比较给力的

出0入0汤圆

 楼主| 发表于 2013-5-21 14:31:46 | 显示全部楼层
sunliezhi 发表于 2013-5-21 12:46
我就将它们放在这里吧,其他的我不会搞
编译后会在当前目录下建立3个文件夹分别用以存放目标文件和 ...

Mark!哥们说实话,我只粗略的看了一下,就感觉很专业,晚上我用你的Makefile好好调试一下,thanks 了!

出0入4汤圆

发表于 2013-5-21 14:48:44 | 显示全部楼层
不要客气啊,共同学习开源,使用GNU系!

出0入0汤圆

发表于 2013-5-24 14:50:41 | 显示全部楼层
IAR,ICC环境的。先MARK。

出0入0汤圆

 楼主| 发表于 2013-5-24 14:52:09 | 显示全部楼层
第二篇地址:http://www.amobbs.com/forum.php? ... p;page=1#pid6703617

出0入0汤圆

发表于 2013-5-24 15:30:07 | 显示全部楼层
我有服务器,已搭建git服务,需要创建git repository的可以跟我说,免费的,呵呵,我自己也用那存代码。

我之前也在博客上记录了linux下搭建avr的开发环境的文章 chou.it/2013/03/set-up-avr-on-linux/

出0入0汤圆

 楼主| 发表于 2013-5-24 15:49:32 | 显示全部楼层
lexchou 发表于 2013-5-24 15:30
我有服务器,已搭建git服务,需要创建git repository的可以跟我说,免费的,呵呵,我自己也用那存代码。

...

哥们是纯粹的搭建gitosis服务器之类的还是搭建了gerrit审核服务器之类的呢?对您的做法很好奇,有机会可以讨论下,共同进步!

出0入0汤圆

发表于 2013-5-24 16:37:48 | 显示全部楼层
草根工作室 发表于 2013-5-24 15:49
哥们是纯粹的搭建gitosis服务器之类的还是搭建了gerrit审核服务器之类的呢?对您的做法很好奇,有机会可 ...

我之前搭建的是gitosis,另外还弄了个phabricator和git集成,不过没怎么用。

出0入0汤圆

发表于 2013-10-7 12:53:37 | 显示全部楼层
楼主,ubuntu下尝试过画pcb吗,用什么软件。

出0入0汤圆

发表于 2014-3-28 09:30:03 | 显示全部楼层
mark,,不错,,,

出0入0汤圆

发表于 2014-4-23 15:30:52 | 显示全部楼层
现在的avr-gcc 是4.5.3的 怎么升级到4.7.0以上啊

出0入0汤圆

发表于 2014-4-24 20:25:56 | 显示全部楼层
向楼主学习,安装个试试看..

出0入0汤圆

发表于 2014-4-24 20:45:50 | 显示全部楼层
lee_avr 发表于 2014-4-23 15:30
现在的avr-gcc 是4.5.3的 怎么升级到4.7.0以上啊

用包管理器装,直接是最新版本。

出0入0汤圆

发表于 2014-4-25 08:35:38 | 显示全部楼层
笑笑我笑了 发表于 2014-4-24 20:45
用包管理器装,直接是最新版本。

已经装了Ubuntu 14.04 装的avrgcc是4.8.1的

出0入0汤圆

发表于 2014-4-25 09:00:25 | 显示全部楼层
要多学习Linux下开发,顶一下

出0入0汤圆

发表于 2014-4-25 09:28:39 | 显示全部楼层
Linux可以运行 keil 不

出0入0汤圆

发表于 2014-5-1 00:48:43 | 显示全部楼层
霸气侧漏 发表于 2014-4-25 09:28
Linux可以运行 keil 不

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

本版积分规则

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

GMT+8, 2024-5-10 02:09

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

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