Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: JTAG Wiggler
Форум разработчиков электроники ELECTRONIX.ru > Сайт и форум > В помощь начинающему > ARM, 32bit
Страницы: 1, 2, 3
drova326
Цитата(Raven @ Jul 15 2013, 22:22) *
Вот как раз и возможно, что вы батарейкой добрую часть телефона запитали. Чтобы исключить этот фактор, следует поступить, как ReaL (см. диод VD3 в схеме байт-бластера, там где-то и объяснение есть, зачем):

Эмммм... т.е. между питающей батарейкой и плюсовым входом поставить диод, анодом к батарейке (к +)...
Что то не понятно... у схемы РеаЛ один VCC идет в JTAG разъем, а перед другим висит диод... я так понял от верхнего, который возле диода, питание идет на сам программатор, а тот что в разъеме JTAG питает устройство?? Или наоборот... оооой, что то совсем запутался ((( В общем куды мне диод то впаять нужно?
Нажмите для просмотра прикрепленного файла
так?
Raven
Вот чтиво на русском:
Статья о тестерах COM & LPT (с красивым картинками)
Вам отсюда в самый раз будет полезен XP_LPT (в дебри еще успеете залезть). Здесь первоисточник: сайт автора чудо-софтины.

Вот альтернативы:
Нашего человека
Зарубежного человека

А также, я думаю, будет полезно почитать описание экспериментов новичка, прошедшего через все и разобравшегося (полезно и для аппаратного, и для программного новичка):
Наш человек
Приключения индийского человека John Bibin'а с LPT


Цитата(drova326 @ Jul 15 2013, 15:49) *

Да, именно так. При этом батарейка предполагается где-то на стороне кабеля/чипа. Если напряжение со стороны телефона меньше напряжения на батарее (например, 0 В sm.gif), диод запирается и не дает питать телефон от кабеля.

Диод нужен с малым прямым падением напряжения (это если все-таки потребуется его от телефона питать, если только проверить, чего это батарейка садится - тогда и кремниевый сойдет) - диод Шоттки, на худой конец - германиевый (только допустимый прямой ток, конечно, должен соответствовать ситуации).
drova326
Спасибо за ссылки, на работе почитаю.
А вот про диод...
Цитата(Raven @ Jul 15 2013, 23:50) *
При этом батарейка предполагается где-то на стороне кабеля/чипа

1)ну, т.е. мы как раз к этому 14 пину подпаиваем батарею?
2)не могли бы указать какой именно лучше всего подойдет? мне без разницы за каким идти в магазин, но хотелось бы поставить наиболее подходящий, а в характеристиках я не шарю (
3)я к сожалению так и не понял почему диод не дает запитываться телефону от батареи. Предположим я подпаял к 14ому пину батарейку через диод. Ток идет через этот диод к виглеру и соответсвенно питает телефон => батарея садится. Какой же прок тогда от диода? Понимаю что "истина где то рядом", но что то не складывается в голове, какого то кирпичика не хватает (((
Нажмите для просмотра прикрепленного файла
получается к 14ому пину подпаиваем батарею, она через диод питает виглер а откуда питается телефон - точка 1 или точка 2?
energizer
Цитата(drova326 @ Jul 15 2013, 14:00) *
///////\\\\\ Процессор arm6 в телефоне... MSM7227... я рассчитывал(рассчитываю до сих пор), что восстановление не должно отличаться от восстановления других телефонов на том же процессоре. Благо статейки вроде есть, примерно что да как)
//////\\\\\\

вот тут могут и возникнуть траблы- этот контроллер конечно имеет ядро arm - и конечно понимает все инструкции отладчика (NOICE -к примеру очень удобен) но проблема в том что это nand контроллер - на который доки в части софтваря интерфейса мне не встречалось по крайней мере в открытом доступе /
если и возможно поднимать такое тело то только пока (на сегодняшний день) загрузчиком выпиленным из родного софта и запущенным в ram /- но эта метода имеет свои ограничения и скорее всего в некоторых вариантах может не прокатить..
напрямую записать фуллфлеш в NAND (или может быть OneNAND) не получится без написания спец флешера
- а такого флешера для вигглера пока нет в природе-
на сегодня есть только коробочные (коммерческие) решения типа Риффбокс Октопулос Омния итд итп - стоимость коих скорее всего выше стоимости девайса на контроллере этого поколения ( S1 -снапдрагон от Кваллкомма ) .. и даже стоимость услуг тех кто ими владеет все равно как правило выше стоимости девайса..
В любом случае мне интересно что и как будет с Вашим телепоном ;-)
если что не будет получаться то помогу в меру сил- кое что в этом контроллере очень похоже на предыдущее поколение (QSC6240/70 & QSC6255/85) для которого я некоторое время все таки написал бесплатный флешер под вигглер и под Ваш камень тоже наверное мог бы написать -если бы он у меня был - но у меня нет пока такого железа - а там нужно многое доводить методом высоконаучного тыка и сидением на пятой точке перед контроллером.. доков то ведь нет :-(
кстати если память мне не изменяет то эти контроллеры выпускались в том числе на питающее (и уровни житага тоже) 1.8 вольта .. посмотрите на всяк случай тестером без вигглера что там на ногах.. по моему такой контроллер маркировался в конце буквой 7227-А .. но могу заблуждаться
drova326
Цитата(energizer @ Jul 16 2013, 01:09) *
если и возможно поднимать такое тело то только пока (на сегодняшний день) загрузчиком выпиленным из родного софта и запущенным в ram /

То то и оно!!! ))) На текущий момент телефон убит программно, в бутлодер по случайности зашил данные от другого аппарата. Так вот, телефон не откликается ни на какие кнопки, но с помощью виглера я собираюсь вывести телефон в режим загрузки прошивки, т.е. как вы и сказали загрузить бутлодер в рам, после чего передать управление самой программе-флешеру) благо фул дамп на аппарат найти не сложно)

Цитата(energizer @ Jul 16 2013, 01:09) *
кстати если память мне не изменяет то эти контроллеры выпускались в том числе на питающее (и уровни житага тоже) 1.8 вольта .. посмотрите на всяк случай тестером без вигглера что там на ногах.. по моему такой контроллер маркировался в конце буквой 7227-А .. но могу заблуждаться

