реклама на сайте
подробности

 
 
> Вызов мастера в I2C чип LPC2131
Папа Карло
сообщение Jan 9 2009, 23:21
Сообщение #1


Частый гость
**

Группа: Новичок
Сообщений: 176
Регистрация: 15-02-08
Из: Москва
Пользователь №: 35 074



Всем привет!

Настраиваю I2C между 2 устройствами на чипах LPC2131.
Один мастер, а другой ведомый.

Как ведомому сообщить мастеру, что у него есть информация важная ?

Чипы соединены только по I2C и других проводов протянуть нельзя.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Папа Карло
сообщение Jan 10 2009, 19:55
Сообщение #2


Частый гость
**

Группа: Новичок
Сообщений: 176
Регистрация: 15-02-08
Из: Москва
Пользователь №: 35 074



Ох лучше бы вы мне подсказали, почему ведущий запрашивает больше данных чем есть в ведомом.
Хотя по прерываниям и статусу ведомый уже перестаёт реагировать на запросы.
Go to the top of the page
 
+Quote Post
singlskv
сообщение Jan 10 2009, 20:24
Сообщение #3


дятел
*****

Группа: Свой
Сообщений: 1 681
Регистрация: 13-05-06
Из: Питер
Пользователь №: 17 065



Цитата(Папа Карло @ Jan 10 2009, 22:55) *
Ох лучше бы вы мне подсказали, почему ведущий запрашивает больше данных чем есть в ведомом.
Хотя по прерываниям и статусу ведомый уже перестаёт реагировать на запросы.
Не выясняя подробности Вашей реализации, могу предположить что NACK(Not ACK) Вы выставляете на последнем
байте, а нужно на предпоследнем...


Цитата(zltigo @ Jan 10 2009, 23:09) *
Первый эмулирует OD только если запрограммирован, как I2C. Нулевой по жизни OD, что позволяет исключить подсаживание им I2C шины и при отсутствии питания чипа.
как Вы все-таки уклончиво отвечаете.. smile.gif
Но суть понятна, для LPC2103 только I2C0 честный OD.
Цитата
По крайней мере у тех, с которыми имел дело - нет. У них и I2C тоже только похожий.
Только похожий ? "Эмуляция" OD ?
Как Вы себе представляете MultiMaster без честной OD ??? А он там реализован вроде как полностью...
Go to the top of the page
 
+Quote Post
zltigo
сообщение Jan 10 2009, 21:05
Сообщение #4


Гуру
******

Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244



Цитата(singlskv @ Jan 10 2009, 23:24) *
Только похожий ? "Эмуляция" OD ?
Как Вы себе представляете MultiMaster без честной OD ??? А он там реализован вроде как полностью...

Я уже перестал понимать, что Вы не понимаете sad.gif. Вы совсем не понимаете, что "обычный" трехстабильный выход из-за наличия паразитного p-n перехода с высоколегированной области стока выходного p-канального транзистора на подложку чипа засадит шину. Поскольку ограничивает уровень на шине уровнем напряжения питания контроллера + ширина запрещенной зоны кремния.... При отсутствии питания это гарантированная неработоспособность. Честный OD, естественно, "верхнего" транзистора не имеет, как класс и этой проблемы нет.


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
singlskv
сообщение Jan 10 2009, 21:24
Сообщение #5


дятел
*****

Группа: Свой
Сообщений: 1 681
Регистрация: 13-05-06
Из: Питер
Пользователь №: 17 065



Цитата(zltigo @ Jan 11 2009, 00:05) *
я надеюсь что к моим умозаключениям про LPC2103 и их i2c вопросов нет ?
Цитата
Я уже перестал понимать, что Вы не понимаете sad.gif. Вы совсем не понимаете, что "обычный" трехстабильный выход из-за наличия паразитного p-n перехода с высоколегированной области стока выходного p-канального транзистора на подложку чипа засадит шину. Поскольку ограничивает уровень на шине уровнем напряжения питания контроллера + ширина запрещенной зоны кремния.... При отсутствии питания это гарантированная неработоспособность. Честный OD, естественно, "верхнего" транзистора не имеет, как класс и этой проблемы нет.
Очень красиво Вы все описали, только какое это имеет отношение к AVR ?
Я обычно вдумчиво читаю в таких сомнительных местах... smile.gif :
• SCL/ADC5 – Port C, Bit 5
SCL, Two-wire Serial Interface Clock: When the TWEN bit in TWCR is set (one) to enable the
Two-wire Serial Interface, pin PC5 is disconnected from the port and becomes the Serial Clock
I/O pin for the Two-wire Serial Interface. In this mode, there is a spike filter on the pin to suppress
spikes shorter than 50 ns on the input signal, and the pin is driven by an open drain driver
with slew-rate limitation.
PC5 can also be used as ADC input Channel 5. Note that ADC input channel 5 uses digital
power.
• SDA/ADC4 – Port C, Bit 4
SDA, Two-wire Serial Interface Data: When the TWEN bit in TWCR is set (one) to enable the
Two-wire Serial Interface, pin PC4 is disconnected from the port and becomes the Serial Data
I/O pin for the Two-wire Serial Interface. In this mode, there is a spike filter on the pin to suppress
spikes shorter than 50 ns on the input signal, and the pin is driven by an open drain driver
with slew-rate limitation.

