用AVR的TWI手册例程编程对EEPROM存取一切正常,但按手册说明编程却出现问题,最后通过查看头文件发现例程和手册对TWCR赋值不对:
手册例程 如:#define start() (TWCR=(1<<TWINT)|(1<<TWSTA)|(1<<TWEN)) //头文件中#define TWINT 7 #define TWSTA 5
#define TWEN 2 这样算出来TWCR=11100
自编程:#define start TWCR=0xa4 依据手册说明得来
所以想请教各位老大,为什么手册例程和手册说明中的START值不一样??按手册说明编程会出现错误,而按例程编程却不会出现错误?? |