У меня MSM7227T - это аппаратно разогнанный MSM7227.
Raven
Цитата(drova326 @ Jul 15 2013, 17:53) *
А вот про диод...
1)ну, т.е. мы как раз к этому 14 пину подпаиваем батарею?
.....

Нажмите для просмотра прикрепленного файла
получается к 14ому пину подпаиваем батарею, она через диод питает виглер а откуда питается телефон - точка 1 или точка 2?

Да нет же, батарею подключаем к VCC кабеля (+ батареи на точку 2 из последней картинки), а питание телефона - к пину 14. Но вы все же проверьте, а какое все-таки у него (у чипа в телефоне) VCC_IO? Действительно ли 3.3V? Вдруг меньше? Тогда баловство с батарейкой может боком вылезти (уровни-то на телефон пойдут 3-вольтовые!). Вот чтобы такого не было, и питают кабельный чип от VCC_IO целевого чипа - тогда проблем не должно быть. Диод, правда, и в этом случае не мешает.


Цитата(drova326 @ Jul 15 2013, 17:53) *
2)не могли бы указать какой именно лучше всего подойдет? мне без разницы за каким идти в магазин, но хотелось бы поставить наиболее подходящий, а в характеристиках я не шарю (

BAT54 подойдет, например. Только смотрите подключение (содержимое зависит от буквенного индекса).
drova326
Цитата(Raven @ Jul 16 2013, 02:15) *
Но вы все же проверьте, а какое все-таки у него (у чипа в телефоне) VCC_IO? Действительно ли 3.3V? Вдруг меньше? Тогда баловство с батарейкой может боком вылезти (уровни-то на телефон пойдут 3-вольтовые!). Вот чтобы такого не было, и питают кабельный чип от VCC_IO целевого чипа - тогда проблем не должно быть.

Среди неподпаянных контактов на телефоне есть Vref... Этот Vref и есть VCC_IO? мне нужно подсоединить батарею к телефону и проверить какое напряжение на этом контакте и по возможности запитывать виглер от контактов Vref/GND а не напрямую от батарейки?
Raven
Цитата(drova326 @ Jul 16 2013, 03:02) *
Среди неподпаянных контактов на телефоне есть Vref... Этот Vref и есть VCC_IO? мне нужно подсоединить батарею к телефону и проверить какое напряжение на этом контакте и по возможности запитывать виглер от контактов Vref/GND а не напрямую от батарейки?

Да, похоже, это то самое. Кстати, какое там напряжение?
drova326
Цитата(Raven @ Jul 16 2013, 17:38) *
Да, похоже, это то самое. Кстати, какое там напряжение?

Подъсоединил батарейку, смерил Vref/GND - 0В. Я и так и сяк, думал не туда мы с вами копнули. Уже было расстроился. Но потом русская смекалка дала о себе знать... нажал кратковременно на телефоне кнопку включения и напряжение появилось... 2.6 вольта... жаль конечно, что это не 3.3. Каков теперь план действий, если я все таки решил запитаться от этого Vref? перепаять ИC на другую? Хотяяяяя, как я понял данная ИС и от 2х вольт должна работать... В общем будет ли комфортно виглеру работать от имеющегося напряжения? если да, то можно оставить идею с диодом и запитывать виглер от данных разъемов и не переживать что он что то там себе тянет?
Raven
Цитата(drova326 @ Jul 16 2013, 14:29) *
Подъсоединил батарейку, смерил Vref/GND - 0В. Я и так и сяк, думал не туда мы с вами копнули. Уже было расстроился. Но потом русская смекалка дала о себе знать... нажал кратковременно на телефоне кнопку включения и напряжение появилось... 2.6 вольта...

sm.gif

Цитата(drova326 @ Jul 16 2013, 14:29) *
2.6 вольта... жаль конечно, что это не 3.3. Каков теперь план действий, если я все таки решил запитаться от этого Vref? перепаять ИC на другую? Хотяяяяя, как я понял данная ИС и от 2х вольт должна работать... В общем будет ли комфортно виглеру работать от имеющегося напряжения?

Скорее всего, ваша HC244, кто бы ее ни произвел, имеет диапазон рабочих напряжений что-то 1.8V .. 5V. Но не помешает и проверить. Производитель/полное название вашего чипа какое? Так что будем надеяться, перепаивать и менять ничего не придется. А насчет питания от целевого устройства - так ведь Wiggler так и задумывался!

Цитата(drova326 @ Jul 16 2013, 14:29) *
если да, то можно оставить идею с диодом и запитывать виглер от данных разъемов и не переживать что он что то там себе тянет?

Если уже есть рекомендованный диод, держите под рукой (на втором этапе можно будет и попробовать). Но начинать с диодом, конечно, при питании 2.6V я бы не стал - даже если прямое падение 0.3-0.4 V, разница может оказаться существенной для неусточивости распознавания лог.1. А ток все же померяйте.
energizer
наверное все будет работать .. если конечно сам порт lpt поймет уровни (вполне возможно потребуется снизить сопротивление резисторов между буфером и lpt - дело в том что вы в своем интерфейсе используете просто буффер - а не преобразователь логических уровней - я например работал с контроллерами питающимися 2.6 вольта обычным резисторным (не буфферным) вигглером без всяких проблем- но у меня нет стандартного порта и по этому я использую расширение pci-2-lpt и резисторы я поставил все по 33 ома -просто других небыло под рукой - да еще не просто резисторы а резисторные сборки- 33x4 - смотрится смешно -но работает // адресс порта конечно не стандартный.. так вот мой порт работает прекрасно с таргетами на 3.3 и 2.6 вольта - более низкие подключать без ПУ не рискую..
на самом деле интерес представляет для таких (2.6 и менее ) преобразователь уровней - я например с оказией уже купил -http://www.einfo.ru/catalog/comp-4351606.html наверное самые удачные для таких целей // пока не паял их потому как до сих пор не могу разобраться с софтовой частью относящейся к двухядерным контроллерам в своем коде -вот добьюсь от пинфаиндера правильных развед данных о длине цепи и длине регистров для многокоров тогда и возьму паяло в руки -хорошо что у Вас проц не такой ;-)

аппдейт =посмотрел схему которую Вы собирали- а там и так уже стоят совсем низкоомные резисторы и уменьшать их просто некуда :-)) значит скорее всего будет работать ;-)
drova326
Цитата(Raven @ Jul 16 2013, 21:53) *
Производитель/полное название вашего чипа какое?

