constants.h 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. // // ******************************************************************
  2. // // /\ /| @File Constants.h
  3. // // \ V/ @Brief
  4. // // | "") @Author lijinwen, ghz005@uni-trend.com.cn
  5. // // / | @Creation 2024-05-17
  6. // // / \\ @Modified 2024-06-24
  7. // // *(__\_\
  8. // // ******************************************************************
  9. #pragma once
  10. #include <cstdint>
  11. #include "../BaseHelper/Constants.h"
  12. namespace Protocol
  13. {
  14. //差分非对称长度比例阈值
  15. constexpr double USB_DIFF_LEN_DIFFERENCE_THRESHOLD = 0.95;
  16. //最小序列长度
  17. constexpr int32_t USB_MINIMUM_SEQUENCE_LENGTH = 12;
  18. //时域差异容差阈值
  19. constexpr double USB_TIME_DIFFERENCE_THRESHOLD = 0.28;
  20. //时域差异容差阈值
  21. constexpr double USB_TIME_DIFFERENCE_THRESHOLD_HIGH_SPEED = 0.36;
  22. //同步帧长度容差
  23. constexpr double USB_SYNC_BIT_TOL = 0.95;
  24. //同步帧长度
  25. //NRZI 连续补位/个数
  26. constexpr int32_t USB_NRZI_COMPLEMENT_PER_NUM = 6;
  27. constexpr int32_t USB_IDLE_MIN_BIT_LEN = 8;
  28. constexpr int32_t USB_BYTE_BIT_COUNT = 8;
  29. constexpr double USB_LOW_SPEED_MHZ = 1.5;
  30. constexpr double USB_FULL_SPEED_MHZ = 12;
  31. constexpr double USB_HIGH_SPEED_MHZ = 480;
  32. //同步帧长度
  33. constexpr int32_t USB_USB_SYNC_BIT_MAX_LEN = 32;
  34. constexpr int32_t USB_USB_SYNC_BIT_NORMAL_SPEED_LEN = USB_BYTE_BIT_COUNT;
  35. constexpr int32_t USB_USB_SYNC_BIT_HIGH_SPEED_LEN = USB_USB_SYNC_BIT_MAX_LEN;
  36. constexpr int32_t USB_ADDR_BIT_COUNT = 7;
  37. constexpr int32_t USB_ENDPOINT_BIT_COUNT = 4;
  38. constexpr int32_t USB_FRAMEID_BIT_COUNT = 11;
  39. constexpr int32_t USB_CRC5_BIT_COUNT = 5;
  40. constexpr int32_t USB_CRC16_BIT_COUNT = 16;
  41. }