-
- Свою конкретную проблему (различить похожие платы между собой) я решила, однако это был "нечестный" способ, который в общем случае не годится. А потому считаю тему по-прежнему актуальной - вдруг кто-то предложит общее решение этой проблемы. Ксения(543 знак., 24.05.2019 22:54)
- А зачем вам "честный" способ? У вас готовые платы, сами вы их делать не будете, так чего париться то? - =AlexD=(27.05.2019 08:43)
- А я уже и не парюсь. Считаете, что эту тему мне стоит удалить? - Ксения(27.05.2019 09:36)
- (пожимает плечами) поступайте как вам угодно - =AlexD=(27.05.2019 09:41)
- А я уже и не парюсь. Считаете, что эту тему мне стоит удалить? - Ксения(27.05.2019 09:36)
- Я уже выдал решение в виде прошивки во flash board ID. Решения проще и удобнее пока никто не предложил. - Evgeniy1294(25.05.2019 09:06)
- А зачем вам "честный" способ? У вас готовые платы, сами вы их делать не будете, так чего париться то? - =AlexD=(27.05.2019 08:43)
- По UARTу засылать код платы для записи на внешнюю флеш, но вообще я так понимаю - платы разные, можно просто проверять, какая внешняя периферия есть в наличии - =AlexD=(24.05.2019 16:18 - 16:27)
- Объясните мне наконец, чем вам внутренние flash и OTP не нравятся? Просто напишите скрипт на питоне, который заставляет openocd стереть flash, залить новый бинарь и прописать по заданным адресам константы, всего три команды. evgeniy1294(1068 знак., 24.05.2019 16:38 - 16:43)
- Я так понял, что задача стоит определить, что же очередной пьяный монтажник впаял в плату, желательно чисто софтовыми методами. lloyd(89 знак., 24.05.2019 16:43)
- Очень просто, например наличие одинаковых камней в разных корпусах или разных ревизий плат. Проще написать одну прошивку, которая вычитывает код из известного захардкоженного адреса, а далее происходит условное выполнение в зависимости от кода. - evgeniy1294(24.05.2019 16:47)
- чтобы что-то вычитать , сначала надо что-то записать! В плату запаяли новый искаропки проц, что читать будем ? - Aleksey_75(24.05.2019 16:50)
- openocd -f interface/jlink.cfg -f target/stm32f4xx.cfg evgeniy1294(163 знак., 24.05.2019 16:55 - 17:00)
- Гусары, расслабьтесь. Вопрос исходит от Ксении, искать там привычную логику контрпродуктивно :-) - SciFi(24.05.2019 17:03)
- openocd -f interface/jlink.cfg -f target/stm32f4xx.cfg evgeniy1294(163 знак., 24.05.2019 16:55 - 17:00)
- чтобы что-то вычитать , сначала надо что-то записать! В плату запаяли новый искаропки проц, что читать будем ? - Aleksey_75(24.05.2019 16:50)
- Очень просто, например наличие одинаковых камней в разных корпусах или разных ревизий плат. Проще написать одну прошивку, которая вычитывает код из известного захардкоженного адреса, а далее происходит условное выполнение в зависимости от кода. - evgeniy1294(24.05.2019 16:47)
- Я так понял, что задача стоит определить, что же очередной пьяный монтажник впаял в плату, желательно чисто софтовыми методами. lloyd(89 знак., 24.05.2019 16:43)
- Объясните мне наконец, чем вам внутренние flash и OTP не нравятся? Просто напишите скрипт на питоне, который заставляет openocd стереть flash, залить новый бинарь и прописать по заданным адресам константы, всего три команды. evgeniy1294(1068 знак., 24.05.2019 16:38 - 16:43)
- Думаю, никак, если снаружи ничего не висит с подтяжками. Кристалл то один и тот же, разварка в корпус разная. Так что можно наверное исхитриться и на очень большом интервале выяснить что существует некая емкость на соответствующем выводе из-за Ralex(108 знак., 24.05.2019 11:10)
- Вы правы, в данном случае проблема распознавания неразрешима, т.к. внутри м/с находится одно и то же "ядро". Поэтому изнутри этот МК чувствует свои фантомные ноги, которые наружу не выведены и может ими прядать. :) Ксения(1335 знак., 24.05.2019 22:40 - 22:43, ссылка)
- "проблема распознавания неразрешима" РЕШАЕМА!!! достаточно на стенку перед рабочим столом повесить прейскурант цен "на себя любимую" с содержимым "1 час моего жизненного времени ...... руб", "1 час моей работы ...... руб" дальше по вариантам! И Aleksey_75(88 знак., 24.05.2019 22:53)
- Хватит нести бред, проблема к отладкам никакого отношения не имеет. Приведённая статья только один из примеров, где и зачем это надо. - Evgeniy1294(25.05.2019 09:20, ссылка)
- Так я же по части STM32 пока еще начинающая, а потому и вопрос задала из той области, ответ на который в даташите не найти. Т.е. была ненулевая вероятность того, что кто-то ответ на этот вопрос знает. - Ксения(25.05.2019 03:52)
- "цена МК так быстро растет с увеличением числа ног, т.к. корпусировка не должна быть настолько дороже кристалла". Ога, снова это распространённое заблуждение, что себестоимость понад усе. Вообще-то часто и ниже себестоимости продают, и ничего. - SciFi(24.05.2019 22:45)
- "проблема распознавания неразрешима" РЕШАЕМА!!! достаточно на стенку перед рабочим столом повесить прейскурант цен "на себя любимую" с содержимым "1 час моего жизненного времени ...... руб", "1 час моей работы ...... руб" дальше по вариантам! И Aleksey_75(88 знак., 24.05.2019 22:53)
- Вам для этой цели дали OTP, зачем тратить ноги? - evgeniy1294(24.05.2019 12:19)
- Видимо вы имеете в виду внутрисхемное программирование. Ralex(1028 знак., 24.05.2019 14:18)
- В прогрессивном мире для этого есть Device Tree - lloyd(24.05.2019 15:33, ссылка)
- Конечно есть, ведь программисты хотят жрать. - Ralex(24.05.2019 18:44)
- Device Tree только на линухе, тут не только про него. - evgeniy1294(24.05.2019 17:15)
- Он еще в зефирке, u-boot и barebox - lloyd(24.05.2019 17:50)
- Честно признаюсь, из этих слов я понял только u-boot. - evgeniy1294(24.05.2019 18:00)
- Он еще в зефирке, u-boot и barebox - lloyd(24.05.2019 17:50)
- Перемычки для этого не нужны, ни для приведенных вами задач, ни для задач Ксении. Не, если половина ног не использованы, то почему бы и нет, но зачем, если можно прошить в камень не один бинарь, а два? И сразу не нужны ни таблицы, ни джамперы, да evgeniy1294(1029 знак., 24.05.2019 15:26)
- В прогрессивном мире для этого есть Device Tree - lloyd(24.05.2019 15:33, ссылка)
- Видимо вы имеете в виду внутрисхемное программирование. Ralex(1028 знак., 24.05.2019 14:18)
- Вы правы, в данном случае проблема распознавания неразрешима, т.к. внутри м/с находится одно и то же "ядро". Поэтому изнутри этот МК чувствует свои фантомные ноги, которые наружу не выведены и может ими прядать. :) Ксения(1335 знак., 24.05.2019 22:40 - 22:43, ссылка)
- Вах! Ксения аватарку вернула. - Codavr(24.05.2019 08:47)
- +1 начал узнавать, а то думал куда Ксения пропала =)) - sav6622(24.05.2019 08:54)
- Уточнение: а зачем это надо? Вопрос имеет практическое значение, или исключительно в познавательных целях? Dingo(275 знак., 07.05.2019 12:05)
- У 407 вроде не было package ID, в более поздних появился только. В F7 вроде есть. По ссылке есть макрос. - LightElf(01.05.2019 18:36, ссылка)
- А нахрена? Совершенно надуманная задача. При прошивке платы человек выбирает нужную версию FW и незачем париться с попытками изнутри что-то обнаружить. бомж(221 знак., 01.05.2019 15:57 - 16:00)
- А если порта такого нет, то что я увижу, Lo или Hi? - Ксения(01.05.2019 16:34)
- Докладываю. STM32F407VE, QFP-100, там не выведены порты F,G,H,I. GPIOH->IDR читается как 3, при этом PH0, PH1 можно дёргать - реагируют. Все остальные читаются как 0, на дёргание не реагируют. Вру, PH0, PH1 как раз выведены. - SciFi(01.05.2019 16:52)
- Нет уж! Раз хочет что то лепить на этих поделиях (да еще с "кандибобером" в виде распознавания), пущай предусмотрит хотя бы резистор между парой ног этих портов ;) - Гудвин(01.05.2019 16:59)
- Дык не я же эти платы делаю! Только что вчера получила посылку с этим (см. ссылку). Полагаю свое приобретение за 885 руб исключительно выгодным, т.к. только один голый STM32F407ZET6 стоит в Терраэлектронике 618 руб. А тут на плате всё готовенькое Ксения(380 знак., 01.05.2019 18:09, ссылка, картинка)
- Ты осмелилась изменить Atmel с STM!!! :-) - бомж(02.05.2019 09:12)
- И это не первый её пост в связи с STM32. - Dingo(07.05.2019 11:55)
- Это не я Атмелу изменила, а он мне изменил, продавшись Микрочипу. - Ксения(02.05.2019 10:44)
- Ты осмелилась изменить Atmel с STM!!! :-) - бомж(02.05.2019 09:12)
- Не важно. Похоже, факты её не интересуют. Так, чисто поболтать :-) - SciFi(01.05.2019 17:18, ссылка)
- Нафига, есть OTP. - Evgeniy1294(01.05.2019 17:06)
- Дык не я же эти платы делаю! Только что вчера получила посылку с этим (см. ссылку). Полагаю свое приобретение за 885 руб исключительно выгодным, т.к. только один голый STM32F407ZET6 стоит в Терраэлектронике 618 руб. А тут на плате всё готовенькое Ксения(380 знак., 01.05.2019 18:09, ссылка, картинка)
- Нет уж! Раз хочет что то лепить на этих поделиях (да еще с "кандибобером" в виде распознавания), пущай предусмотрит хотя бы резистор между парой ног этих портов ;) - Гудвин(01.05.2019 16:59)
- hardfault уведите ))) - Aleksey_75(01.05.2019 16:37)
- Серьезно? Если оно так, то отсутствие порта было бы легко распознать, обращением к нему. Тогда как мне уже объясняли, что этот метод не годиться (якобы ядра внутри одинаковые). - Ксения(01.05.2019 16:41)
- Не ядра, а кристалл! Порт может быть не выведен, но физически он будет. - Evgeniy1294(01.05.2019 17:04)
- Серьезно? Если оно так, то отсутствие порта было бы легко распознать, обращением к нему. Тогда как мне уже объясняли, что этот метод не годиться (якобы ядра внутри одинаковые). - Ксения(01.05.2019 16:41)
- Докладываю. STM32F407VE, QFP-100, там не выведены порты F,G,H,I. GPIOH->IDR читается как 3, при этом PH0, PH1 можно дёргать - реагируют. Все остальные читаются как 0, на дёргание не реагируют. Вру, PH0, PH1 как раз выведены. - SciFi(01.05.2019 16:52)
- А если порта такого нет, то что я увижу, Lo или Hi? - Ксения(01.05.2019 16:34)
- В запуске прописать загрузку в означенные порты какую-нибудь фигню типа 0xAA, прочитать, если не совпало, то и нет порта. Как-то так, если не повиснет :) - Барбос(01.05.2019 15:11)
- Минуточку. Я был под впечатлением, что просто порты с кристалла не выводятся на ноги. Если так, при чтении будет совпадать с тем, что туда записали. - SciFi(01.05.2019 15:21)
- Вероятно, ваш покорный неправ. Не прочёл то, что ниже. Но. И вы тоже прекрасно выступили. Не смущает предложение дёргать ногу, которой нет? Барбос(4 знак., 01.05.2019 15:40)
- Не исключено, что они блокируют порт через OTP при настройке. В общем, нас рассудит только опыт. - SciFi(01.05.2019 15:47)
- Вероятно, ваш покорный неправ. Не прочёл то, что ниже. Но. И вы тоже прекрасно выступили. Не смущает предложение дёргать ногу, которой нет? Барбос(4 знак., 01.05.2019 15:40)
- Минуточку. Я был под впечатлением, что просто порты с кристалла не выводятся на ноги. Если так, при чтении будет совпадать с тем, что туда записали. - SciFi(01.05.2019 15:21)
- Очень легко отличить камни с разными корпусами(через dev ID, с ограничениями) и объёмами памяти (dev ID или check pointer). Evgeniy1294(219 знак., 01.05.2019 08:59)
- Легко? А как? Похожая тема уже была на Сахаре (см.ссылку), но из нее я поняла, что UID является лишь уникальным идентификатором, по которому отличия между двумя МК определить можно, а сходство нельзя. Другое дело у AVR :), когда начальные байты Ксения(173 знак., 01.05.2019 14:52, ссылка)
- Не UID, а Dev ID. - Evgeniy1294(01.05.2019 17:02)
- Легко? А как? Похожая тема уже была на Сахаре (см.ссылку), но из нее я поняла, что UID является лишь уникальным идентификатором, по которому отличия между двумя МК определить можно, а сходство нельзя. Другое дело у AVR :), когда начальные байты Ксения(173 знак., 01.05.2019 14:52, ссылка)
- в stm32fxxx_hal_libraries есть библиотека идентификации DVV(258 знак., 01.05.2019 06:58)
- Ну и как мне там про это найти? Ну хоть зацепочку какую-нибудь дайте! Сама искала, но ничего такого не нашла. И даже фразы "Device package address" нет нигде. - Ксения(01.05.2019 14:56 - 14:58)
- На гитхабе DVV(135 знак., 01.05.2019 18:00)
- Ну и как мне там про это найти? Ну хоть зацепочку какую-нибудь дайте! Сама искала, но ничего такого не нашла. И даже фразы "Device package address" нет нигде. - Ксения(01.05.2019 14:56 - 14:58)
- Там с большой вероятность один и тот-же кристалл, поэтому вариант с потолкать порт с большой вероятностью не пройдет. - AlexG(01.05.2019 06:57)
- Свою конкретную проблему (различить похожие платы между собой) я решила, однако это был "нечестный" способ, который в общем случае не годится. А потому считаю тему по-прежнему актуальной - вдруг кто-то предложит общее решение этой проблемы. Ксения(543 знак., 24.05.2019 22:54)