#include <iom16v.h> //icc的头文件 //#include <mega16.h> //cv的头文件
#define uchar unsigned char #define uint unsigned int
void delay_1ms(void); void delayms(uint n);
void delay_1ms(void) { uint i; for (i=0;i<1000;i++) ; }
void delayms(uint n) { uint i; for(i=0;i<n;i++) { delay_1ms(); } } void main() { uchar i; DDRC = 0xff; PORTC = 0xff; while(1) { for(i=0;i<8;i++) { PORTC = ~(1<<i); delayms(300); //icc编译的结果在仿真时出现AVR Simulator: Invalid opcode 0xffff at address 0x00b8b8的错误 } } }
cv编译后的hex文件在proteus里验证运行正常,cof在avrstudio里仿真也没有错误。 ICC编译通过,但是软仿真出现错误,在Proteus里无法运行
|