JAPAN 20H
74HC244AP

Цитата(Raven @ Jul 16 2013, 21:53) *
А ток все же померяйте.

когда подключаю сначала около 6мА, но дальше больше... через некоторое время потребляемый ток доходит до 50мА... дальше ждать не стал, но тенденция вроде сохранилась (((

Ух ты ёёёёёёжик.... кажется появилась зацепка что не так и почему потребляемый ток такой высокий)))) я светодиод, который показывает наличие напряжения на разъемах подсоединил через резистор на 100 ом, а нун было через 1К ((( Однако перепайка не помогла... ща на тестере уже дошол до 90 мА потребляемый ток((((
2energizer, хм, я тоже натыкался на схемы где только резисторы использовались, но что то захотелось чтото "посерьезнее" )))
Raven
Что-то у вас там еще завелось. Ток явно ненормальный.

Для начала отключите все от кабеля с обеих сторон - и LPT, и телефон. Проверьте ТЩАТЕЛЬНО свою схему и как вы все запаяли (особенно полярности и правильность подключения выводов микросхемы). Если все ОК, затем подайте каким-нибудь образом нужное напряжение (от той же батарейки пока, например). И проверяйте тестером, куда этот ток идет, по составляющим.
drova326
2Raven, а вы уверены, что ножки 13, 15, 17 нужно было на землю бросать? а ножки 3, 5, 7 так и оставлять "ввоздухе"?
Raven
Цитата(drova326 @ Jul 16 2013, 16:54) *
2Raven, а вы уверены, что ножки 13, 15, 17 нужно было на землю бросать? а ножки 3, 5, 7 так и оставлять "ввоздухе"?

Да

У вас в Вигглере на +VCC подключен электролитический кондер? Какой? Полярность его не перепутали случайно?
drova326
Цитата(Raven @ Jul 17 2013, 00:05) *
У вас в Вигглере на +VCC подключен электролитический кондер? Какой? Полярность его не перепутали случайно?

танталовый... Ааааааа... у них чего, полоской ПЛЮС обознают? Ааааа twak.gif


Рэйван, Вы гений)))) сейчас потребляемый ток составляет 1.2 мА и он стоит на месте
Raven
Уж больно тенденция характерная sm.gif В общем, чудеса разъяснились, к счастью..

В свете небольшого VCC возможны проблемы с распознаванием компьютерным LPT сигнала TDO (может малость не дотянуть до TTL лог.1). На эту напасть, правда, можно предложить обходной маневр - имитацию буфера с открытым коллектором с помощью буфера с третьим состоянием. Но придется что-то подпаять, что-то подрезать на платке sm.gif

Но вначале все-таки поэкспериментируйте с комбинацией PC-LPT-Wiggler (с помощью программки, которую я выше рекомендовал - какой-нибудь LPT тестер). Сигналы со стороны телефона будете имитировать подключением проводков к земле и VCC (собственно, сигнал один - TDO).
drova326
Я, кстати, когда смотрел на растущий ток тоже грешил на кондер... но до последнего думал что полоской обозначается МИНУС (по аналогии с обычными электролитическими)... ктож знал... Знать бы еще что подпаивать... но думаю вы поможете разобраться... а эта модернизация нужна только в том случае, если питания будет недостаточно? я же могу заранее модернизировать? чтобы к тому моменту как появится комп с ЛПТ и ВинХП уже быть готовым? в общем хочется на момент подключения иметь максимально надежную схему, без "может малость не дотянуть"? И как кстати я узнаю о том, что ТДО не распознается?
И еще вопрос: я сигнал SRST подключил через переключатель (ака джампер). Так вот, если джампер стоит, то схема не запускается... Т.е. убрал джампер, запустил - на Vref появилось напряжение... стоит замкнуть джампер, как телефон отключает питание... теперь если с подсоединенным джампером нажмем кнопу включения телефона - телефон выдает Вреф только пока эту кнопку держим... Стоит отпустить - напряжение пропадает. Снова убираем джампер и теперь опять можем включить схему нажав кнопку Power и отпустив ее
energizer
кстати в качестве анализатора сигналов lpt который может работать на платформах отличных от 32 XP можно использовать 17 Channel Logic Analyzer он использует не giveio драйвер который малость устарел, а PortTalk более современный .. однако к сожалению почти весь софт который я видел для вигглера использует именно giveio и за редким исключением winIO - так что анализатор только для проверки пойдет для работы с таргетом потребуется машинка на XP 32 бита.
Raven
Цитата(drova326 @ Jul 16 2013, 17:45) *
а эта модернизация нужна только в том случае, если питания будет недостаточно? я же могу заранее модернизировать?

Конечно, можете. Доработка будет работать в обоих случаях - и для 3.3V, и для низкого (+2.5, +1.8 V). У нее один минус при использовании HC244 (да и то виртуальный) - она сделает невозможным использование для чего-то еще всех оставшихся буферов того же направления, что буфер для TDO. Поскольку будет использовать в качестве входа пин 19 (Output Enable для всей этой линейки буферов). Но, поскольку эти буферы в данной схеме все-равно не используются, мы это переживем.

Цитата(drova326 @ Jul 16 2013, 17:45) *
чтобы к тому моменту как появится комп с ЛПТ и ВинХП уже быть готовым?

Я думал, у вас соответствующий комп уже наготове sm.gif

Цитата(drova326 @ Jul 16 2013, 17:45) *
в общем хочется на момент подключения иметь максимально надежную схему, без "может малость не дотянуть"? И как кстати я узнаю о том, что ТДО не распознается?

Вот для этого-то я и рекомендую начать с тестирования/отладки связки LPT-Wiggler, без телефона/процессора пока. Проверьте, что у вас все сигналы-переключения проходят в обоих направлениях, уровни распознаются и т.п. А поможет рулить уровнями и вычитывать данные LPT упоминавшаяся программа-тестер.

