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

 
 
3 страниц V   1 2 3 >  
Reply to this topicStart new topic
> Засада с LPC24xx или Ошибки в описании?, Open-drain mode enabled/disabled???
Sanya_kv
сообщение Jun 24 2011, 06:18
Сообщение #1


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

Группа: Свой
Сообщений: 185
Регистрация: 25-02-09
Из: Россия
Пользователь №: 45 369



Появилась необходимость управлять 5 вольтовой логикой. Самое простое это задействовать выход открытым коллектором (Open-drain) с резистором на 5в. В кратком описании процессора (http://www.nxp.com/documents/data_sheet/LPC2468.pdf 14.5 "Standard I/O pin configuration") есть строчка ” Digital output driver: Open-drain mode enabled/disabled”, а как это сделать ни где не описано. До этого сидел на Atmel там ни каких проблем с этим нет(регистр PIO_MDER). Но в фирме решили экономить, пришлось выбрать что по дешевле. Выбрали NXP теперь жалею.
Но проблему 5в логики я всё же решил, правда через 5-ю точку:

Код
#define IO1_0     (1<<0)
//Инициализация
FIO1CLR = IO1_0;
PINMODE2 |= 2<<0;
FIO1DIR |= IO1_0;
//Логическая ”1”
FIO1DIR &= ~ IO1_0;
//Логический ”0”
FIO1DIR |= IO1_0

Кстати в описании на процессор LPC17xx. Тоже есть та же строчка, и для управления этой функцией есть регистр PINMODE_ODx.
Go to the top of the page
 
+Quote Post
bus16
сообщение Jun 24 2011, 06:36
Сообщение #2


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

Группа: Свой
Сообщений: 78
Регистрация: 10-01-07
Пользователь №: 24 270



Pins P0[27] and P0[28] are open-drain for I2C0 and GPIO functionality
Go to the top of the page
 
+Quote Post
Sanya_kv
сообщение Jun 24 2011, 07:18
Сообщение #3


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

Группа: Свой
Сообщений: 185
Регистрация: 25-02-09
Из: Россия
Пользователь №: 45 369



Цитата
Pins P0[27] and P0[28] are open-drain for I2C0 and GPIO functionality

Только 2 ножки. Кушайте наздоровье.

И еще камень в огород NXP (LPC24xx). Эта неправильная синхронизация интерфейса MIIM, данные на MDIO выставляются возрастающему фронту сигнала MDC, а не наоборот (Если смотреть на осциллографе, то это происходит одновременно ), Работает этот интерфейс только потому, что у трансиверов есть задержка на чтение. Я столкнулся с этим касиком, при отладке. Заметил, что в трансивер пишется не то, что в итоге читается (через раз). Проблема была отчасти в разводке (зарезались фронты на MDIO ).Проверял на LPC2468 и LPC2478, работает одинаково коряво. Решил проблему реализацией программного интерфейса.
Ревизия процессора LPC2468 самая последняя, произведен в этом году. Если необходимо могу выложить фотки с осциллографа.
Проект ещё реализован не до конца. Ожидаю новых проблем.
Go to the top of the page
 
+Quote Post
scifi
сообщение Jun 24 2011, 07:20
Сообщение #4


Гуру
******

Группа: Свой
Сообщений: 3 020
Регистрация: 7-02-07
Пользователь №: 25 136



Цитата(Sanya_kv @ Jun 24 2011, 10:18) *
Появилась необходимость управлять 5 вольтовой логикой. Самое простое это задействовать выход открытым коллектором (Open-drain) с резистором на 5в.

Зачем так сложно? Ваша 5В логика не воспринимает уровень 3,3В?
Go to the top of the page
 
+Quote Post
Sanya_kv
сообщение Jun 24 2011, 07:23
Сообщение #5


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

Группа: Свой
Сообщений: 185
Регистрация: 25-02-09
Из: Россия
Пользователь №: 45 369



Цитата(scifi @ Jun 24 2011, 11:20) *
Зачем так сложно? Ваша 5В логика не воспринимает уровень 3,3В?

Именно 3,5 порог логической 1.
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Jun 24 2011, 07:24
Сообщение #6


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Можно подумать, что у атмелов честный open drain есть. Наоборот, с ним возникают проблемы из-за включенных по умолчанию pull-up'ов.
А эмулировать OD не составляет труда на любом процессоре с 5V tolerant IO.
Go to the top of the page
 
+Quote Post
Sanya_kv
сообщение Jun 24 2011, 07:30
Сообщение #7


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

Группа: Свой
Сообщений: 185
Регистрация: 25-02-09
Из: Россия
Пользователь №: 45 369



Цитата(aaarrr @ Jun 24 2011, 11:24) *
Можно подумать, что у атмелов честный open drain есть.

регистр PIO_MDER.
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Jun 24 2011, 07:34
Сообщение #8


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Цитата(Sanya_kv @ Jun 24 2011, 11:30) *
регистр PIO_MDER.

И что? Его использование ничем не отличается от эмуляции OD через выставление '0' на данные и переключение направления. Схему в мануале посмотрите.
Go to the top of the page
 
+Quote Post
scifi
сообщение Jun 24 2011, 07:39
Сообщение #9


Гуру
******

Группа: Свой
Сообщений: 3 020
Регистрация: 7-02-07
Пользователь №: 25 136



Цитата(Sanya_kv @ Jun 24 2011, 11:23) *
Именно 3,5 порог логической 1.

Семейство 74HCT имеет TTL-совместимые входы, они же совместимы с КМОП-3,3.
Go to the top of the page
 
+Quote Post
Sanya_kv
сообщение Jun 24 2011, 07:43
Сообщение #10


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

Группа: Свой
Сообщений: 185
Регистрация: 25-02-09
Из: Россия
Пользователь №: 45 369



Цитата(aaarrr @ Jun 24 2011, 11:34) *
И что? Его использование ничем не отличается от эмуляции OD через выставление '0' на данные и переключение направления. Схему в мануале посмотрите.

Смотрю AT91SAM7S (12.2008) - 27.4 Functional Description. Figure 27-3. I/O Line Control Logic
Вы правы частично (50%).
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Jun 24 2011, 07:46
Сообщение #11


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Цитата(Sanya_kv @ Jun 24 2011, 11:43) *
Вы правы частично (50%).

Это как? Поясните, пожалуйста.
Go to the top of the page
 
+Quote Post
Sanya_kv
сообщение Jun 24 2011, 07:53
Сообщение #12


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

Группа: Свой
Сообщений: 185
Регистрация: 25-02-09
Из: Россия
Пользователь №: 45 369



Цитата(scifi @ Jun 24 2011, 11:39) *
Семейство 74HCT имеет TTL-совместимые входы, они же совместимы с КМОП-3,3.

Спасибо, проблему поздно обнаружил, вначале опирался на LPC17 , при разводке забили 24-е я предполагал, что там все тоже. В любом случае ошибка больше моя.
Из NXP ответили:
Цитата
This is not possible, it's a typo in the datasheet. The only real open drain outputs are the I2C pins.

Насчет MIIM пока молчат.


Цитата(aaarrr @ Jun 24 2011, 11:46) *
Это как? Поясните, пожалуйста.

" и переключение направления." - Здесь Вы не правы.
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Jun 24 2011, 08:01
Сообщение #13


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Цитата(Sanya_kv @ Jun 24 2011, 11:53) *
" и переключение направления." - Здесь Вы не правы.

И в чем же именно? Электрически - одно и то же, с точки зрения программирования лучше выбрать именно такой способ, как заведомо более универсальный.
Go to the top of the page
 
+Quote Post
Sanya_kv
сообщение Jun 24 2011, 08:07
Сообщение #14


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

Группа: Свой
Сообщений: 185
Регистрация: 25-02-09
Из: Россия
Пользователь №: 45 369



Цитата(aaarrr @ Jun 24 2011, 12:01) *
И в чем же именно? Электрически - одно и то же, с точки зрения программирования лучше выбрать именно такой способ, как заведомо более универсальный.

Теперь согласн.

Но направление не переключается.
Просто выход переводится в 3-е состояние при лог-й 1.
И способ ваш на мой взгляд не такой уж и надежный.
Привожу схему входа выхода Atmel:

Эскизы прикрепленных изображений
Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Jun 24 2011, 09:10
Сообщение #15


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Цитата(Sanya_kv @ Jun 24 2011, 12:07) *
Но направление не переключается.
Просто выход переводится в 3-е состояние при лог-й 1.

Переключение направления и перевод в 3-е состояние - это одно и то же в данном случае.

Цитата(Sanya_kv @ Jun 24 2011, 12:07) *
И способ ваш на мой взгляд не такой уж и надежный.
Привожу схему входа выхода Atmel:

Я, конечно, ценю лаконичность, но не до такой же степени. Поясните свою мысль про надежность.
Go to the top of the page
 
+Quote Post
Sanya_kv
сообщение Jun 24 2011, 09:18
Сообщение #16


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

Группа: Свой
Сообщений: 185
Регистрация: 25-02-09
Из: Россия
Пользователь №: 45 369



Цитата(aaarrr @ Jun 24 2011, 13:10) *
Я, конечно, ценю лаконичность, но не до такой же степени. Поясните свою мысль про надежность.

Некогда. Если у Вас есть время, докажите обратное.
На подходе ещё касяк от NXP, выложу когда производитель подтвердит.
Для меня на Atmel свет клином не сошёлся, Просто для примера.
Go to the top of the page
 
+Quote Post
zltigo
сообщение Jun 24 2011, 09:31
Сообщение #17


Гуру
******

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



QUOTE (Sanya_kv @ Jun 24 2011, 10:18) *
Только 2 ножки. Кушайте наздоровье.

Трудно быть непонятливым sad.gif - у NXP это действительно честные OD - они OD даже без подачи питания на контроллер. А у Atmel такого нет - сюрприз! Про то, как создать "Атмеловский" OD у NXP Вам уже рассказали. Бред про "надежность" и "Некогда. Если у Вас есть время, докажите обратное" не пройдет.


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
Sanya_kv
сообщение Jun 24 2011, 10:40
Сообщение #18


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

Группа: Свой
Сообщений: 185
Регистрация: 25-02-09
Из: Россия
Пользователь №: 45 369



У кого ни будь есть возможность в режиме отладки проверить смену логического состояния вывода на 2-м порту выводы с 0 по 7, на процессоре LPC2468FBD208?. У меня ножки управляются только в не отладочном режиме (не jtag). На ножках ни чего не висит (пока не подключено). Думал камень битый, перепаял та же картина. Может там нужно в какой ни-будь регистр что-то прописать? Среда Кеил. У процессора LPC2478FET208, второй порт работает нормально не зависимо от режима.
Заранее спасибо.
Go to the top of the page
 
+Quote Post
zltigo
сообщение Jun 24 2011, 11:44
Сообщение #19


Гуру
******

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



QUOTE (Sanya_kv @ Jun 24 2011, 13:40) *
У кого ни будь есть возможность в режиме отладки проверить смену логического состояния вывода на 2-м порту выводы с 0 по 7

Не 0...7, а 0...9. Надо срочно написать в Спортолто NXP, что у них ETM активизируется не так, как Вам хочется. Путь ответят как его отключить, не читая документации.
Особо отметьте "Выбрали NXP теперь жалею", "На подходе ещё касяк от NXP" и "Ожидаю новых проблем" для того, что-бы там не расслаблялись sm.gif.


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
Sanya_kv
сообщение Jun 24 2011, 12:29
Сообщение #20


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

Группа: Свой
Сообщений: 185
Регистрация: 25-02-09
Из: Россия
Пользователь №: 45 369



Цитата(zltigo @ Jun 24 2011, 15:44) *
Не 0...7, а 0...9. Надо срочно написать в Спортолто NXP, что у них ETM активизируется не так, как Вам хочется.

Спасибо помогли, дествительно PINSEL10 == 0x08. А то все мозги себе сломал.

zltigo Может Вы ещё знаете, отчего на ножках стоит питание 2,2 – 2,3в когда они в 3-м состоянии? (PINMODEx == 00). Моя благодарность будет безграничной.
Go to the top of the page
 
+Quote Post
zltigo
сообщение Jun 24 2011, 12:54
Сообщение #21


Гуру
******

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



QUOTE (Sanya_kv @ Jun 24 2011, 15:29) *
zltigo Может Вы ещё знаете, отчего на ножках стоит питание 2,2 – 2,3в когда они в 3-м состоянии?

А что там должно быть на входе? Оно там не "стоит". Из воздуха можете наменять что угодно.


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
Sanya_kv
сообщение Jun 24 2011, 13:06
Сообщение #22


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

Группа: Свой
Сообщений: 185
Регистрация: 25-02-09
Из: Россия
Пользователь №: 45 369



Цитата(zltigo @ Jun 24 2011, 16:54) *
Оно там не "стоит". Из воздуха можете наменять что угодно.

Но подтяжка по питанию есть PINMODE2 == 00b;
Если PINMODE2 установить = 10b, то на ножке 0 вольт. У меня единственное предположение - Резистор стоит на 2,3 вольта.
Go to the top of the page
 
+Quote Post
scifi
сообщение Jun 24 2011, 13:16
Сообщение #23


Гуру
******

Группа: Свой
Сообщений: 3 020
Регистрация: 7-02-07
Пользователь №: 25 136



Цитата(Sanya_kv @ Jun 24 2011, 16:29) *
отчего на ножках стоит питание 2,2 – 2,3в когда они в 3-м состоянии? (PINMODEx == 00).

Как измеряем?
Go to the top of the page
 
+Quote Post
zltigo
сообщение Jun 24 2011, 13:28
Сообщение #24


Гуру
******

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



QUOTE (Sanya_kv @ Jun 24 2011, 16:06) *
Но подтяжка по питанию есть PINMODE2 == 00b;

Ну так-бы и написали, что включили pull-up.
QUOTE
У меня единственное предположение - Резистор стоит на 2,3 вольта.

Вы не поверите, но там не резистор, а источник тока. Причем маленького, например, 15uA. А какой ток потребляет Ваш измеритель?


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
ViKo
сообщение Jun 24 2011, 13:58
Сообщение #25


Универсальный солдатик
******

Группа: Модераторы
Сообщений: 8 634
Регистрация: 1-11-05
Из: Минск
Пользователь №: 10 362



Цитата(zltigo @ Jun 24 2011, 16:28) *
Вы не поверите, но там не резистор, а источник тока. Причем маленького, например, 15uA.

Там, скорее всего, как недавно обсуждалось в теме про PIC'и и реле, стоит МОП-транзистор (с достаточно большим сопротивленим, в данном случае). Создавать настоящий источник тока нет смысла.
Ну и, вместе с сопротивлением измеряющего прибора образуется делитель напряжения.
Go to the top of the page
 
+Quote Post
zltigo
сообщение Jun 24 2011, 14:04
Сообщение #26


Гуру
******

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



QUOTE (ViKo @ Jun 24 2011, 16:58) *
Там, скорее всего, как недавно обсуждалось в теме про PIC'и и реле, стоит МОП-транзистор.....

Простейший источник тока это и есть МОП-транзистор. "Настоящим", там естественно, и не пахнет за ненадобностью.


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
Sanya_kv
сообщение Jun 24 2011, 15:07
Сообщение #27


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

Группа: Свой
Сообщений: 185
Регистрация: 25-02-09
Из: Россия
Пользователь №: 45 369



Цитата
Ну так-бы и написали, что включили pull-up.
Он там включен по умолчанию.
Мерил осциллографом и тестером. Нога в воздухе. Сам удивляюсь. cranky.gif Полопачу описание, может че и нарою.
Как идея, напряжение ядра случайно не 2,3 вольта biggrin.gif .
Go to the top of the page
 
+Quote Post
zltigo
сообщение Jun 24 2011, 15:29
Сообщение #28


Гуру
******

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



QUOTE (Sanya_kv @ Jun 24 2011, 18:07) *
Он там включен по умолчанию.

Не всегда и не для всех.
QUOTE
Как идея, напряжение ядра случайно не 2,3 вольта biggrin.gif .

Хватит выкатывать глупые идеи. Включите явно подтяжки и воспользуйтесь прибором с ИЗВЕСТНЫМ входным сопротивлением.
Питание ядра, для общего Вашего развития, никак не более 1,8V


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
scifi
сообщение Jun 24 2011, 15:38
Сообщение #29


Гуру
******

Группа: Свой
Сообщений: 3 020
Регистрация: 7-02-07
Пользователь №: 25 136



Цитата(Sanya_kv @ Jun 24 2011, 19:07) *
Нога в воздухе.

Воздух ионизированный, вот и проводит :-)
Если есть флюс или иная грязь, тоже может утекать. Ну и порт может пробиться, но там обычно симптомы посерьёзнее.
Go to the top of the page
 
+Quote Post
ViKo
сообщение Jun 24 2011, 18:02
Сообщение #30


Универсальный солдатик
******

Группа: Модераторы
Сообщений: 8 634
Регистрация: 1-11-05
Из: Минск
Пользователь №: 10 362



По-моему, у меня было что-то подобное с STM32. Пока такты на порт не завел. Может, было и по другой причине, типа, режима аналоговых входов. В-общем, после нормальной настройки режима все стало на место.
Go to the top of the page
 
+Quote Post
Sanya_kv
сообщение Jun 27 2011, 04:31
Сообщение #31


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

Группа: Свой
Сообщений: 185
Регистрация: 25-02-09
Из: Россия
Пользователь №: 45 369



У LPC2478 та же история 2,3 в. Мерил осциллографом, в разных режимах.
Go to the top of the page
 
+Quote Post

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

 


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


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