Перейти к содержанию
    

Подскажите пожалуйста, где найти описание протоколов SPI и I2C на русском. Гуглил - не нашел.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Интересная ссылка предоставленная LordN:

<http://lord-n.narod.ru/walla.html#PredkoMSpravochnik_PICcontrollersdjvu>

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Есть весьма неплохой русскоязычный информационный сервер с кучей переводных статей gaw.ru. Рекомендую!

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Посмотрите здесь: http://rs232.ru/

Там много информации по интерфейсам.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Еще вопросик по i2с. Есть мс с интерфейсом I2c (pca9555). Обмен в две стороны. По передачи данных все понятно.. а вот чтение непонятки.. а именно непонятно когда мс устанавливает бит на SDA? по фронту SCL? по спецификации данные должны устанавливаться когда SCL -low. ТОгда может slave мс выставляет бит данных по заднему фронту предыдущего импульса?! а как же тогда первый(старший) бит данных? Вообщем огромная просьба помочь разбратся.

ps:перерыл протоколы и описания по i2c. Ничего не нашел:-(

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

а как же тогда первый(старший) бит данных?
Пока SCLK низкий - данные могут меняться сколько угодно. Поэтому устройство устанавливает данные на SDA сразу после того, как SCLK перейдет из высокого уровня в низкий. "Самому первому" биту предшествует комбинация "Старт" в конце которой SCLK переходит из высокого уровня в низкий

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

комбинация "Старт" в конце которой SCLK переходит из высокого уровня в низкий

Огромная ПАСИБА! буду проверять на железе:-) прим: данные от slave мс идут после бита ACK(после адреса устройства, т.е. старт уже был). Соответственно "первый бит"данных будет устанавливаться после появления низкого уровня(после ACK). Если не так, поправьте.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Соответственно "первый бит"данных будет устанавливаться после появления низкого уровня(после ACK). Если не так, поправьте.
Нет, мастер сформирует фронт SCLK, считает состояние ACK, сформирует спад SCLK, и вот в этот момент slave начнет выдавать бит.

А... если "после появления низкого уровня" имеется ввиду SCLK, то да, именно так.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

помогите плиз мне с этой PCA9554А. Физический адрес: 0. Хочу чтобы на выходе засветило 0хАА. В CAVR пишу так:

while (1)
      {
      // Place your code here
      i2c_start(); 
      i2c_write(0x70); // 01110000
      i2c_write(0x01); // Output Register     
      i2c_write(0xAA); // Output State
      i2c_stop(); 
         
      delay_ms(500);
      
      };

 

На железе не работает. Ладно. Пошел мучать протеус: там тоже самое. :(

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

разобрался сам. Оказывается не хватало сконфигурировать I/O на выход, т.е. обнулить третий регистр. Тобишь вот:

      i2c_start();   
      i2c_write(0x70); // 01110000
      i2c_write(0x03); // Register I/O   
      i2c_write(0x00); // Config Reg I/O (config as ALL uotput's)
      i2c_stop(); 
      
      i2c_start();   
      i2c_write(0x70); // 01110000
      i2c_write(0x01); // Output Register   
      i2c_write(0xAA); // Output State
      i2c_stop();         
      delay_ms(500);

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Народ, подскажите, может кто знает, какой-нибудь доступный (freeware) инструмент под WinXP, кабель-переходник (желательно USB) с помощью которого можно было бы читать/писать по I2C(типа мастера шины), ну и соответствующий софт позволяющий просто всем этим делом управлять (делать дампы, записывать обратно, анализировать и т.п.) ?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Народ, подскажите, может кто знает, какой-нибудь доступный (freeware) инструмент под WinXP, кабель-переходник (желательно USB) с помощью которого можно было бы читать/писать по I2C(типа мастера шины), ну и соответствующий софт позволяющий просто всем этим делом управлять (делать дампы, записывать обратно, анализировать и т.п.) ?

PonyProg. Схемы в описании есть, для I2C что-то типа четырех диодов и трех резисторов. Проверено - работает отлично! Кабель в ком-порт, с USB переходником работало вроде.

Кроме I2C он еще много чего программировать может.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Здравствуйте. Сейчас разбираю (исследую) одно устройство, состоящее из ведущего и ведомого. Интерфейс общения - SPI. По линии MOSI всё нормально - сигнал амплитудой 5 В. А по линии MISO - появился вопрос. В собранном состоянии - обычный 5-ти вольтовый сигнал. Если разъединить ведущего и ведомого, то на ведущем - постоянные 5 вольт, на ведомом - 0..0,5 вольт. Это что - открытый коллектор? Своё питание на ведомом имеется. Кто-нибудь сталкивался с таким? Если можно, объясните, зачем так сделано, в чём здесь улучшение.

 

Здравствуйте. Сейчас разбираю (исследую) одно устройство, состоящее из ведущего и ведомого. Интерфейс общения - SPI. По линии MOSI всё нормально - сигнал амплитудой 5 В. А по линии MISO - появился вопрос. В собранном состоянии - обычный 5-ти вольтовый сигнал. Если разъединить ведущего и ведомого, то на ведущем - постоянные 5 вольт, на ведомом - 0..0,5 вольт. Это что - открытый коллектор? Своё питание на ведомом имеется. Кто-нибудь сталкивался с таким? Если можно, объясните, зачем так сделано, в чём здесь улучшение.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Это что - открытый коллектор?

Это не открытый коллектор, это выход с Z-состоянием, поскольку на шине могут сидеть несколько устройств

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...