Перейти к содержанию

AVI-crak Home

Members
  • Постов

    93
  • Зарегистрирован

  • Посещение

Информация

  • Город
    омск

Электроника

  • Стаж в электронике
    10-20 лет
  • Сфера радиоэлектроники
    ремонт

Посетители профиля

Блок последних пользователей отключён и не показывается другим пользователям.

Достижения AVI-crak Home

Стажер

Стажер (3/14)

  • 10 постов на форуме
  • Неделя на форуме
  • Месяц на форуме
  • Год на форуме

Последние значки

23

Репутация

  1. Почти год прошёл, имеешь полное право хвастаться успехами. На счёт кривого детского кода - смирись, это ощущение с годами не исчезает.
  2. Итак, порядок развлечений с STM32F746G-DISCO: достать доску из упаковки, подключить к компу, открыть ide, сломать прошивку "привет мир", починить, изменить. Протиранием пыли с коробки ситуацию не изменить, лучше продай.
  3. Я сейчас расскажу вам, для чего придуманы углубления на лицевой и тыльной стороне пластиковых корпусов чипов. Дело в том что перемаркир, это на самом деле очень древняя проблема, которая возникла сразу после всеобщей сертификации корпусов чипов, задолго до массового распространения домашних лазерных гравировщиков. Обман очень простой, спиливают оригинальную надпись, наносят новую, и умножают ценник. Для того чтобы узнать оригинал - достаточно измерить "глубину" маркеров. Они вообще-то бывают разного вида, иногда даже с рисунком, но при этом всегда имеют зеркальную поверхность!!! Повторная гравировка превращает ровную поверхность в скальный грунт (под микроскопом). Маркировка ключа всегда выполняется под "вдавленный шарик", то-же с зеркальной поверхностью. И самое важное - в документации указан диаметр этого маркера. Кроме того, массовые изделия всегда маркируется горячем тиснением краской. Чип буквально клеймят как скот на ферме. Потому что эта операция занимает 0,1 секунды, и буквально ничего не стоит (в пересчёте на количество чипов). Следы лазера всегда указывают на малую партию, или на явный перемаркир. Ну и наверное самое важное в таких делах - быть в курсе политических свитоплясок. А расклад там такой, что сама фирма ST, за прошедшие 2 года - не поставляла на свободный рынок свои МК. Поставок в магазины буквально ноль. Они ещё как-то работают с крупными клиентами, но нам с этого не перепадает. И да, заказов там уже на 3 года вперёд, без шансов на выполнение. Я могу подсказать где нет подделок - у тех кто делает подделки!!! https://aliexpress.ru/item/1005004350410929.html? CH32V307VCT6. Там всё на китайском, для своих. А свои если что, могут и в морду дать...
  4. Ваш код на Си, я тоже в больших сомнениях. RCC->AHB1ENR = RCC_AHB1ENR_GPIOAEN | RCC_AHB1ENR_CCMDATARAMEN; RCC->APB2ENR = RCC_APB2ENR_ADC1EN; GPIOA->MODER = _VAL2FLD(GPIO_MODER_MODER7, 3); ADC1->CR2 = ADC_CR2_EOCS; ADC1->SQR3 = _VAL2FLD(ADC_SQR3_SQ1, 7); ADC1->CR2 = ADC_CR2_EOCS | ADC_CR2_ADON; volatile register uint32_t ADC_dat asm ("r2"); do{ ADC1->CR2 = ADC_CR2_EOCS | ADC_CR2_ADON | ADC_CR2_SWSTART; while (!(ADC1->SR & ADC_SR_EOC)); ADC_dat = ADC1->DR; }while(1); Во первых вы наглухо отключаете SWD интерфейс отладки в первых строчках, как и большую часть всего остального. Во вторых опрос будет в бесконечном цикле, без выхлопа, в регистр который невозможно прочитать. В-третьих, на Си код получился компактнее и проще.
  5. Да прикинь, именно это и говорю - настоящие STM чипы с конвейера после тестирования и корректировки попадают в установку нанесения маркировки. Так как чипов много (буквально целый поддон) - то лазерная маркировка будет непростительной роскошью. Вместо этого применяют горячее тиснение краской - один шмяк силиконовым штампом на все чипы разом. А потом просто греют несколько секунд ик светиками (мощными). А вот всё что имеет лазерную гравировку - это либо отбраковка официального фаба, либо злостный китайский перемаркир.
  6. Наверное с зрением. Лазерная гравировка, от горячего тиснения краской - отличаются как небо и земля.
  7. Для поиска "выполнение произвольного кода arm". В самостоятельном варианте получится недоделанный линух или андроид. Там невозможно сделать иначе, даже если кажется что можно упростить - позже придётся переделывать. Выполнение кода примерно в 100 раз тормозное чем нативная сборка бинарника. Основное ограничение - машину реального времени построить невозможно. Уж если хочется загружать внешний код, то дешевле смотреть в сторону эмуляторов и байт машин. Мне даже встречался эмулятор Си кода, весьма прикольная вещь. Его достаточно для простеньких программ чуть выше бейсика, но сложные вещи на нём сделать невозможно. Кроме того - выполнение кода крайне медленное.
  8. Для того чтобы сделать безопасным использование функций зашитых в загрузчик - каждую из них нужно обвесить гирляндой проверок входных параметров. При этом простейшая функция аппаратного варта становится настолько громоздкой и медленной, что дешевле её повторить заново. Про запись флеша даже не заикаюсь. Без проверок нельзя, слишком большой шанс окирпичиться. По этому загрузчик должен быть максимально изолирован и прост. Отработал своё, и отдал управление.
  9. Офигеть портянка, и наверняка ошибка в магических сдвигах, в линиях данных D1 или D2. Искать несоответствие сразу по трём документам моего желания не наблюдается. Могу подсказать как упростить житие и программирование. Нужно писать так, чтобы написанное было сразу понятно. мой костыль (ссылка) Выбрать свой мк из списка, вставить в проект. gpio_one_pin(zap_gpio.D.pin15.v_af12_fmc_d1_da1.speed4.pull_down.lock_on); /// FMC_d1 gpio_one_pin(zap_gpio.D.pin14.v_af12_fmc_d0_da0.speed4.pull_down.lock_on); /// FMC_d0 У кубика есть вывод статистики используемых контактов в текстовый файл, там сразу в трёх вариантах сортировки: по физическому номеру ноги корпуса, по имени периферии, по названию ноги. Для серийной отладочной платы уже есть готовый проект кубика, где назначены все нужные ноги, именно так как они распаяны на печатной плате. Просто загрузить, и вывести статистику. При операциях копировать/вставить - ошибку очень трудно допустить. Ну а мой макрос просто не допустит иного ввода текста, кроме как рабочего. И да, проект от кубика тянет текста больше чем у меня, примерно в 30 раз.
  10. Это как? Двa sdram чипа, один читает другой пишет? Ага, поиском вытянул уши http://en.radzio.dxp.pl/stm32f429idiscovery/sdram.html И там память подключена ко второму банку, отчего код выглядит хитро. Но так подключить ещё нужно умудриться. Будет проще если Leo сообщит полное название чипов, и список контактов (подготавливается в кубике).
  11. Можно. Это даже будет работать некоторое время. Вот только показывать будет не в миллиметрах, а в попугаях, и ровно до первого попадания стружки или сож. Оптические линейки имеют защиту от сож, от стружки и от температуры - полный комплект. Так-что если нужен показометр - то да. Если нужно работать - то собери булки в кучу, и купи нормальную оптическую линейку.
  12. Вся документация находится здесь: https://www.st.com/en/microcontrollers-microprocessors/stm32-32-bit-arm-cortex-mcus.html
  13. Кстати, вариант "долгоиграющего" ноутбука https://habr.com/ru/company/dcmiran/blog/557360/. В кавычках, потому как главная проблема этих ноутов - хрупкость. А про жёсткость пластика там вообще ни слова.
  14. У дма есть прерывание по ошибкам, половины буфера, и окончании передачи данных. Прерывание дма вообще никак не связано с ацп и всем остальным - там код только для дма. У ацп есть много режимов, в том числе и смешанных. Искать пример бесполезно, потому как настройки из примера не совпадут с вашими желаниями. Кстати насчёт желаний, тут вообще ничего не понятно. Что значит "несколько": 1-2-16? Насчёт мк я уже говорил, и не раз, это только у вас он один единственный, а в серии stm32f4 - их просто дофига. Нам тут угадывать нужно?
  15. Долговечность - это литературное выражение (к сожалению). Однако к технике вполне применимо, когда продукт уже у пользователя. А вот когда продукт создаётся - применяется термин "программируемое старение", вот именно с этим и воюют. Это программные закладки на определённый срок эксплуатации. Это сокращение или полное удаление средств внутренней и внешней диагностики состояния девайса. Это намеренное использование связующих элементов, с целью создания монолитного не разборного изделия. Это намеренный выбор компонентов, с целью сократить время жизни девайса. Это отказ в обслуживании после окончания официального срока жизни линейки продуктов.
×
×
  • Создать...