Skip to end of banner
Go to start of banner

Progress Bar Monitor

Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

Version 1 Current »

This code can be run by any thread that’s not currently busy calling the FlashPro-ARM or GangPro-ARM library. The condition for this example to work properly is that F_OpenInstancesAndFPAs, and F_Initialization has correctly initialized the given fpa index (1 to 64) given as a parameter to this function.

void UpdateProgress(BYTE fpa, INT_X &progValue, INT_X &lastOpCode, CString &opCodeUpdate)
{
  if(fpa == 0)
  {
    //invalid index
    return;
  }
  progValue = F_GetProgressBar(fpa);
  lastOpCode = F_GetLastOpCode(fpa);
  opCodeUpdate = "Unknown";
  switch(lastOpCode)
  {
    case PROG_OPCODE_VERIFY_ACCESS:
      opCodeUpdate = "Verify Access To MCU";
      break;
    case PROG_OPCODE_FLASH_ERASE:
      opCodeUpdate = "Flash Erase";
      break;
    case PROG_OPCODE_FLASH_BLANK_CHECK:
      opCodeUpdate = "Flash Blank Check";
      break;
    case PROG_OPCODE_FLASH_SELECTED_BLANK_CHECK:
      opCodeUpdate = "Selected Memory Blank Check";
      break;
    case PROG_OPCODE_FLASH_WRITE:
      opCodeUpdate = "Flash Write";
      break;
    case PROG_OPCODE_FLASH_VERIFY:
      opCodeUpdate = "Flash Verify";
      break;
    case PROG_OPCODE_FLASH_READ:
      opCodeUpdate = "Flash Read";
      break;
    case PROG_OPCODE_LOCK_MCU:
      opCodeUpdate = "Lock MCU";
      break;
    case PROG_OPCODE_UNLOCK_MCU:
      opCodeUpdate = "Unlock MCU";
      break;
    case PROG_OPCODE_START_APP:
      opCodeUpdate = "Start Application";
      break;
  }  
}

This code updates the progress bar and operation name string at the bottom of this demo; in the screenshot the operation name is “Flash Verify” and progress is 100 meaning the function has finished:

  • No labels