zuowang325 发表于 2014-4-20 14:24:57

ATmega88的程序经过怎样修改可以在ATmega168上运行呢

ATmega88的程序经过怎样修改可以在ATmega168上运行呢

tomhe666 发表于 2014-4-20 14:36:46

C的话无需修改

zuowang325 发表于 2014-4-20 14:46:39

我也是用C写的啊,但是把ATmega88的程序直接用在ATmega168上,运行不了啊
#include <avr/io.h>
#include <util/delay.h>
#include <avr/wdt.h>
#include <avr/interrupt.h>
#include <math.h>
#include <avr/eeprom.h>
定义的有上面这些,但是查找上面的定义的时候是 Symbol not found,其他的都是自己定义的,用C写的

zuowang325 发表于 2014-4-20 15:03:51

如果有的地方直接操作寄存器,应该也不需要修改吧,寄存器不是兼容的吗

tomhe666 发表于 2014-4-21 09:34:14

168和88寄存器都是一样的, 我目前都是这样用,一点问题都没, 我用的IAR ewavr编译, 我试过88,168, 328,什么都不用修改,直接可编译的

zuowang325 发表于 2014-4-21 10:04:41

我现在可以使用,用的工具是Source.Insight,88的程序可以在168上使用,但是我在flash定义一个300字节的数组就不能使用了,168的flash比88大8K吗,怎么就不能使用了呢

zuowang325 发表于 2014-4-21 10:10:28

是不是我的熔丝配置错了啊

zuowang325 发表于 2014-4-21 13:13:09

88的程序烧写到168上应该有8K的剩余的,但是现在我定义一个300字节的数组,然后程序就不能运行了,这是怎么回事呢

zuowang325 发表于 2014-4-21 13:43:50

有没有人指点一下
页: [1]
查看完整版本: ATmega88的程序经过怎样修改可以在ATmega168上运行呢