Цитата(drova326 @ Jul 16 2013, 17:45) *
И еще вопрос: я сигнал SRST подключил через переключатель (ака джампер). Так вот, если джампер стоит, то схема не запускается... Т.е. убрал джампер, запустил - на Vref появилось напряжение... стоит замкнуть джампер, как телефон отключает питание... теперь если с подсоединенным джампером нажмем кнопу включения телефона - телефон выдает Вреф только пока эту кнопку держим... Стоит отпустить - напряжение пропадает. Снова убираем джампер и теперь опять можем включить схему нажав кнопку Power и отпустив ее

Не совсем понятно, как же все это около-SRST-шное добро подключено у вас: и около джампера, и к чему вы его в телефоне подключили.
energizer
на счет сигнала srst - я бы не особенно парился пока - практически все прграммы которые вам могут подойти могут этот сигнал инвертировать..
кстати как показала практика этот сигнал иногда оочень нужен что бы втормозить контроллер в дебаге на "нужном" месте
но об это видимо Вы узнаете чуть позже- и по правде сказать я не думаю что восстановление будет простым делом
наверное всетаки лучше иметь свой компутер с lpt // сдается мне что быстро не получится ;-)
я только очень Вас попрошу до начала экспериментов с загрузчиками и прочими способами восстановления
сдампить из контроллера область с 0хA0A00000 длиной 400 - а еще лучше сделать скрин шот экрана NOICE на которм будет видно эту область в 32 битном предствалени
-так она читается намного удобнее.
drova326
Цитата(energizer @ Jul 17 2013, 03:55) *
я только очень Вас попрошу до начала экспериментов с загрузчиками и прочими способами восстановления
сдампить из контроллера область с 0хA0A00000 длиной 400 - а еще лучше сделать скрин шот экрана NOICE на которм будет видно эту область в 32 битном предствалени
-так она читается намного удобнее.

Хорошо, обязательно так и сделаю)
Цитата(Raven @ Jul 17 2013, 01:49) *
Конечно, можете. Доработка будет работать в обоих случаях - и для 3.3V, и для низкого (+2.5, +1.8 V)

Тогда интересно было бы глянуть в чем конкретно заключается доработка, так сказать мануал что куда)))
Цитата(Raven @ Jul 17 2013, 01:49) *
Я думал, у вас соответствующий комп уже наготове sm.gif

Так и есть... Помимо рабочего компа есть еще 2... один от товарища принес, один свой собственный, оба с ЛПТ портами... Но на одном стоит линукс, а на втором Вин7 х64... Проблема за малым - впихнуть на один из них винХП.
Цитата(Raven @ Jul 17 2013, 01:49) *
Вот для этого-то я и рекомендую начать с тестирования/отладки связки LPT-Wiggler, без телефона/процессора пока. Проверьте, что у вас все сигналы-переключения проходят в обоих направлениях, уровни распознаются и т.п. А поможет рулить уровнями и вычитывать данные LPT упоминавшаяся программа-тестер.

Каков принцип тестирования? - подключаем виглер к ЛПТ, после чего пины на JTAG клацаем по VCC (1) и GND (0)? Или только ТДО сигнал таким образом проверяем?
Цитата(Raven @ Jul 17 2013, 01:49) *
Не совсем понятно, как же все это около-SRST-шное добро подключено у вас: и около джампера, и к чему вы его в телефоне подключили.

У телефона есть SRST пин, я к нему подключил SRST пин от виглера... может проще будет если я рисунок приложу?
Нажмите для просмотра прикрепленного файла
По схеме видно, что в замкнутом положении переключатель соединяет коллектор транзистора через 100 Ом с пином SRST, который подпаян к пину SRST на телефоне, а вторая пара контактов подсоединяет светодиод (верхний) параллельно тому, который сигнализирует о наличии питания на контактах питания (нижний)... Эт я делал исключительно из эстетических соображений-мол о подключении SRST пина будет свидетельствовать второй загоревшийся светодиод.
Вообще, если вспомнить университетский курс схемотехники то если не изменят память пока 2ой пин ЛПТ порта "висит в воздухе" (не подключил я его), т.е. не обеспечивается эмитерное смещение, наш транзистор закрыт и о протекании тока через коллектор-эмиттер речи не идет. Т.е. на STRS должен 0 висеть, почему же тогда телефон сбрасывается при подключении? или нулем и нужно сбрасывать? просто в моем понимании 1 это и есть управляющее воздействие... хотя если не изменяет все та же бедная память - единицей наличия сигнала принято считать как раз 0, там что то с уменьшением вероятности ошибки... хотя может вообще не в те дебри полез)
Цитата(Raven @ Jul 16 2013, 21:53) *
Так что будем надеяться, перепаивать и менять ничего не придется.

А если бы использовалась 74АС244, для питания от 2.6 она лучше бы подошла? Ну, т.е. какой схемой в идеале нужно заменить текущую, чтобы быть уверенным что будет работать без проблем? Изменять номиналы резисторов не пришлось бы? Или замена на более маломощную ИС не решит проблему с нераспозноваемостью ТДО сигнала? Просто приятелю такая штука тоже бы пригодилась, т.е. в перспективе собрать еще один экземпляр, учитывая опыт работы над этим.
Raven
Цитата(drova326 @ Jul 17 2013, 00:52) *
Так и есть... Помимо рабочего компа есть еще 2... один от товарища принес, один свой собственный, оба с ЛПТ портами... Но на одном стоит линукс, а на втором Вин7 х64... Проблема за малым - впихнуть на один из них винХП.

Надеюсь, вы остановите выбор на 32-битной WinXP sm.gif (а то ведь есть и слегка экзотичная WinXP x64). Тем самым у вас будет наиболее широкий выбор программных средств для дальнейших экспериментов.

Цитата(drova326 @ Jul 17 2013, 00:52) *
Каков принцип тестирования? - подключаем виглер к ЛПТ, после чего пины на JTAG клацаем по VCC (1) и GND (0)? Или только ТДО сигнал таким образом проверяем?

