Refactor address variable
This commit is contained in:
parent
16955979a2
commit
3ce9c60448
@ -450,10 +450,8 @@ constexpr ChipEraseState &operator|=(ChipEraseState &self, const ChipEraseState
|
|||||||
return self;
|
return self;
|
||||||
}
|
}
|
||||||
|
|
||||||
static inline void handleMessage(Message &msg, ChipEraseState &chipEraseFlag)
|
static inline void handleMessage(Message &msg, uint32_t &addr, ChipEraseState &chipEraseFlag)
|
||||||
{
|
{
|
||||||
static uint32_t s_address;
|
|
||||||
|
|
||||||
if (isSignOn(msg))
|
if (isSignOn(msg))
|
||||||
formatSignOnAnswer(msg);
|
formatSignOnAnswer(msg);
|
||||||
else if (isGetParameter(msg))
|
else if (isGetParameter(msg))
|
||||||
@ -469,20 +467,20 @@ static inline void handleMessage(Message &msg, ChipEraseState &chipEraseFlag)
|
|||||||
else if (isReadLockIsp(msg))
|
else if (isReadLockIsp(msg))
|
||||||
formatReadLockIspAnswer(msg);
|
formatReadLockIspAnswer(msg);
|
||||||
else if (isLoadAddress(msg)) {
|
else if (isLoadAddress(msg)) {
|
||||||
s_address = msg.body[1];
|
addr = msg.body[1];
|
||||||
s_address = (s_address << 8) | msg.body[2];
|
addr = (addr << 8) | msg.body[2];
|
||||||
s_address = (s_address << 8) | msg.body[3];
|
addr = (addr << 8) | msg.body[3];
|
||||||
s_address = (s_address << 8) | msg.body[4];
|
addr = (addr << 8) | msg.body[4];
|
||||||
formatLoadAddressAnswer(msg);
|
formatLoadAddressAnswer(msg);
|
||||||
} else if (isReadFlashIsp(msg))
|
} else if (isReadFlashIsp(msg))
|
||||||
formatReadFlashIspAnswer(msg, s_address);
|
formatReadFlashIspAnswer(msg, addr);
|
||||||
else if (isReadEepromIsp(msg))
|
else if (isReadEepromIsp(msg))
|
||||||
formatReadEepromIspAnswer(msg, s_address);
|
formatReadEepromIspAnswer(msg, addr);
|
||||||
else if (isChipEraseIsp(msg)) {
|
else if (isChipEraseIsp(msg)) {
|
||||||
chipEraseFlag = ChipEraseState::REQUEST;
|
chipEraseFlag = ChipEraseState::REQUEST;
|
||||||
formatChipEraseIspAnswer(msg);
|
formatChipEraseIspAnswer(msg);
|
||||||
} else if (isProgramEepromIsp(msg))
|
} else if (isProgramEepromIsp(msg))
|
||||||
formatProgramEepromIspAnswer(msg, s_address);
|
formatProgramEepromIspAnswer(msg, addr);
|
||||||
else if (isLeaveProgmodeIsp(msg)) {
|
else if (isLeaveProgmodeIsp(msg)) {
|
||||||
chipEraseFlag |= ChipEraseState::RESPONSE;
|
chipEraseFlag |= ChipEraseState::RESPONSE;
|
||||||
formatLeaveProgmodeIspAnswer(msg);
|
formatLeaveProgmodeIspAnswer(msg);
|
||||||
@ -502,11 +500,12 @@ int main()
|
|||||||
serial.init();
|
serial.init();
|
||||||
|
|
||||||
Message msg;
|
Message msg;
|
||||||
|
uint32_t addr = 0x0000;
|
||||||
ChipEraseState chipEraseFlag = ChipEraseState::NONE;
|
ChipEraseState chipEraseFlag = ChipEraseState::NONE;
|
||||||
|
|
||||||
while (true) {
|
while (true) {
|
||||||
if (receiveMessage(msg)) {
|
if (receiveMessage(msg)) {
|
||||||
handleMessage(msg, chipEraseFlag);
|
handleMessage(msg, addr, chipEraseFlag);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user