Поиск по этому блогу

четверг, 24 января 2013 г.

Arduino I2c (TWI) - ускорение шины до 400 mHz. Работа с I2c EEPROM 42568BWP.

Возникла потребность использовать микросхему  42568BWP - не получилось достать 24LC256    
Кстати - это два полных аналога по пинам и адресу - соответственно исполльзуем точно так же, как и  24LC256.
B вот не заводится и всё тут! Почитав даташит - обнаружил, что по-умолчанию arduino поддерживает частоту 100 - а моя микросхема работает на 400! Способ нашёлся такой - правим Wire в /libraries/Wire/utility/twi.h находим строку
#ifndef TWI_FREQ
#define TWI_FREQ 100000L
#endif
и меняем на
#ifndef TWI_FREQ
#define TWI_FREQ 400000L
#endif
ещё советуют удалить hardware/libraries/Wire/Wire.o 
hardware/libraries/Wire/utility/twi.o
и перезагрузить Arduino IDE
я не удалял - всё и так заработало :)

Источник - буржуйский форум.
P.s. буржуи! Спасибо :)

Комментариев нет:

Отправить комментарий