|
|
  |
Компас HMC 5883L в режиме автоинкремента адреса, зажимает SDA |
|
|
|
Apr 24 2013, 13:42
|

Знающий
   
Группа: Свой
Сообщений: 966
Регистрация: 27-05-06
Из: СПб
Пользователь №: 17 499

|
Цитата(alexPec @ Apr 24 2013, 01:36)  Когда читаете данные, контроллером выдаете 9-й импульс ACK. Если хотите чтоб устройство отпустило шину, надо на 9-м бите последнего байта сделать NACK, т. е. не тянуть на землю SDA. Устройство должно отпустить шину. Это реализовано? Спасибо , это помогло! ( до этого я все все время передавал ask) Странно, в даташите по этому поводу ничего не сказано.. Остается непонятным также почему с чтением регистровой пары устройство ведет себя по другому- при наличии ask все время- устройство отпускает шину.
|
|
|
|
|
Apr 24 2013, 17:13
|
Профессионал
    
Группа: Свой
Сообщений: 1 284
Регистрация: 9-04-06
Пользователь №: 15 968

|
Цитата(Serj78 @ Apr 24 2013, 17:42)  Спасибо , это помогло! ( до этого я все все время передавал ask) Странно, в даташите по этому поводу ничего не сказано..
Остается непонятным также почему с чтением регистровой пары устройство ведет себя по другому- при наличии ask все время- устройство отпускает шину. Сам вот-вот, позавчера узнал, когда читал доку на опенкоровский i2c контроллер. До этого думал что всегда ACK передавать надо... Оказывается это стандарт, там все написано... Кстати да, в даташитах ни разу такого не видел, хотя пользую и флешки, и магнитомеры теже, и кодеки и т.д. Везде вроде информация дублируется по i2c, а этот момент нигде не отражен.
|
|
|
|
|
Apr 25 2013, 12:07
|
Профессионал
    
Группа: Свой
Сообщений: 1 284
Регистрация: 9-04-06
Пользователь №: 15 968

|
Цитата(Serj78 @ Apr 25 2013, 14:41)  Алекс, я видел в параллельной теме что вы писали про недостаточную емкость для set/reset.
У меня наблюдаются четкие провалы напряжения на ней( 2 иголки) с очень резким спадом и линейным фронтом. Длительность спада менее 1мкс, фронта -100мкс. высота иголки (глубина "провала")- 350мв, общее напряжение на конденсаторе - 2.2в
Иголки идут парами с частотой измерений, между иголками 1800 мкс. Спады этих иголок совпадают с фронтами импульса на конденсаторе 0.22мкф (между ногами 8 и 12, SetP, SetC)
Компас работает корректно, по крайней мере показания не нулеые а от +600 до -600 примерно при дефолтном усилении (диапазон 1.3 гаусс)
На какую глубину были провалы напряжения у вас? Да так не скажу, не помню, а железки той нет под рукой сейчас, 3 года назад делал. Помню что конденсатор ставил керамический на 4,7 или на 10 мкф (выпаял с винчестера дохлого). После этого сходу все заработало, разрешение по азимуту получал не хуже 0,5 градуса точно. Еще помню когда проседало питание некоторые биты (после измерения) сбрасывались в дефолт, хотя не должны были. После установки керамики как записывал, так и читались Так что если точность нормальная, болтанки результатов нет, то значит все ОК. А что беспокоит то собственно?
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|