Проверить можно будет прохождение 0-й и 1-ц по всем сигналам, как в направлении LPT => JTAG Header (TMS, TCK, TDI, nTRST, nSRST), так и JTAG => LPT (TDO). Со стороны PC/LPT выставлять сигналы и считывать их будет программа-тестер (под вашим чутким руководством, конечно), а проверять реальные уровни (для направления LPT=>JTAG) и выставлять сигналы (для JTAG=>LPT) вы будете вручную, с помощью тестера и проводков (к VCC и GND).

Цитата(drova326 @ Jul 17 2013, 00:52) *
У телефона есть SRST пин, я к нему подключил SRST пин от виглера... может проще будет если я рисунок приложу?
Нажмите для просмотра прикрепленного файла
По схеме видно, что в замкнутом положении переключатель соединяет коллектор транзистора через 100 Ом с пином SRST, который подпаян к пину SRST на телефоне, а вторая пара контактов подсоединяет светодиод (верхний) параллельно тому, который сигнализирует о наличии питания на контактах питания (нижний)... Эт я делал исключительно из эстетических соображений-мол о подключении SRST пина будет свидетельствовать второй загоревшийся светодиод.

И как, светодиоды сильно светятся при таком напряжении, подключении и резисторе в 1 кОм? sm.gif Кстати, зря вы их на один резистор подключили - при подключении nSRST яркость будет падать. Я бы каждому выделил свой резистор - это многое улучшит и упростит. В общем... У меня такой вот расчет рабочей точки светодиода получается (считайте это лишь примером, отправной точкой, на полноту не претендующей; величины прикидочные, можете подставить свои, конкретные): Vforward = 2.2V, Iforward = 10 mA, VCC = 2.6V; Rdiodserial = (VCC - Vforward)/Iforward = (2.6 - 2.2)/0.01 = 40 Ohm. Это для случая с одним диодом. Если мы хотим, чтобы через оба параллельно подключенных диода протекал ток по 10 мА, сопротивление токоограничивающего резистора нужно уменьшить в 2 раза (при этом не забываем проверить, что будет в случае с выключенным вторым диодом - в данном случае через него потечет ток 20 мА, что еще нормально для типичного светодиода). А вообще надо бы учесть и наихудший случай - это когда VCC=5V, и подключен только 1 диод.

Цитата(drova326 @ Jul 17 2013, 00:52) *
Вообще, если вспомнить университетский курс схемотехники то если не изменят память пока 2ой пин ЛПТ порта "висит в воздухе" (не подключил я его), т.е. не обеспечивается эмитерное смещение, наш транзистор закрыт и о протекании тока через коллектор-эмиттер речи не идет. Т.е. на STRS должен 0 висеть, почему же тогда телефон сбрасывается при подключении? или нулем и нужно сбрасывать? просто в моем понимании 1 это и есть управляющее воздействие... хотя если не изменяет все та же бедная память - единицей наличия сигнала принято считать как раз 0, там что то с уменьшением вероятности ошибки... хотя может вообще не в те дебри полез)

Какой уровень - лог. 0 или 1,- является активным для данного сигнала в интерфейсе, зависит от того, как условились. В данном случае, сигналы nTRST и nSRST активны по низкому уровню (в том смысле, что они вызывают действие, соответствующее их названию, при лог.0). Потому в полном их названии обычно присутствует упоминание об логической инверсии (n в начале или конце): nTRST/TRSTn/#TRST/TRST#/*TRST = {not TRST} (как только не обозначают... все это разные варианты одного и того же), nSRST = (not SRST).
В нашем конкретном случае лог.0 на LPT.2, или его подвешенность в воздухе должны держать n-p-n транзистор ключа в запертом состоянии (у вас же n-p-n, надеюсь?). При одном НО: если падение напряжения на резисторе 47кОм, вызванном током обратно-смещенного перехода база-коллектор Iкбо, не превышает напряжение отпирания транзистора (для кремниевого что-то порядка 0.6-0.7 V). В любом случае, не помешает проверить уровень напряжения на линии nSRST для замкнутого и разомкнутого выключателя. При подключенном к nSRST ключе еще попробуйте подключить к LPT.2 сначала GND, а потом VCC, и тоже посмотрите уровень nSRST.

Цитата(drova326 @ Jul 17 2013, 00:52) *
Тогда интересно было бы глянуть в чем конкретно заключается доработка, так сказать мануал что куда)))
.......
А если бы использовалась 74АС244, для питания от 2.6 она лучше бы подошла? Ну, т.е. какой схемой в идеале нужно заменить текущую, чтобы быть уверенным что будет работать без проблем? Изменять номиналы резисторов не пришлось бы? Или замена на более маломощную ИС не решит проблему с нераспозноваемостью ТДО сигнала? Просто приятелю такая штука тоже бы пригодилась, т.е. в перспективе собрать еще один экземпляр, учитывая опыт работы над этим.

Имеющаяся HC244 должна быть вполне подходящей.
Доработка такая:
1) пин 11 - отключить от резистора (прорезать дорожку), и подключить к GND (так же , как и остальные входы буферов этой половины чипа, управляемых пином 19);
2) пин 19 - отключить от GND, и подключить к свободному теперь концу резистора, ранее подключавшегося к 11 пину (тут у вас еще полезный, но не очень удачно подключенный кондер C2 имеется, его тоже надо отключить от пина и пробросить к GND);
3) пин 9, или даже лучше LPT.11 - pull-up резистор 2.2 kOhm к VCC.
drova326
Цитата(Raven @ Jul 17 2013, 23:01) *
Надеюсь, вы остановите выбор на 32-битной WinXP sm.gif

100%
Цитата(Raven @ Jul 17 2013, 23:01) *
И как, светодиоды сильно светятся при таком напряжении, подключении и резисторе в 1 кОм?

Поставлю 100 ом... На нем светило само то... а то что падает яркость при подключении... так компактность в данном случае для меня дороже, итак все скомкано в кучу (((
Цитата(Raven @ Jul 17 2013, 23:01) *
Доработка такая:
1) пин 11 - отключить от резистора (прорезать дорожку), и подключить к GND (так же , как и остальные входы буферов этой половины чипа, управляемых пином 19);
2) пин 19 - отключить от GND, и подключить к свободному теперь концу резистора, ранее подключавшегося к 11 пину (тут у вас еще полезный, но не очень удачно подключенный кондер C2 имеется, его тоже надо отключить от пина и пробросить к GND);
3) пин 9, или даже лучше LPT.11 - pull-up резистор 2.2 kOhm к VCC.

