| | |
| | | static void SendDfuFile(int fileLen, int sentLen, int blockLen, const uint8_t *data); |
| | | static void GoNextDfuLater(union sigval sig); |
| | | static void GoNextDfu(void); |
| | | static void ReadCardTimeout(union sigval sig); |
| | | |
| | | void ParseMcuInit(void) |
| | | { |
| | |
| | | break; |
| | | case ID_MC_RFCARD_RSP: |
| | | DEBUG("ID_MC_RFCARD_RSP"); |
| | | AppTimer_delete(ReadCardTimeout); |
| | | |
| | | if (lenth > 0) |
| | | PlatformStatusChanged(CARD_UPDATE_EVT, data, lenth); |
| | | break; |
| | | default: |
| | | break; |
| | |
| | | GoNextDfu(); |
| | | } |
| | | } |
| | | |
| | | static int readCartCnt = 0; |
| | | |
| | | static void ReadCardTimeout(union sigval sig) { |
| | | AppTimer_delete(ReadCardTimeout); |
| | | |
| | | readCartCnt++; |
| | | |
| | | if (readCartCnt < 2) { |
| | | AppTimer_add(ReadCardTimeout, D_SEC(3)); |
| | | SendMcuCommand(ID_CM_READ_RFCARD, NULL, 0); |
| | | } else { |
| | | uint8_t data[8] = {0}; |
| | | PlatformStatusChanged(CARD_UPDATE_EVT, data, sizeof(data)); |
| | | } |
| | | } |
| | | |
| | | void ReadCard(void) |
| | | { |
| | | readCartCnt = 0; |
| | | |
| | | AppTimer_delete(ReadCardTimeout); |
| | | AppTimer_add(ReadCardTimeout, D_SEC(3)); |
| | | SendMcuCommand(ID_CM_READ_RFCARD, NULL, 0); |
| | | } |