и даташиту я увы верю больше чем Вам...
Go to the top of the page
 
+Quote Post
zltigo
сообщение Jan 10 2009, 21:34
Сообщение #6


Гуру
******

Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244



Цитата(singlskv @ Jan 11 2009, 00:24) *
и даташиту я увы верю больше чем Вам...

Надо не "верить", а банально хоть чего-нибудь понимать. Вы не можете понять разницу между tri-state выходом эмулирующим open-drain у Atmel и реальным open-drain в применении к I2C шине sad.gif, но это как-бы не мои проблемы.


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
singlskv
сообщение Jan 10 2009, 21:40
Сообщение #7


дятел
*****

Группа: Свой
Сообщений: 1 681
Регистрация: 13-05-06
Из: Питер
Пользователь №: 17 065



Цитата(zltigo @ Jan 11 2009, 00:34) *
Надо не "верить", а банально хоть чего-нибудь понимать. Вы не можете понять разницу между tri-state выходом эмулирующим open-drain у Atmel и реальным open-drain в применении к I2C шине sad.gif, но это как-бы не мои проблемы.
Я Вас уже просил объяснить работу MultiMaster на "эмулируемых" open-drain,
ну вот и объясните как оно будет работать...
Go to the top of the page
 
+Quote Post
zltigo
сообщение Jan 10 2009, 22:01
Сообщение #8


Гуру
******

Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244



Цитата(singlskv @ Jan 11 2009, 00:40) *
ну вот и объясните как оно будет работать...

Еще раз, но уж точно последний - для уровней на шине I2C не превышающих текущее напряжение питание контроллера точно так-же, как и настоящий OD требуемый для I2C.


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
singlskv
сообщение Jan 10 2009, 22:26
Сообщение #9


дятел
*****

Группа: Свой
Сообщений: 1 681
Регистрация: 13-05-06
Из: Питер
Пользователь №: 17 065



Цитата(zltigo @ Jan 11 2009, 01:01) *
Еще раз, но уж точно последний - для уровней на шине I2C не превышающих текущее напряжение питание контроллера точно так-же, как и настоящий OD требуемый для I2C.
А в чем собственно разница ? только в том что LPC при питании 3,3V имеет 5V толерантные входы ?
вот для LPC:
VI input voltage 5 V tolerant I/Opins
[5][6] -0.5 +6.0 V
other I/O pins [5] -0.5 VDD + 0.5[7] V

вот для AVR:
VIH Input High Voltage except XTAL1 and RESET pins
VCC = 2.7V - 5.5V 0.6 VCC (2) VCC + 0.5 V

ну и в чем принципиальная разница кроме толерантности LPC к 5V ?

Давайте четко определим предмет спора.
в посте №20 Вы заявили что у AVR в режиме I2C работает "верхний" драйвер,
я же утверждаю что его там нет...
как будем проверять ?
Go to the top of the page
 
+Quote Post
zltigo
сообщение Jan 10 2009, 22:54
Сообщение #10


Гуру
******

Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244



Цитата(singlskv @ Jan 11 2009, 01:26) *
в посте №20 Вы заявили что у AVR в режиме I2C работает "верхний" драйвер,

Не говорите глупости, тем более не приписывайте их мне. Я говорил, то что говорил. Цитирую:
Цитата
"обычный" трехстабильный выход из-за наличия паразитного p-n перехода с высоколегированной области стока выходного p-канального транзистора на подложку чипа засадит шину. Поскольку ограничивает уровень на шине уровнем напряжения питания контроллера + ширина запрещенной зоны кремния.... При отсутствии питания это гарантированная неработоспособность. Честный OD, естественно, "верхнего" транзистора не имеет, как класс и этой проблемы нет.

Где тут про "работает"? Просто присутствует и ввиду его присутствия имеется паразитный диод на подложку создающий проблемы.
Цитата
Вы не можете понять разницу между tri-state выходом эмулирующим open-drain у Atmel и реальным open-drain в применении к I2C шине , но это как-бы не мои проблемы.

Все. Утомился от многократного повторения элементарного.


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
singlskv
сообщение Jan 10 2009, 23:09
Сообщение #11


дятел
*****

Группа: Свой
Сообщений: 1 681
Регистрация: 13-05-06
Из: Питер
Пользователь №: 17 065



Цитата(zltigo @ Jan 11 2009, 01:54) *
Просто присутствует и ввиду его присутствия имеется паразитный диод на подложку создающий проблемы.
Диод есть,никто и не спорит, но наличие диода это еще не 3-state...
Проблемы на шине без питания вызывать может.
Но OD там честный... с учетом диода конечно.
Go to the top of the page
 
+Quote Post
zltigo
сообщение Jan 10 2009, 23:53
Сообщение #12


Гуру
******

Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244