Переделал, вроде все как вы посоветовали:
Нажмите для просмотра прикрепленного файла
Raven
Цитата(drova326 @ Jul 17 2013, 18:11) *
Переделал, вроде все как вы посоветовали:
Нажмите для просмотра прикрепленного файла

Сразу переделка? Проверить-то вначале можно и на первом образце, подкорректировав проводками.

По новому варианту. Я бы еще улучшил полигон GND: заполнил все пространство под микросхемой, с обязательным охватом переходного отверстия для LPT.GND (что возле LPT.9), и максимально расширил бы дорожку от JTAG разъема к этому пространству. Ну, и все-таки pull-up для LPT.11 я бы подключил непосредственно, а не через 100 Ом.

Ну а эксперименты с nSRST как идут?
drova326
Я платы делаю методом ЛУТ и поэтому старался избегать слишком толстых участков, боязно что тонер не очень хорошо приклеется... хотя, попробовать можно) правда не знаю как расширить дорожку от GND JTAG к этой области, там особо негде разгуляться.
То, что я нарисовал новый полигон, так он для финальной версии, отладить все постараюсь на этой.
По поводу pull-up резистора... почему остальные подобные резисторы соединяют после 100 ом на схеме, а этот сразу нужно сразу от LPT.11?
Raven
Цитата(drova326 @ Jul 18 2013, 00:21) *
Я платы делаю методом ЛУТ и поэтому старался избегать слишком толстых участков, боязно что тонер не очень хорошо приклеется... хотя, попробовать можно) правда не знаю как расширить дорожку от GND JTAG к этой области, там особо негде разгуляться.

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

Цитата(drova326 @ Jul 18 2013, 00:21) *
По поводу pull-up резистора... почему остальные подобные резисторы соединяют после 100 ом на схеме, а этот сразу нужно сразу от LPT.11?

Это смотря как смотреть. Все pull-up'ы находятся ближе к приемнику сигнала.
energizer
Цитата(drova326 @ Jul 18 2013, 00:21) *
То, что я нарисовал новый полигон, так он для финальной версии, отладить все постараюсь на этой.

я по правде сказать кое что недопонимаю ..
а для чего вам вигглер вообще?? - то что Вы собираетесь восстановить один телефон это я уже понял - а зачем он в дальнейшем??
если это разовый проект то имеет ли смысл так загоняться??
дело в том что большинство современных мобильных девайсов предпочитает контроллеры с питанием еще ниже- таким образом Вы сами накладываете
большие ограничения на конструкцию изначально- если Вы решили собирать устройство собственной топологии для последующего использования - может все таки сразу перейдете на более универсальную элементную базу (лично я считаю что ПУ, марку которого я озвучил ранее именно таким и является-легко доступен, недорог, ясный и понятный датащит).
drova326
Цитата(energizer @ Jul 19 2013, 17:06) *
а для чего вам вигглер вообще?? - то что Вы собираетесь восстановить один телефон это я уже понял - а зачем он в дальнейшем??

Виной всему мой врожденный максимализм))) ну нравится мне, когда сделанные мной вещи имеют эстетическую ценность) Согласитесь приятно, когда собранный агрегат компактен и аккуратен. И Вы правы, я не работаю в ремонтной мастерской, и скорее всего виглер мне окажется полезным только для восстановления именно этого экземпляра, но даже если руки не дойдут сделать конечный аккуратный вариант, то уж точно выложенный полигон облегчит сборку тем, кто как и я впервые сталкивается с необходимостью собрать подобное устройство)
А между делом я допаял необходимые компоненты и в данный момент ставлю виндоус хп)))
Нажмите для просмотра прикрепленного файла
drova326
установил я ХП, нашел ЛПТ тестер, подпоял на выводы TMS(D1), TCK(D2), TDI(D3) и TRST(D4) светодиоды (неудобно с тестером возиться), к SRST(D0) тоже подпаял светодиод, но пришлось в обратной полярности. Итак, что имеем:
1) если все D0-D7 Low, то светодиоды не горят. Тоже самое наблюдается если на D0 High
2) как только на D1 подаем High схема "оживает": загораются оба диода на схеме и диод ТМS. схема начинает инвертированно реагировать на переключения D0, Вот только D0 светится гораздо тусклее остальных, хотя, он ведь идет через транзистор... Дальнейшее вкючение D2-D4 зажигает соответствующие светодиоды. При том если D1 отключить то D2-D4 продолжают переколючаться, но яркость их заметно падает.
3) что касается TDO то если D1 High то соединение его с землей меняет выход на 11 пине в программе (BUSY) с High на Low

Понимаю, что тяжко наверно понять то о чем я ща говорю, но судя по всему схема работать так и должна?
energizer
Цитата
но судя по всему схема работать так и должна?

хороший вопрос... а где текущая версия схемы?
наверное только Вы и еще Ворон знаете что к чему подключено ;-)
drova326
Цитата(energizer @ Jul 20 2013, 18:31) *
хороший вопрос... а где текущая версия схемы?
наверное только Вы и еще Ворон знаете что к чему подключено ;-)

Эм, да она почти такая жо как изначальная... но если быть точным, то вот:
Нажмите для просмотра прикрепленного файла
Нажмите для просмотра прикрепленного файла
energizer
а внешнее питание какое и вообще оно подключено?? то что она должна работать при питании извне 3.3 им выше невопрос а при питании от таргета 2.6 сомнения
без внешнего питания предсказать поведение этой схемы я не могу - думаю что оно зависить от типа выходного каскада на порту lpt - а там наверное ОК ..
и кстати при пониженном питании вопрос устойчивости работы данного решения у меня вызывает тоже сомнения ..
хотя я не эксперт и не могу точно предсказывать поведение вашей конструкции.. но мне она не очень нравится для работы на пониженном ;-)
drova326
Цитата(energizer @ Jul 20 2013, 21:31) *
а внешнее питание какое и вообще оно подключено?? то что она должна работать при питании извне 3.3 им выше невопрос а при питании от таргета 2.6 сомнения
без внешнего питания предсказать поведение этой схемы я не могу - думаю что оно зависить от типа выходного каскада на порту lpt - а там наверное ОК ..
и кстати при пониженном питании вопрос устойчивости работы данного решения у меня вызывает тоже сомнения ..
хотя я не эксперт и не могу точно предсказывать поведение вашей конструкции.. но мне она не очень нравится для работы на пониженном ;-)

