庞大资源库的计算机教程网站!
设为首页
加入收藏
总编信箱
投稿或申请专栏请先 [登 陆]
首页 操作系统 程序设计 图形图像 媒体动画 机械电子 WEB开发 数 据 库 办公系列 路由技术 网络原理 网络应用
认证考试 安全技术
首页>操作系统>Linux>安装经验>正文
资料搜索
Google搜索
Google
返回上级列表

推荐文章

快速保存网页中所有图片的方法
Windows中让光驱巧妙“隐身”技
防范非法用户入侵Win 2000/XP系
两款比较典型的ASP木马防范方法
有关表格边框的css语法整理
Windows XP中可以被禁用的服务
SQL Server导出导入数据方法
Javascript所有对象的属性的获
网页(HTML)中的特殊字符
与篮球共舞,尽显模式本色
QQ病毒的手工清除方法
Photoshop为极品美女打造性感睫
天衣无缝:IIS与PHP水火也相容
SQL Server存储过程编写和优化

在Linux下开发AVR单片机的工具

 作者:本站收集   日期:2005-3-13
字号选择〖 〗/ 双击滚屏 单击停止   
AVR-GCC安装方法简介

by 崔剑

Atmel公司的AVR系列单片机是一种性能优良, 耗电很小的微控制器, 他的主要特点是:

1). 单时钟周期指令;

2). 很高的C语言编码效率;

3). 支持在系统编程(ISP)技术.

AVR单片机是我目前在Linux下看到的开发工具最全的微控制器, 它的开发非常方便, 从此我们在Linux下也可以开发单片机了.

开发AVR的编译器是gcc, 实际上就是给gcc加上适合于AVR的库, 该库的名字叫avr-libc, 目前支持的开发语言是c和c++, c++的支持还在开发中. 下面就介绍AVR-GCC的安装方法并简单介绍一下通用编程器uisp的安装方法.

当前avr-libc仍在不断的进行中, 该项目的主页是 http://www.nongnu.org/avr-libc , 该页面上面还有很多AVR在Linux下开发的辅助工具, 本文就不介绍了. avr-gcc的下载地址是: http://savannah.nongnu.org/download/avr-libc/snapshots/src , 请下载binutils-030428.tar.bz2 , gcc-core-20030428.tar.bz2 , gcc-g++-20030428.tar.bz2 , avr-libc-20030422cvs.tar.gz. 以root用户登录, 将它们拷贝到安装目录中(我的习惯是/usr/local/src), 解压缩软件包:

bunzip2 *.bz2

tar xvf *.tar

tar zxvf *.tar.gz

之后会在安装目录中生成`三个子目录, binutils-030438/ , gcc-20030428/ , avr-libc-20030422cvs/ . 下面分别安装之.

安装binutils:

cd binutils-030428/

./configure --target=avr --prefix=/usr/local/atmel (/usr/local/atmel是安装目录)

make

make install

然后在/etc/ld.so.conf中加入/usr/local/atmel/lib一行, 并运行/sbin/ldconfig更新.

在~/.bashrc文件中加入export PATH=/usr/local/atmel/bin:${PATH}, 并且在命令行下也输入该语句.

安装gcc:

cd gcc-20030428/

./configure --target=avr --prefix=/usr/local/atmel --disable-nls --enable-language=c,c++

make

make install

安装avr-libc:

先设置一些环境变量:

export CC=avr-gcc; export AS=avr-as; export AR=avr-ar; export RANLIB=avr-ranlib

export PATH=/usr/local/atmel/bin:${PATH}; export PREFIX=/usr/local/atmel

./reconf

./doconf

./domake

cd build

make install

如果一切顺利的话, AVR-GCC就安装完成了.

下面介绍通用编程器uisp的安装

uisp是一个通用的编程器, 用来在Linux下控制各种各样的编程器, 该项目正在不断的完善中, 项目的主页是:

http://savannah.nongnu.org/projects/uisp

从上面下载uisp-20021201.tar.gz

解压缩:

tar zxvf uisp-20021201.tar.gz

开始安装:

cd uisp-20021201/

./configure

make

make install

这样uisp也装好了. 运行之前我们还要作些准备工作. 运行lsmod命令, 看列表中有没有parport, parport_pc, ppdev 三个模块, 有的话就跳过下面一段.

编译内核, 确信选中parallel port support -> parallel support 和 parallel port support -> pc-style hardware 及 Character devices -> Support for user-space parallel port device drivers 三项. 编译好内核后, 进入/lib/modules/<内核版本号>/kernel/drivers/parport/ , 运行 insmod parport.o ; insmod parport_pc.o ; cd .. ; cd char/ ; insmod ppdev.o , 可以将加载模块的命令加入rc.sysinit, 这样就不用以后再手工输入了.

下面简单讲讲avr-gcc和uisp的使用方法, 详细的handbook我会以后翻译. 假定mcu为at90s8515, 源程序为avr.c .

1). 编译C源程序

生成.o文件: avr-gcc -mmcu=at90s8515 -Os avr.c

生成.out文件: avr-gcc -mmcu=at90s8515 -o -Wl,-Map,avr.map avr.o avr.out

生成.hex文件: avr-objcopy -R .eeprom -O ihex avr.out avr.hex

2). 在线下载

刷新: uisp -dlpt=/dev/parport0 --erase -dprog=dapa

编程: uisp -dlpt=/dev/parport0 --upload if=avr.hex -dprog=dapa -dno-poll -v=3 --hash=32

3). 下载线

PC 并口 AVR

Init (Pin 16) -> Reset

D0 (Pin 2) -> MOSI

Busy(Pin 11) -> MISO

Strobe(Pin 1) -> SCK

GND(Pin 18) -> GND

注意:

引线要串1K的电阻, AVR的Reset端接10K的上拉, 要给单片机3-5V的外部供电.

最后祝大家都能顺利的使用Linux开发AVR.

有问题与我联系 (cuijianw@etang.com)
上一篇:RedHat8.0下完整的内核编译步骤和说明    下一篇:当“菜鸟”遭遇Linux  
[发送给好友]  [关闭窗口]  [返回顶部]   转载请注明来源:www.it00.com   
特别声明: 本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作者。文章版权归文章原始作者所有。对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转载的文章有版权问题请联系编辑人员,我们尽快予以更正。
责任编辑: 原点 投稿作者: 本站收集
信息来源: 网络 录入时间: 2005-3-13
关于我们 - 广告服务 - 版权申明 - 网站地图 - 联系方式 - 总编信箱 - 会员投稿