Цитата(singlskv @ Jan 11 2009, 02:09) *
Диод есть,никто и не спорит, но наличие диода это еще не 3-state...
Проблемы на шине без питания вызывать может.
Но OD там честный... с учетом диода конечно.

Так, до Вас начало доходить. Продолжим - нет он не честный. Честный он (у производителей придерживающизся спецификации I2C ) такой:
Цитата
I2C0 input/output. Open-drain output (for I2C-bus compliance).
Open-drain 5 V tolerant digital I/O pad, compatible with I2C-bus 400 kHz specification. This pad requires an external pull-up to provide
output functionality. When power is switched off, this pin connected to the I2C-bus is floating and does not disturb the I2C lines.

А про другие I2C совместимые (тоже имеющиеся на борту того-же контроллера):
Цитата
I2C1 input/output (this is not an open-drain pin). Open-drain configuration applies only to I2C function on that pin.


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
singlskv
сообщение Jan 11 2009, 22:53
Сообщение #13


дятел
*****

Группа: Свой
Сообщений: 1 681
Регистрация: 13-05-06
Из: Питер
Пользователь №: 17 065



Цитата(zltigo @ Jan 11 2009, 02:53) *
Так, до Вас начало доходить. Продолжим - нет он не честный.

Если бы Вы сразу же высказались в том ключе что i2c на AVR не поддерживает полностью
спецификацию из-за защитных диодов то было бы сразу все понятно, это я и так знал,
но Вы завели разговор про "'эмуляцию" OD, чем совсем сбили с толку...

З.Ы. я так понимаю что I2C1 на LPC2103 это практически то же самое что и на AVR,
ну а I2C0 не будет держать шину и при отключенном питании.
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Папа Карло   Вызов мастера в I2C чип LPC2131   Jan 9 2009, 23:21
- - zltigo   Цитата(Папа Карло @ Jan 10 2009, 02:21) К...   Jan 10 2009, 08:06
- - MaxEngee   Еще как вариан: Переключать пины на цифровой вход/...   Jan 10 2009, 08:21
|- - zltigo   Цитата(MaxEngee @ Jan 10 2009, 11:21) над...   Jan 10 2009, 08:48
|- - singlskv   Цитата(zltigo @ Jan 10 2009, 11:48) С мат...   Jan 10 2009, 18:35
|- - zltigo   Цитата(singlskv @ Jan 10 2009, 21:35) ? В...   Jan 10 2009, 18:54
|- - singlskv   Цитата(zltigo @ Jan 10 2009, 21:54) Вы со...   Jan 10 2009, 19:12
|- - zltigo   Цитата(singlskv @ Jan 10 2009, 22:12) тог...   Jan 10 2009, 19:27
|- - singlskv   Цитата(zltigo @ Jan 10 2009, 22:27) Повто...   Jan 10 2009, 19:47
|- - zltigo   Цитата(singlskv @ Jan 10 2009, 22:47) что...   Jan 10 2009, 20:09
- - Папа Карло   Пока сделал сканирование, но не прикольно как то. ...   Jan 10 2009, 08:50
|- - zhevak   Цитата(Папа Карло @ Jan 10 2009, 13:50) П...   Jan 10 2009, 10:01
- - Папа Карло   Чтоб не создавать новый топик задам тут вопрос ещё...   Jan 10 2009, 10:06
|- - Lelikk   Ведомый должен слать данные до тех пор, пока ведущ...   Jan 10 2009, 11:26
|- - defunct   Цитата(Папа Карло @ Jan 10 2009, 12:06) О...   Jan 11 2009, 03:37
|- - Папа Карло   Цитата(defunct @ Jan 11 2009, 06:37) т.о....   Jan 11 2009, 11:32
|- - defunct   Цитата(Папа Карло @ Jan 11 2009, 13:32) А...   Jan 11 2009, 15:35
- - Папа Карло   А разве Ведущий может тактировать шину, если не по...   Jan 10 2009, 11:43
|- - zhevak   Цитата(Папа Карло @ Jan 10 2009, 16:43) А...   Jan 10 2009, 12:43
- - Папа Карло   Осциллографа нет. Могу выложить код ведомого: Код ...   Jan 10 2009, 12:51
- - Папа Карло   Пока я сделал чуть по другому. Если ведомому нечег...   Jan 11 2009, 16:35
|- - defunct   Цитата(Папа Карло @ Jan 11 2009, 18:35) Е...   Jan 11 2009, 22:23
|- - Папа Карло   Цитата(defunct @ Jan 12 2009, 01:23) из д...   Jan 12 2009, 07:59
|- - defunct   Цитата(Папа Карло @ Jan 12 2009, 09:59) В...   Jan 12 2009, 11:13
- - Папа Карло   Всё таки сделал по вашему т.к., если МК перевести ...   Jan 12 2009, 17:08
- - defunct   Цитата(Папа Карло @ Jan 12 2009, 19:08) И...   Jan 12 2009, 18:07


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 21st July 2025 - 04:16
Рейтинг@Mail.ru


Страница сгенерированна за 0.01528 секунд с 7
ELECTRONIX ©2004-2016