原创 linux(ubuntu9.04)安装avr编译环境

2009-9-2 21:19 4057 5 7 分类: MCU/ 嵌入式
1。安装avr的编译环境
    sudo apt-get install gcc-avr binutils-avr avrdude avr-libc

2. 安装下载软件avrdude
   sudo apt-get install avrdude

////////////////////////////////////////////////////////////////////
测试文件https://static.assets-stash.eet-china.com/album/old-resources/2009/9/2/dbc948d7-deb2-42fd-a7c4-b3478fa485d6.rar
/////////////////////////////////////////////////////////////////
///////////其中main.c  简单 有点avr基础就明白,让灯闪//////////////////////////////
#include <avr/io.h>
#include <util/delay.h>

int main(void)
{
     unsigned char i;
    DDRC = 0xff;
        i = 0x55;
    while (1)
        {       
        PORTC  = i;
                _delay_ms(500);
        PORTC  = ~i;
        _delay_ms(500);
    }
    return 0;
}
//////////////////////////////////////////////////
解压后 用命令行终端进入
文件列表如下:
8b6d0dd9-310b-4dc9-8c42-f44afe0b6089.jpg
输入命令make
-------- begin --------
avr-gcc (GCC) 4.3.2
Copyright (C) 2008 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.


Compiling C: main.c
avr-gcc -c -mmcu=atmega16 -I. -gdwarf-2 -DF_CPU=3686400UL -Os -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-adhlns=./main.lst  -std=gnu99 -Wundef -MMD -MP -MF .dep/main.o.d main.c -o main.o

Linking: main.elf
avr-gcc -mmcu=atmega16 -I. -gdwarf-2 -DF_CPU=3686400UL -Os -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-adhlns=main.o  -std=gnu99 -Wundef -MMD -MP -MF .dep/main.elf.d main.o --output main.elf -Wl,-Map=main.map,--cref     -lm

Creating load file for Flash: main.hex
avr-objcopy -O ihex -R .eeprom -R .fuse -R .lock main.elf main.hex

Creating load file for EEPROM: main.eep
avr-objcopy -j .eeprom --set-section-flags=.eeprom="alloc,load" \
    --change-section-lma .eeprom=0 --no-change-warnings -O ihex main.elf main.eep || exit 0

Creating Extended Listing: main.lss
avr-objdump -h -S -z main.elf > main.lss

Creating Symbol Table: main.sym
avr-nm -n main.elf > main.sym

Size after:
AVR Memory Usage
----------------
Device: atmega16

Program:     196 bytes (1.2% Full)
(.text + .data + .bootloader)

Data:          0 bytes (0.0% Full)
(.data + .bss + .noinit)



-------- end --------
文件列表:
点击看大图


其中main.hex为烧写文件 main.eep为eeprom文件.

/////////////////////////////////////////////////////////////////////////////////////
如果输入命令make clean
就只是剩下原先两个文件.

///////////////////////////////这儿值得注意的是:特别是windows转linux学习的菜鸟(我是这样),前面没有啥问题:就是怎么将程序下载到avr单片机
我以avrisp下载线为例子
输入make program 则为下载程序到单片机命令,其中怎么实现的呢?
在makefile里面 可以查找到如下:
#AVRDUDE_PROGRAMMER = pony-stk200
AVRDUDE_PROGRAMMER = stk500V2
其中#后面表示注释语句,则pony-stk200和stk500V2表示下载线型号,我用avrisp则是对应stk500V2,要是并口下载线应该是pony-stk200了吧
#AVRDUDE_PORT = /dev/parport0
AVRDUDE_PORT = /dev/ttyUSB0
如果是并口 则要指明是哪个口“parport0”表示并口1吧,具体没有验证(我的机子没有并口)
ttyUSB0指的是usb转串口0号,不想windows下为串口3或者串口几。
如果是电脑自己带的串口则是ttyS0,ttyS1,ttyS2,ttyS3于windows对应为com1,com2,com3,com4
///////////////////////////////////////////////////////////////////////////////////////
至于makefile文件 我用winavr(windows下的)编译的makefile在这儿就能用,这儿有个自动makefile生成文件在ouravr上,记不得网址了.

文章评论2条评论)

登录后参与讨论

用户305835 2010-10-17 18:11

请问makefile是怎么出来的 自己编程 没有makefile阿

tengjingshu_112148725 2009-9-3 08:44

受用
相关推荐阅读
用户1494767 2014-09-27 12:21
zigbee学习--osalInitTasks
http://85kaifa.taobao.com [学习 记录中....随时更改] zigbee学习--osalInitTasks  (OSAL_SampleApp.c) /****...
用户1494767 2012-08-12 18:31
ubuntu 10.04下nfs挂载2440
1、安装端口映射器portmap(可选)    sudo apt-get install portmap 2、在终端提示符后键入以下命令安装NFS服务器   sudo apt-get ins...
用户1494767 2012-08-09 22:33
Linux下DNW的PC端USB驱动和写入工具【转】
1. 下载Linux下DNW的PC端USB驱动和写入工具 文件名: dnw_linux.zip 下载后把后缀名改成.tgz #或者搜索 linux dnw 2. 编译PC端USB驱动和写入...
用户1494767 2012-01-06 17:01
STM32F207 uCOS-II移植笔记(下)
  第十步:main函数中变为:主要是将时钟初始化去掉,并建立一个启动任务        int main(void)        {           CPU_INT08U  o...
用户1494767 2012-01-05 09:51
STM32F207 uCOS-II移植笔记(上)
                                     STM32F207 uCOS-II移植笔记(上) 第一步: 建立STM32F207工程,已经有相关文档说明。其中stm...
用户1494767 2011-12-15 18:04
转]ubuntu 环境变量设置方法
环境变量配置文件 在Ubuntu中有如下几个文件可以设置环境变量 1、/etc/profile:在登录时,操作系统定制用户环境时使用的第一个文件,此文件为系统的每个用户设置环境信息,...
我要评论
2
5
关闭 站长推荐上一条 /2 下一条