avr 运行 linux,linux(ubuntu9.04)安装avr编译环境

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

1。安装avr的编译环境

sudo apt-get install gcc-avr binutils-avr avrdude avr-libc

2. 安装下载软件avrdude

sudo apt-get install avrdude

测试文件

rarstop.gif

/

///其中main.c  简单 有点avr基础就明白,让灯闪//

#include

#include

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 --------

文件列表:

44a28655-7e85-4921-9a06-a8eedc66598f.jpg

其中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上,记不得网址了.

*博客内容为网友个人发布,仅代表博主个人观点,如有侵权请联系工作人员删除。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值