久一网络科技

久一网络科技是您快速建站的首选,我们提供快速高效的服务:快速建站,服务器运维,整站建设,网络编程,网络安全等。持久的品质保证,始终如一的服务理念,久一网络科技-----您身边的网络专家。 如有需求,请联系:tech@jooyee.net

新版的winavr出现了很多不兼容的情况,以前的老程序直接编译都通不过,主要有sbi,cbi,另外还有inp outp PRG_RDB 等问题,现在提出解决方法:

只要加上下面的代码就OK了:


#define PRG_RDB(addr) pgm_read_byte(addr)
#define eeprom_rb(addr) eeprom_read_byte ((uint8_t *)(addr))
#define eeprom_wb(addr,val) eeprom_write_byte ((uint8_t *)(addr), (uint8_t)(val))
#define cbi(sfr, bit) (_SFR_BYTE(sfr) &= ~_BV(bit))
#define sbi(sfr, bit) (_SFR_BYTE(sfr) |= _BV(bit))
#define nbi(sfr, bit) (_SFR_BYTE(sfr) ^= _BV(bit))


另外发现一个很好用的函数bit_is_clear(PINC,1),bit_is_set(PINC,1)

注意有这个定义:#define PD1 1 在iom16.h里面

0 评论 ---->點閱數:

发表评论

关注者

热门帖子

网页浏览总次数