Beispiel #1
0
static void wlan_cb (long event_type,
                     char * data,
                     unsigned char length)
{
  int rv = BSP430_HAL_ISR_CALLBACK_EXIT_LPM;

  switch (event_type) {
    case HCI_EVNT_WLAN_UNSOL_CONNECT:
      event_flags_v |= EVENT_FLAG_WLANCONN;
      break;
    case HCI_EVNT_WLAN_UNSOL_DHCP:
      event_flags_v |= EVENT_FLAG_IPCONN;
      break;
    case HCI_EVNT_WLAN_UNSOL_DISCONNECT:
      event_flags_v |= EVENT_FLAG_DISCONN;
      break;
    case HCI_EVENT_CC3000_CAN_SHUT_DOWN:
      event_flags_v |= EVENT_FLAG_SHUTDOWN;
      ++can_shutdown;
      break;
    default:
      cprintf("%s wlan_cb evnt %#lx len %u at %p\n",
              xBSP430uptimeAsText_ni(ulBSP430uptime_ni()),
              event_type, length, data);
    /*FALLTHRU*/
    case HCI_EVNT_WLAN_KEEPALIVE:
      /* No wakeup for uninteresting events */
      rv = 0;
  }

  /* Wake up the main program to respond to whatever just happened. */
  iBSP430cc3000IRQrv = rv;
}
Beispiel #2
0
static int
cmd_uptime (const char * argstr)
{
  BSP430_CORE_INTERRUPT_STATE_T istate;
  BSP430_CORE_SAVE_INTERRUPT_STATE(istate);
  BSP430_CORE_DISABLE_INTERRUPT();
  cprintf("Up %s\n", xBSP430uptimeAsText_ni(ulBSP430uptime_ni()));
  BSP430_CORE_RESTORE_INTERRUPT_STATE(istate);
  return 0;
}