работает виглер от самого телефона, у которого помимо jtag контактов есть питающий. т.е. вставляю батарейку, нажимаю включение телефона и виглеровские светодиоды включаются. То что питание снижено да, но схема и на 2х вольтах рабить должна. По поводу стабильности - я же не шить собираюсь через виглер, а только залить загрузчик в рам. На данный момент времени меня интересует правильное ли поведение у виглера, а на этот вопрос ответит наверно только Рэйван, ждемс.
energizer
Цитата
По поводу стабильности -я же не шить собираюсь через виглер,

на самом деле нет никакой разницы - скорость обмена одинакова и не превышает 20кб\сек
а вот как поймет уровни входные сам порт может и быть под вопросом ..
коли Вы уже подключили свой девайс к телефону так что тогда ждать ;-)
запускайте програмку и смотрите что получилось- есть несколько вариантов которые способны работать в теории с вашим
хардварем- openocd - но нужно его правильно настраивать-что займет некоторое время и простенький вариант для начала
Hjtag - вот с ним никаких проблем у Вас в настройке не будет- он покажет id таргета если все работает как надо..
я знаю одну подробную инструкцию - ссылко
а дальше скачать NOICE и пробовать то что задумали..
drova326
устройство определилось
kovigor
Цитата(drova326 @ Jul 20 2013, 16:15) *
сначала вообще H-jtag не находила устройство

H-JTAG, вообще-то, настраивать надо, а настройки эти зависят от вашей схемы Вигглера (как вы поняли, Вигглеры бывают разные) ...
energizer
id проца у Вас должен быть примерно 0х203C00E1 и не важно какой он будет красный или синий но по цифирькам должен быть сильно похож особенно последние 3 так прям совсем ..
есть правда один ньюанс .. я не знаю сможет ли с этим процом работать hjtag корректно - он ведь arm11 а в програмке заявлена совместимость для вигглера только до arm9//
отличия не сильные но есть - дело в том как смотря hjtag определяет id - если просто его выталкивает после сброса из дефолтного регистра -то должен показать .. а вот если перед определением id посылает команду
на выдачу содержимого регистра то скорее всего не отдаст потому как длина команду для arm9 чуть короче чем для arm11 // можно еще попробовать запустить программку которую я калякал- она показывает id именно первым способом .. ногу srst возможно придется отлючить..
drova326
Цитата(energizer @ Jul 20 2013, 23:27) *
id проца у Вас должен быть примерно 0х203C00E1 и не важно какой он будет красный или синий но по цифирькам должен быть сильно похож особенно последние 3 так прям совсем ..

