Example #1
0
/***********************************************************************************
* @fn           HalUartPollUSB
*
* @brief        The USB UART main task function. Should be called from the OSAL main loop.
*
* @param        none
*
* @return       none
*/
void HalUARTPollUSB(void)
{
#if defined HAL_SB_BOOT_CODE
  while (USBIF)  usbirqHandler();
#endif
  halUartPollEvt();
  halUartPollRx();
  halUartPollTx();
}
Example #2
0
/**************************************************************************************************
 * @fn          P2INT_VECTOR
 *
 * @brief       Intercept the USB's ISR here and consume locally if in boot loader, or forward
 *              to a valid run-code image.
 *
 * input parameters
 *
 * None.
 *
 * output parameters
 *
 * None.
 *
 * @return      None.
 **************************************************************************************************
 */
HAL_ISR_FUNCTION( usbISR, P2INT_VECTOR )
{
  if (magicByte == SB_STACK_VALUE)
  {
    void (*usbFunc)(void);
    usbFunc = (void (*)(void))0x2033;
    usbFunc();
  }
  else if (magicByte == SB_MAGIC_VALUE)
  {
    usbirqHandler();
  }
  else
  {
    asm("NOP");  // Not expected.
  }
}