| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697 |
- #ifndef USB_APPLICATION_SERVICE_DEF_H
- #define USB_APPLICATION_SERVICE_DEF_H
- #include <stdint.h>
- #pragma pack( push, 2 )
- typedef struct
- {
- uint32_t dwProtocolVersion;
- //--------------------------------
- uint32_t dwCapacity;
- uint32_t dwFlashSize;
- uint16_t wDriverVersion;
- uint8_t bBank0Protection: 1;
- uint8_t cReserved0 : 7;
- uint8_t cReserved1;
- union
- {
- struct
- {
- uint8_t cDescLength;
- char cDesc[ 31 ];
- };
- struct
- {
- char ucDesc[ 32 ];
- };
- }
- ChipDescription;
- struct
- {
- uint16_t wRBSCount;
- uint16_t wReserved2;
- uint32_t dwMaxWER;
- uint32_t dwWER[ 3 ];
- }
- WERInfo; // Write-Erase-count Resource descriptor
- }
- TFlashMemInfo_t;
- #pragma pack( pop )
- #pragma pack( push, 1 )
- typedef struct
- {
- uint16_t requestVersion; // âåðñèÿ ñòðóêòóðû (âåðñèÿ çàïðîñà)
- uint16_t firmwareId; // âåðñèÿ ÏÎ
- uint16_t deviceId; // ìîäåëü ACM (ïðèñâîåííàÿ ÷åðåç ÎÁÇÎÐ)
- uint8_t reserved[250]; // çàðåçåðâèðîâàíî
- }
- TModelInfo_t;
- #pragma pack( pop )
- #pragma pack( push, 1 )
- typedef struct
- {
- uint16_t requestVersion; // âåðñèÿ ñòðóêòóðû (âåðñèÿ çàïðîñà)
- uint16_t firmwareId; // âåðñèÿ ÏÎ
- uint16_t deviceId; // ìîäåëü ACM (ïðèñâîåííàÿ ÷åðåç ÎÁÇÎÐ)
- }
- TModelInfo_base_t;
- typedef struct
- {
- uint16_t requestVersion; // âåðñèÿ ñòðóêòóðû (âåðñèÿ çàïðîñà)
- uint16_t firmwareId; // âåðñèÿ ÏÎ
- uint16_t deviceId; // ìîäåëü ACM (ïðèñâîåííàÿ ÷åðåç ÎÁÇÎÐ)
- uint8_t reserved[250]; // çàðåçåðâèðîâàíî
- }
- TModelInfo_v0_t;
- typedef struct
- {
- uint16_t requestVersion; // âåðñèÿ ñòðóêòóðû (âåðñèÿ çàïðîñà)
- uint16_t firmwareId; // âåðñèÿ ÏÎ
- uint16_t deviceId; // ìîäåëü ACM (ïðèñâîåííàÿ ÷åðåç ÎÁÇÎÐ)
- uint8_t modelName[20]; // èìÿ ìîäåëè ACM
- uint8_t ampSwitchList[60]; // ñïèñîê äîñòóïíûõ ñîñòîÿíèé óñèëèòåëåé
- uint8_t ampStatesCount; // ×èñëî äîñòóïíûõ ñîñòîÿíèé óñèëèòåëåé
- uint8_t filtSwitchList[60]; // ñïèñîê äîñòóïíûõ ñîñòîÿíèé ôèëüòðîâ
- uint8_t filtStatesCount; // ×èñëî äîñòóïíûõ ñîñòîÿíèé ôèëüòðîâ
- uint8_t reserved[108]; // çàðåçåðâèðîâàíî
- }
- TModelInfo_v1_t;
- #pragma pack( pop )
- #pragma pack( push, 4 )
- typedef union
- {
- uint8_t raw_bytes[1];
- TFlashMemInfo_t svcReq_Flash;
- uint8_t svcReq_FlashReady;
- TModelInfo_v1_t svcReq_Model;
- }
- TServiceRequestBuffer_t;
- #pragma pack( pop )
- #endif
|