ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Четверг
4 июля
122497
cvv (10.06.2008 11:55, просмотров: 8158)
кто нибуть пользовал Procyon AVRlib? Меня интересует момент почему после записи i2c eeprom 24lc512 на скорости 400 кбит я читаю не тоже самое что писал. вернее ф-я i2ceepromReadByte возвращает всегда старший байт адреса. Пример читающего кода: int main(void) { // Crystal Oscillator division factor: 1 #ifndef __GNUC__ #pragma optsize- #endif CLKPR=0x80; CLKPR=0x00; #ifdef _OPTIMIZE_SIZE_ #pragma optsize+ #endif InitChip(); SPI_SlaveInit(); i2cInit(); i2ceepromInit(); asm __volatile__("wdr"); static unsigned short i; for(i=0; ; i++) { unsigned char byte; byte = i2ceepromReadByte(0, i); OutData(_BV(0), digit_value_mask[i &0x000f]&0x7f); OutData(_BV(1), digit_value_mask[(i>>4) &0x000f]&0x7f); OutData(_BV(4), digit_value_mask[(i>>8) &0x000f]&0x7f); OutData(_BV(5), digit_value_mask[(i>>12)&0x000f]&0x7f); OutData(_BV(2), digit_value_mask[byte &0x0f]&0x7f); OutData(_BV(3), digit_value_mask[(byte>>4) &0x0f]&0x7f); delay_ms(500); }
wbr Vitaly