Jump to content

    
Sign in to follow this  
juvf

stm32 i2c

Recommended Posts

18 часов назад, Velund сказал:

Если будет замечено в понедельник живым и с нулем сбоев - можно _предварительно_ считать решение годным.

1) что может быть не так?

2) почему предварительно?

Share this post


Link to post
Share on other sites
On 6/8/2019 at 7:24 AM, juvf said:

1) что может быть не так?

Все, что угодно. Стресс-тесты для этого и делают, еще бы хорошо "во всех позах" понагружать.

On 6/8/2019 at 7:24 AM, juvf said:

2) почему предварительно?

Окончательно - это когда с тсячонку изделий в реальной работе полгодика побегают без единой проблемы. ;)

Share this post


Link to post
Share on other sites
1 час назад, Velund сказал:

Все, что угодно. Стресс-тесты для этого и делают

пффф..... понятно что стресс-тест может выявить всё что угодно. в стресс-тесте может SPI лечь ртос лечь, может обмен лечь, может ПО или железо (как и сам проц, так внешнее от процессора)....

1 час назад, Velund сказал:

Окончательно - это когда с тсячонку изделий в реальной работе полгодика побегают без единой проблемы. ;)

Всё что вы говорите - относиться ко всему изделию, включая как железо, так и софт. Что конкретно вы можете сказать про аппаратный  i2c в stm32? Вы делали стресс-тесты и вылетал i2c? Или через 1...6 месяцов в серийных изделиях в реальной работе аппаратный i2c ложился?

Share this post


Link to post
Share on other sites
3 hours ago, juvf said:

Что конкретно вы можете сказать про аппаратный  i2c в stm32?

Достаточно почитать мануал на I2C STM32F1. Ну и еррату. Сразу захочется взять какой-нибудь другой МК. Хотя в простых сценариях те косяки могут и не мешать, конечно.

Share this post


Link to post
Share on other sites
On 5/30/2019 at 8:27 PM, juvf said:

Подскажите, на 2019 год аппаратный i2c в stm32f* годный?

Использовал в одном проекте 2 и2ц... 1 слэйв приём с DMA, 2 master передатчик тоже с DMA. Работает...

 

Share this post


Link to post
Share on other sites
On 7/1/2019 at 6:08 AM, juvf said:

Что конкретно вы можете сказать про аппаратный  i2c в stm32?

Могу повторить про то, что в разных семействах STM32 разная I2C периферия, и подписаться под сказанным выше про STM32F1** - мне для мастера с интенсивным обменом со слейвами запустить его не удалось за разумное время (я уже раза 2 или три думал, что наконец то я его одолел на F103, но стресс тест упрямо доказывал обратное).

 

Вот про NXP LPC1768 могу с уверенностью сказать, что I2C аппаратный там просто замечательный, и стабильно молотит месяцами с 50%+ загрузкой шины по времени, проверeно на 10000++ изделий в" поле". ;)

 

Сейчас видимо придется опробовать что там на STM32L0 за I2C, еще не добрался до этого куска.

 

Share this post


Link to post
Share on other sites

Здравствуйте, у меня проблема с шиной I2C и STM32L100RC . Испольльзую микросхему AD5245 и она не хочет  никак отзываться. По таймингам посмотрел все в порядке, вначале была проблема с нарастанием фронтов , стоял резистор подтяжки 10кОм и фронты были 600нс, уменьшил до 5.1кОм , фронты стали 450нс в итоге до 2.2кОм уменьшать пришлось и фронты стали 150нс. А отклика так от нее и не появилось. Куда можно еще копать ?image.png.1f75c5e856efe0c6166edc4a7e0a4254.png

i2c.jpg

Share this post


Link to post
Share on other sites
6 hours ago, Mysteo said:

Здравствуйте, у меня проблема с шиной I2C и STM32L100RC . Испольльзую микросхему AD5245 и она не хочет  никак отзываться. По таймингам посмотрел все в порядке, вначале была проблема с нарастанием фронтов , стоял резистор подтяжки 10кОм и фронты были 600нс, уменьшил до 5.1кОм , фронты стали 450нс в итоге до 2.2кОм уменьшать пришлось и фронты стали 150нс. А отклика так от нее и не появилось. Куда можно еще копать ?image.png.1f75c5e856efe0c6166edc4a7e0a4254.png

i2c.jpg

Дык а что Вы хотите получить? Подаете команду записи и сразу завершаете транзакцию. Микросхема подтверждение выставляет.

Share this post


Link to post
Share on other sites

По даташиту подтверждение на 9ый такт 0 должно быть , а линия в ноль не опускается. Убитая микруха попалась, поменял все заработало

Edited by Mysteo

Share this post


Link to post
Share on other sites

Может кто сталкивался с 10-бит адресацией, то подскажите! Как формируется вторая половина адреса, та что отправляется 2-м байтом? (Фото из РефМануала на 0хх-серию. Это то что красным обвел)

 

i2c-10bit-addr.jpg

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this