Временная метка в nanopb

#timestamp #protocol-buffers #nanopb

#временная метка #буферы протокола #nanopb

Вопрос:

Есть ли поддержка google.protobuf.Тип данных временной метки и функция кодирования-декодирования в nanopb? Или мы должны кодировать / декодировать как int64 или может быть uint32 (если возможно до 2106 года)? Целевым устройством является 32-разрядный микроконтроллер, а конечным сервером является реализация на основе Java.

Ответ №1:

google.protobuf.Timestamp это просто «хорошо известный» тип сообщения. Его определение доступно из timestamp.proto в репозитории Google:

 message Timestamp {
  int64 seconds = 1;
  int32 nanos = 2;
}
  

Вы можете создавать, timestamp.proto используя генератор nanopb, так же, как вы создаете другие .proto файлы.

Ответ №2:

Вы можете использовать файл timestamp.proto из пакета Google protobuf и скомпилировать его с nanopb напрямую для создания файлов timestamp.pb.h и timestamp.pb.c.