编程问题

[复制链接]
1967|3
 楼主| dfsa 发表于 2013-1-23 22:05 | 显示全部楼层 |阅读模式
#include <iom16v.h>
#include <macros.h>
#define uchar unsigned char
#define uint unsigned int

void delay_ms(uint k) //子函数是子函数的形式,它写出来运行单片机不识别。只能由主函数来调用它
{uint i,j;
for(i=1;i<k;i++)
{
  for(j=1;j<570;j++)
  {
  ;
  }
}
}

void main(void)
{
DDRB=0xff;
PORTB=0xff;
while(1)
{
  PORTB=0xaa;
  delay_ms(500);
  PORTB=0x55;
  delay_ms(500);
  }
}
总是出现以下错误
C:\iccv7avr\bin\imakew -f XIXI.mak
    iccavr -o XIXI -LC:\PROGRA~1\icc\lib -g -e:0x10000 -ucrtatmega.o -bfunc_lit:0x7c.0x10000 -dram_end:0x10ff -bdata:0x100.0x10ff -dhwstk_size:30 -beeprom:0.2048 -fihx_coff -S2 @XIXI.lk   -lcatmega
!ERROR file 'xixi.o': undefined symbol 'pop_xgsetF000'
!ERROR file 'xixi.o': undefined symbol 'push_xgsetF000'
C:\iccv7avr\bin\imakew.exe: Error code 1
Done: there are error(s). Exit code: 1. Tue Dec 20 09:57:43
无冕之王 发表于 2013-1-23 22:43 | 显示全部楼层
#define uchar unsigned char
#define uint unsigned int
应该用
typdef unsigned char uchar;
typedef unsigned int uint;
#define只能是两个参数, 参数是用空格划分的(括号内空格不算),你的成了3个参数了,所以这里首先不对。
至于你的错误么,得先改了这个错误再看。
yybj 发表于 2013-1-23 23:01 | 显示全部楼层
看上去似乎有lib没有包
pkat 发表于 2013-1-23 23:21 | 显示全部楼层
编译器的问题 换个版本的就好了
您需要登录后才可以回帖 登录 | 注册

本版积分规则

282

主题

2404

帖子

2

粉丝
快速回复 在线客服 返回列表 返回顶部