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

Baser

Свой
  • Постов

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

  • Посещение

  • Победитель дней

    1

Весь контент Baser


  1. Я действительно не понимаю смысл этих требований в современных условиях. Для "Описания типа средства измерения" от нас требовали "Цифровой идентификатор ПО (контрольная сумма исполняемого кода)", алгоритм расчета и номер версии ПО. Это все указано в сертификате. При этом нет возможности эту контрольную сумму как-то проверить (и это никто не требовал). И в сертификате есть примечание, что номера версий приборов могут быть больше указанной, и с другими контрольными суммами. Так что я вижу тут один формализм.
  2. Звучит неубедительно, т.к. зная алгоритм и то, что должно получиться на выходе, я всегда могу вычислить тот хеш, который хочет получить проверяющий Тем более, что такие вещи должны быть стандартизированы, а то мало ли что придет в голову проверяющим. Мы вот столкнулись недавно с проблемами с продлением сертификата на ATEX. У них поменялись люди, и ушел человек, который подписывал старый сертификат. А новый говорит: "В стандарте сказано Zener barrier, а вы применили Transil (TVS) - это не годится!" И уперся рогами...
  3. Мне тоже интересен вопрос сертификации прошивки. Часть производимых нами измерительных приборов применяется для коммерческого учета, где требуется эта сертификация. Но как я понимаю, этот стандарт был написан еще во времена MCS51 + внешняя EEPROM, когда любой мог вытащить память из панельки, считать и сравнить с записанным в сертификате хеш-кодом. А как это происходит сейчас, когда память программ внутри контроллера и защищена лок-битами? Мы на эти требования пока "кладем" (лет 20 уже...), но могут же и придраться...
  4. Пол ватта потерь на шунте как-то не гуманно Но вам виднее...
  5. это несколько другое - это "smart switch" или защищенный ключ. А e-fuse есть и ограничители тока и прерыватели. Например, ткнул в первый попавшийся - попал в ограничитель: STEF12S Но с регулировкой тока
  6. Никогда не применял, но слышал о E-Fuse, погуглите, сейчас это модная тема. STM что-то делает, да и другие производители есть.
  7. Можно не делать никакого переключения режимов, а просто поддерживать на приемной стороне прибора парсинг и текстового и бинарного протоколов. Только бинарный протокол должен иметь совместимость с текстовым, чтобы их можно было различать. И текстовые команды должны быть пакетными, без бесконечных пауз между символами, как при ручном наборе в терминале. Например, все команды разделяются паузами и первый байт бинарной команды (SoF) должен быть не ascii. У меня так реализован парсинг ответов блютус-модуля. Его ответы текстовые, а при наличии соединения с прозрачным режимом, через него могут приходить пакеты двух разных бинарных протоколов. Нормально работает.
  8. Если памяти на таблицу жалко можно сделать кусочно-линейную функцию, типа такой: if (x < 112) y = x; // 0...111 else if (x < 368) y = x>>2 + 84; // 112...176 else if (x < 1001) y = x>>3 + 130; // 176...255 else y = 255;
  9. Вам все правильно сказали, а вы слушать не хотите, зачем тогда спрашивать? Хидеры рекурсивно вкладывать не нужно. Определения, по которым компилятор выделяет память, должны находится в .c файлах. Добавьте к определению переменной в .h файле слово extern. И почитайте, что оно значит. Компилятор тут совершенно не причем.
  10. Раньше не было нужды, а сейчас попробовал на своем Siglent SDS1202X-E 1MSa/s получается при развертке 1 сек/клетку. Память на 14Mpts, т.е. на 14 сек. Есть опции записи на флешку в форматах BIN, CSV, DAT. DAT пишут, что для Matlab, про BIN ничего не пишут. Записал 14 сек шумов в CSV файл. Вышел честный файл на 313 МБайт такого формата: Source,CH1 Second,Volt 0.00000000000,0.00336 0.00000100000,0.00288 0.00000200000,0.00312 0.00000300000,0.00304 0.00000400000,0.00304 0.00000500000,0.00296 ................... 13.99999500000,0.00 13.99999600000,0.00016 13.99999700000,0.00032 13.99999800000,-0.00008 13.99999900000,-0.00008 Так что да, будем знать, это работает
  11. А на самом экране никаких маркировок нет? А то этих контроллеров сотни и все они очень похожи по командам. Я работал с SSD1305/1309 - есть сходство, но это не оно хотя бы по количеству точек. Вот хорошая коллекция документации, но в ней можно утонуть LCD Controller Datasheets
  12. В excel-е, кнопки. Но для этого его открыть надо, набить таблицу и построить график. А там и кнопки увидите Но в общем, у вас вся постановка задачи перевернута с ног на голову. Поэтому вы и нужную точность не знаете. Методологически делают так: 1. Снимают с реального датчика таблицу с как можно большим значением точек. Для вас желательно через 1 кг. Ну, по меньшей мере несколько точек между вашими 100 кг. И желательно для нескольких разных датчиков. 2. По этим данным строят эталонную формулу датчика. Проверяют, есть ли гуляние формулы от датчика к датчику, какой разброс. 3. Теперь можно выбрать кол-во точек для калибровки датчика. Вполне возможно, что хватит всего двух точек в начале и конце шкалы.
  13. Ну так и какая нужна точность? Варианты для excel с грубого к более точным: 1. Может быть вам простой линейной интерполяции между вашими точками будет достаточно. 2. Строите график и аппроксимирующую формулу и оцениваете точность в точках таблицы. Если норм., строите по формуле таблицу с любым шагом. 3. Строите кусочно-полиномиальную интерполяцию по кускам из трех соседних точек таблицы. Выбираете подходящие по точности формулы и строите таблицу с любым шагом.
  14. А вы так и не ответили по поводу необходимой точности. Да и задача выглядит несколько странной. Вам действительно нужно получить таблицу с шагом 1 кг или все же нужно формулу для вычислений в любой точке? А на счёт excel наберите "excel аппроксимация" и польется вода. Excel прямо из таблицы построит графики и выдаст формулу.
  15. Если подключить логику, то правильнее будет сказать: "При втекающем токе не более 50 мА, максимальное напряжение "нуля" выхода не превысит 0.6 В" Резистор тут только для справки - типа рекомендованного значения. Напряжение не более 12 В, но это тоже прямо не указано, только косвенно. И, как говорят классики, "не читайте русских переводов технической документации, сделанных нежными барышнями"
  16. А я желания ТС понял несколько по другому: железка не создает локальную сеть с получением IP, а прикидывается запущенным приложением на ПК, к которому подключена, и использует его IP. Железке только нужно как-то запустить приложение и получить порт для работы.
  17. Все гораздо печальней. Глобализация привела к тому, что для конкретного типоразмера часто остается по одному заводу на весь мир. Мы применяем OLEDы 8х2. Покупали Winstar, Raystar, Crystalfontz. Платы одинаковые, произведены явно в одном месте, наклейки и названия разные. Еще на Mouser можно найти несколько аналогов, включая якобы Vishay. Но фотографиях дисплея те же платы с другими наклейками :(( з.ы. и когда они вдруг кончаются у продавцов в одном месте, сразу пропадают и все якобы конкуренты.
  18. Если хотите именно интерполяцию, смотрите "Интерполяционный многочлен Лагранжа". Но при большом количестве точек он может дать достаточно "волнистую" кривую. При большом кол-ве точек лучше применять аппроксимацию или вообще кусочно-параболическую интерполяцию (но там будут изломы на стыках). В общем, все зависит от необходимой точности.
  19. Все у вас работает согласно программе. Нужно подучить язык Си. mystring это массив из 20-и байт. Указание этого имени без индекса означает адрес первого байта. Выражение if (mystring == '1') означает, что вы сравниваете адрес массива с кодами 0x30 и 0x31. Для сравнения байта пишите if (mystring[0] == '1') но это только один первый байт
  20. Вы думаете, кто-то это будет подробно изучать? Хочу у вас спросить, для прояснения ситуации и оживления дискуссии: У вас уже есть реальная железка с PIC16F877A, или это снова чистая виртуальная реальность с моделированием в Протеусе и Гипертерминалом через виртуальные порты внутри ПК ? Если это так, то плохо. Вы, как истинный ученый привыкли исследовать природные явления в виде "черных ящиков", пиная их и изучая отклик. Это хорошо, но в данной теме все рукотворное и можно влезть внутрь при помощи отладчиков и осциллографов. И не гадать, что там внутри происходит, а просто посмотреть.... Нужно менять подход.
  21. По вашей ссылке на один абзац ниже. Но это: - только для строк с кодом "0" в конце. Для пакета данных нужно добавить длину и считать байты. - работа в блокирующем режиме, т.е. МК больше ничего делать не будет, только ожидать новый байт.
  22. Жаль, что никто ничего не посоветовал что мы не услышали начальника транспортного цеха! Была мысль задействовать Bluetooth Class-of-Device (CoD). Но оказалось, что в двух применяемых нами модулях, поменять класс на свой можно, а получить CoD подключенного удаленного устройства нельзя. Нет таких команд. Только блютус-адрес доступен. Так что придется переносить защиту на уровень приложения. Задача такая: есть блютус-слейв, к которому могут подключаться все. У него мах. 6 одновременных подключений. Нужно обеспечить подключение до 5-и мастеров с полными правами на запись и одного мастера с правами только на чтение. Причем мастера с полными правами - наши устройства с закрытым ПО, а мастер только для чтения может быть произвольный смартфон/ноутбук. Как лучше реализовать авторизацию?
  23. Если имеется ввиду собранный модуль, то при условии хранения в сухом помещении, проблем никаких. Но если есть бело-серо-зеленый налет на местах пайки, то можно подумать...
  24. Ура, заработало! Теперь действительно все ищет, удивительно, что годами никто на это внимание не обращал Большое спасибо!
  25. 10 лет для нормальной МС это ерунда, они же обычно по полвека работают. Про МС из рисовой муки ничего не могу сказать :) При хранении ухудшается паяемость, это да. А реальная деградация кремния только после десятков лет при большой температуре.
×
×
  • Создать...