Нажмите для просмотра прикрепленного файла
Как то так ((( это значит что то не в порядке? Ну, или предположение описанное Вами выше подтвердилось. А программу я вашу пытался запустить... по нажатию на кнопку она просто закрывается и все (((
energizer
Цитата
по нажатию на кнопку она просто закрывается и все (((

а может Вы не поставили драйвер giveio ?? в аттач прилепил ;-)
Цитата
это значит что то не в порядке?

это значит что пока не получается и проблему нужно искать
drova326
Цитата(energizer @ Jul 21 2013, 00:19) *
а может Вы не поставили драйвер giveio ?? в аттач прилепил ;-)

это значит что пока не получается и проблему нужно искать

действительно, после установки драйвера программа заработала... однако она не показала ни ай ди проца, ни смогла достоверно распознать jtag пины (((
energizer
Цитата
ни смогла достоверно распознать jtag пины (((

она хоть что нибудь показала?? и кстати у вас стоит перемычка - моя програмка пока не имеет защиты от замыканий входных и выходных линий
- в смысле она может на это не правильно реагировать ..
а в целом я сильно сомневаюсь в работоспособности текущего варианта схемы..
drova326
Цитата(energizer @ Jul 21 2013, 00:54) *
она хоть что нибудь показала??

Да, что то там вывела об успешном окончании работы... ошибку выдала только на этапе определение ID Code... ну и пины расставила неправильно (((
Перемычку SRST убрал, как и советовалось.
Цитата(energizer @ Jul 21 2013, 00:54) *
в целом я сильно сомневаюсь в работоспособности текущего варианта схемы..

Но ведь H-JTAG распознал устройство??? Пусть без адреса в том виде что вы предположили, но что то распознал
Сбросил ТАР настройки на дефолт, после чего процессор стал определяться так:
Нажмите для просмотра прикрепленного файла
energizer
ну вот и отлично- вы увидили настоящий id своего проца - значит вигглер работает-
теперь дело за Вами - пробуйте метод восстановления который считаете наиболее удачным
( я так понимаю вы к этому готовились и сделали разведку)
и просьбу напомню о дампе (а лучше о скриншоте NOICE в 32 битном представлении)
drova326
Цитата(energizer @ Jul 21 2013, 05:36) *
и просьбу напомню о дампе (а лучше о скриншоте NOICE в 32 битном представлении)

Я кажется уже что то намудрил (((
вот что пишет нойс при подключении:
-----------------------------------------------------------
Loaded RDI DLL E:\Program Files\H-JTAG\H-JTAG.dll
H-JTAG Debug Interface for ARM In-Circuit Emulation.
Version 1.50
Module 1) ARM ARM926EJ-S
WinRDI Controller Capabilities 0x9A7348: APC
WinRDI Target Capabilities: 0xC7:0xFF CallEx RT TX Synch
Target Info 0x219010: Thumb DCC NonStop
Watchpoint Info 0x0:
SingleStep: 0x0
Selected Target: Generic big-endian ARM using hardware breakpoints
Has 2 hardware breakpoints
Specified CPU frequency 400.000000 MHz

Target type ARM. Target buffer 128 bytes
Breakpoint instruction: BE 00
-----------------------------------------------------------
а вот то что вы просили как то странно выглядит:
Нажмите для просмотра прикрепленного файла
при этом в окне Data все как то рандомно от подключения:
Нажмите для просмотра прикрепленного файла



Аааа, что то совсем моск закипает, вчера до 7 утра проседел в надежде хоть что то понять... Прошивку для телефона скачал многофайловую и из нее выдернул:
Нажмите для просмотра прикрепленного файла
В этом файле как я понял загрузчик, который мне нужно запихать в РАМ телефона... во всяком случае именно этот файл я указывал в программе флешере (ODIN) когда раньше менял прошивки напротив BOOT. Если заглянуть в этот файл, то он представляет собой TAR архив, в котором еще несколько файлов.... я так понял мне нужно из этих файлов, а именно arm11boot как то залить в РАМ? или весь APBOOT-файл нуно поместить в рам телефона? Или это уже не здесь обсуждается?
energizer
на беглый взгляд есть неточности в настройке-
наверное всетаки он маленький энд во вторых есть програмный глюк самого отладчика - если нижнее(которое отображает фрагмент памяти) окно шире 10 строк оно отрубается и заполняется вопросами..
на счет загрузчиков для конкретно вашего тела я их даже в глаза не видел - на самом деля я думал что Вы знаете что делать собираетесь- потому как в прошлых постах Вы уверенно сказали что программная часть не проблема -вот я и подумал что Вы сделали домашнуюю работу ;-)
чек лс ;-)
drova326
Цитата(energizer @ Jul 21 2013, 18:40) *
на самом деля я думал что Вы знаете что делать собираетесь- потому как в прошлых постах Вы уверенно сказали что программная часть не проблема

Ну, то что я на ваших глазах делал виглер как бы подразумевает, что я не работал со средствами загрузки устройств через него))) Я сказал не проблема, потому что в компах я понимаю чуть больше чем в сборе схем))
Raven
Я вижу, за выходные у вас большиое продвижение произошло. Вроде подключились H-JTAG'ом к процессору, а отладчиком NOICE - к H-JTAG'у.... Но, если честно, у меня осталась некоторая неуверенность, что кабель в полном порядке,- видимо, навеянная тем описанием, где что-то оживает в зависимости от уровней на других линиях (поскольку в кабеле, подключенном только к LPT, как я вам рекомендовал для начала отладки, такого просто не должно быть).

Вам на месте, конечно, виднее, но все же.. Вы точно уверены, что с аппаратной частью у вас все ОК? Правильный ID может вычитываться, например, с работающим TDO и неработающим TDI (недавно в другой теме был как раз такой случай).

Я не великий знаток ARM'ов, поэтому не могу сразу предложить конкретную инструкцию, как проверить работоспособность всей этой отладочной системы. Но идея может быть такая - если есть доступная внутричиповая ОЗУ, из которой процессор может выбирать команды на исполнение (т.е., память, которая может играть роль памяти инструкций, а не только памяти данных), то можно было бы загнать туда простенькую программку на 5-10 команд, и попробовать ее пошагово исполнить. Кстати, а чтение-запись регистров у вас работает?

И еще. Если будете делать еще один выпуск печатной платы Вигглера, неплохо бы внести доработку, обеспечивающую работу с V_target меньше нынешних 2.6В (с распространенными уже сейчас 1.8 В). Если интересно, могу поделиться мыслями (для этого надо организовать для TDO другое подтягивающее напряжение, что-то вроде упоминавшегося на ранней схеме PC_VCC, но немного хитрее).
energizer
Цитата
Я сказал не проблема, потому что в компах я понимаю чуть больше чем в сборе схем

теперь я понял...
у нас... а точнее у Вас боольшие проблемы :-( в данной теме соображать в компах совсем не обязательно- нужно соображать в программировании arm да еще и в части контроллеров нанд..
суть проблем в таком случае мне даже сложно будет Вам обьяснить.. но все кто пытался восстановить бутлоадеры на платформе квалкома s1 и выше с ними сталкнулись (имеется в виду не профф коробки а всякие вигглеры и j-линки) .. я например пока вообще не представляю как работать с этим nand чипом точнее сказать кое что представляю но этого мало ..если увас смарт гнусмас то там скорее всего OneNand установлен что еще веселее - никогда с ними не встречался и даже отдаленно не представляю как его можно конфигурить и как с ним работать..

Цитата
Вам на месте, конечно, виднее, но все же.. Вы точно уверены, что с аппаратной частью у вас все ОК?

вот в этом я на99 уверен - потому что колонка состояния регистров ядра правильная -а данные от туда можно получить только используя TDI - без этого сигнала можно получать на выходе tdo только id таргета и нечего более - причина банальна -после сброса по trst или 5 клоков tms большенство контроллеров устанавливает в качестве выбранного регистра именно регистр id и при подаче клоков clk выдавливает данные именно из него и при этом не важно что на tdi

Цитата
обеспечивающую работу с V_target меньше нынешних 2.6В (с распространенными уже сейчас 1.8 В). Если интересно, могу поделиться мыслями (для этого надо организовать для TDO другое подтягивающее напряжение, что-то вроде упоминавшегося на ранней схеме PC_VCC, но немного хитрее).

я бы с удовольствием посмотрел на Ваш вариант доработки- у людей полно вигглеров постоенных на 244
Raven
Регистры видятся, говорите... А не происходит ли при их считывании чего-нить подозрительного, и не являются ли эти значения какими-нибудь значениями по умолчанию, которые дебаггер подсовывает, когда толком не может пообщаться с тагетом,а (при этом толком ни на что не ругаясь)? Я всякое уже видел. А вот то, что в NoICE сейчас происходит, не вижу. Потому и вопросы... Может, я дую на воду, обжегшись на молоке... но пока drova326 сомнения не рассеял....

Кстати, еще одна вещь, которая мне не нравится. На сайте NoICE говорится, что из ARM'ов он знаком только с семейством ARM7TDMI, а здесь у нас налицо представитель более позднего ARM9. Все ли NoICE корректно отрабатывает, готов ли он с 9-ми ARM'ами дело иметь? Может, надо взять более подходящий отладчик?
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.