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

Grigorij

Участник*
  • Постов

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

  • Посещение

Репутация

0 Обычный

Информация о Grigorij

  • Звание
    Частый гость
    Частый гость

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

2 740 просмотров профиля
  1. Судя по сайту Hologram похож на Emnify. А вот сим-кам от Emnify мы пользовались в своих приборах с модемами от SIMCOM (только 2G) и Centerion (2G/3G/4G). В целом все работает и данные ходят нормально (у нас TCP/SSL/MQTT, плюс отдельно FTP), и глобальное покрытие, и тариф почти один на все страны. Однако самое интересное начинается (как заметил CADiLO), когда что-то перестало работать или работает не так, как надо. В итоге имеем: надо смотреть не только страну, но и с какими операторами в этой стране есть договор (у нас были случае, когда у клиента ловил только тот оператор, с которым у Emnify не было договора) если прибор не выходит на связь, то в ряде случаев выяснить проблему не возможно (у нас например прикол был в Латвии: имеем 2 заведомо рабочие симки из одной партии - одна работала, другая нет; в офисе обе симки после возврата из Латвии продолжали работать нормально) За все время тех.поддержка Emnify приятно удивила только одни раз, когда они связались с местным оператором и проверили работу всех систем. Но это видимо было исключение из правил, так остальное время были стандартные отписки.
  2. Просто посмотрите готовые реализации и выберете ту, которая вас устраивает для вашей же программы. Ну вот хотя бы этот вариант с GitHub - см функции zmodem_rx и ниже, а лучше вообще весь исходник.
  3. Посмотрите китайцев SZOMK. У них сравнительно большой ассортимент корпусов с вменяемыми ценами (есть и с батарейным отсеком под 3 АА). Мы у них 2 корпуса берем. В одном они нам отверстия дополнительные нарезают (мы от руки чертеж набросали, и этого оказалось этого достаточно). Качестве вполне неплохое. Плохо только то, что чертежи в основном по запросу (на сайте не все чертежи есть), и на них иного не все размеры проставлены. И еще они перестали 3D модели корпусов высылать.
  4. Вы при вызове ppp_set_auth() задаете имя пользователя и пароль для авторизации. Они корректные для MTC, а вот корректный ли APN Host name задан с помощью AT+CGDCONT? Какая у вас последовательность AT-команд до запуска LWIP? Ну и выше уже предложили проверить, все ли данные от модема в LWIP пересылаются.
  5. Вполне возможно. Я порылся в своих платах и нашел файлы, которые в 16-ом или 17-ом были сделаны. В них нет информации об Altium, а начало файла выглядит точно так же, как на вашем примере. В версии 18.1.7 build 191 уже есть информация об Altium в Gerber-файлах. 19-ый Altium я не использовал, ну а пример из 20-го я уже приводил. Во всех случаях я Altium ставил "на чистую" без импорта предыдущих настроек. Так что очень похоже на какое-то нововведение (либо есть какая-то дефолтная настройка по добавлению этой информации, которую я найти не могу пока).
  6. Пример, который я приводил, из Gerber-файла для слоя Bottom (там же в примере есть и описание, какая версия Altium-а это делает "по умолчанию"). Да и для других слоев тоже есть эта информация в самом начале файла. Все файлы при этом сгенерированы через Output Job. Если же сделать экспорт Gerber-файлов из встроенного CAM Editor, то в настройка экспорта для CAM Editor-а можно указать "Suppress comments (G04)" и убрать все эти упоминания. А вот для Output Job я как-то пока не нашел такой возможности.
  7. К слову Altium в gerber-а тоже добавляет информацию о себе. Достаточно открыть файл в блокноте и проверить первые 5 строчек. Там используется код G04 и приводится информация о конкретном слое: G04* G04 #@! TF.GenerationSoftware,Altium Limited,Altium Designer,20.0.9 (164)* G04* G04 Layer_Physical_Order=4* G04 Layer_Color=16711680* %FSLAX44Y44*% В pick&place файле тоже может быть информации об Altium-е (включая полный путь к проекту на компе). А вот в файлах сверловки я информации об Altium-е пока не находил (если конечно не брать в расчет файл с отчетом с расширением DRR)
  8. Если речь именно про ANSI C, то можно: Вариант 1. Если речь именно про ANSI C, то можно: Вариант 1. случайно отправил раньше времени, продолжение... Вариант 2. Сделать что-то типа такого: enum { CONFIG_FIELD_1, CONFIG_FIELD_2, } void SaveConfig(int type, void * value) { // забираем семафор switch (type) { case CONFIG_FIELD_1: config.var1 = *((int *)value); break; case CONFIG_FIELD_2: config.var2 = *((double *)value); break; } // сохраняем все // отдаем семафор } // где-нибудь в коде int newValue = 5; SaveConfig(CONFIG_FIELD_2, (void *)&newValue); Вариант 3. Для каждого типа данных сделать свои функции Ну и наверняка можно еще что-нибудь придумать, так как выше - это первое что пришло в на ум из того, что сам использовал в коде в разное время. Все зависит от вам и вашей программы, т.к. совсем универсального решения нет. и редактирование нормально не работает. Вариант 1. Это посмотреть на va_start, va_list, va_end. Примеры можно найти здесь
  9. Я так понимаю вы ходите Pick and Place файл получить. Тогда - статья про Pick and Place на сайте AD
  10. Есть еще один вариант, который в принципе не зависит от конкретного модуля и не требует отдельного аппаратного навигационного модуля. Можно использовать сервис типа этого https://combain.com. Проверял на модеме от Gemalto, работает вполне не плохо, но есть целый ряд минусов: Самый весомый - сервис платный. И для постоянной навигации (типа трекер) не подходит, т.к. дешевле уже навигационный модуль ставить Запрос надо отправлять по HTTP, соответственно наличие интернета - обязательно В зависимости от конкретного модема может потребоваться много "ручной работы" (собрать информацию о вышках с помощью AT команд) У нас приборы стационарные. Мы думали использовать этот сервис для обнаружения факта существенного перемещения приборов (например из одного здания в другое). И даже потестировали их бесплатный доступ. Но пока отказались от этого функционала. Просто пока не ясно, насколько он нам реально нужен.
  11. Странно. Я сейчас попробовал создать комнату, вроде все работает (версия 20.0.9). Сделал это следующим образом. Выбрал необходимые компоненты, затем Desing->Room->Create Rectangle Room from selected components. Вокруг компонентов появилась комната с названием RoomDefinition_1. Размещение и трассировку потом также получилось скопировать (Desing->Room->Copy Room Formats)
  12. Комнаты можно добавлять на плате вручную. Если нарисовать комнату поверх компонентов, то эти компоненты должны автоматом попадать в эту комнату (см. цитату ниже из мануала на AD). А дальше можно копировать размещение и трассировку между комнатами, как вы и делали до этого в случае, если части схемы были на разных листах.
  13. Все что показывает отладчик (Keil, IAR, MSVS и т.д.) - это все на усмотрение разработчиков конкретных сред и то, как они округляют число при выводе. Выше уже написали, что далеко не все вещественные числа можно точно представить с использованием float или double. И здесь нет никакой магии, просто особенность стандарта и способа представления таких чисел.
  14. И в догонку к предыдущему ответу. Решение проблем (если именно такое точно представление требуется) - использование чисел с фиксированной запятой (и соответствующей математики). Про данный тип чисел море статей, которые легко находятся в гугле, а на том же GitHub можно и готовые библиотеки найти.
×
×
  • Создать...