树莓派论坛

 找回密码
 立即注册

在树莓派raspberry上搭建avr单片机开发环境

某树莓派玩家  发表于 2015-5-28 20:13:50 |阅读模式
之前开发avr单片机是一直在ubuntu下开发的,最近买了新的树莓派2,发现性能也不错,加上显示器就是一台很实用的linux电脑了,于是决定在树莓派上搭建开发avr单片机环境。avr在linux下的开发靠的主要是avr-gcc以及avrdude ,树莓派采用的Raspbian系统是基于debian的,系统源中有很丰富的软件包,所以总体配置还是比较简单。
一 编译工具AVR-GCC的安装:

我用的是树莓派官方的debian系统wheezy版本的,这里直接安装wheezy下的avr gcc是有问题的,因为这个版本的avr gcc 是4.7版本的,存在一些bug,当你的固件大于8K的时候会报错如下:

relocation truncated to fit: R_AVR_13_PCREL
所以我们这边需要安装4.8版本的avr-gcc

安装步骤主要参考(Installing avr-gcc 4.8.1 and Arduino IDE 1.6 on Raspberry Pi):

先更新下软件包

sudo apt-get update
sudo apt-get upgrade
编辑软件源文件/etc/apt/sources.list,添加下面的源

#sudo vim /etc/apt/sources.list
deb http://mirrordirector.raspbian.org/raspbian/ jessie main contrib non-free rpi
deb http://archive.raspbian.org/raspbian jessie main contrib non-free rpi
配置源优先级,编辑文件/etc/apt/preferences,添加下面的语句


Package: *
Pin: release n=wheezy
Pin-Priority: 900

Package: *
Pin: release n=jessie
Pin-Priority: 300
  
Package: *
Pin: release o=Raspbian
Pin-Priority: -10

最后更新安装:

sudo apt-get update
sudo apt-get -t jessie install gcc-avr avr-libc
avr-gcc -v
#Using built-in specs.
#COLLECT_GCC=avr-gcc
#COLLECT_LTO_WRAPPER=/usr/lib/gcc/avr/4.8.1/lto-wrapper
#Target: avr
#Configured with: ../src/configure -v --enable-languages=c,c++ --prefix=/usr/lib --infodir=/usr/share/info --mandir=/usr/share/man --bindir=/usr/bin --libexecdir=/usr/lib --libdir=/usr/lib --enable-shared --with-system-zlib --enable-long-long --enable-nls --without-included-gettext --disable-libssp --build=arm-linux-gnueabihf --host=arm-linux-gnueabihf --target=avr
#Thread model: single
#gcc version 4.8.1 (GCC)

可以看到安装的是4.8.1版本的avr-gcc

二 下载工具AVRDUDUE的安装:

avrdude这个工具主要是用来下载的的,它支持很多下载工具,从最便宜的usbasp到贵的avrisp2都是支持的,树莓派上更可以直接用gpio中的spi接口来烧写单片机。

安装:

sudo apt-get -t jessie install avrdude

很简单就安装好了。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版 | Archiver | 树莓派论坛 ( 粤ICP备15075382号-1 )