CC3000 test App

Dependencies:   CC3000HostDriver mbed

Files at this revision

API Documentation at this revision

Comitter:
dflet
Date:
Sun Aug 25 16:30:45 2013 +0000
Parent:
0:305844973572
Child:
2:17c37c0b0534
Commit message:
Check for CC3000 IRQ low, due to blocking procedures. IRQ can change state and not be serviced. CC3000Core.cpp function WlanInterruptEnable.

Changed in this revision

CC3000Core.cpp Show annotated file Show diff for this revision Revisions of this file
--- a/CC3000Core.cpp	Fri Aug 02 15:14:41 2013 +0000
+++ b/CC3000Core.cpp	Sun Aug 25 16:30:45 2013 +0000
@@ -139,10 +139,20 @@
     }
     
 void WlanInterruptEnable(void) {
+    
+    int8_t val;
     irq.fall(&IntSpi);
+  
+  //This check is required due to IRQ being turned off during blocking proceedures.
+  //Check if CC3000 irq is low, and service.  
+    val = ReadWlanInterruptPin();    
+    if (!val)
+    {  
+        IntSpi();       
+    }
     //__enable_irq(); //Enable Interrupts
     //SPIInterruptsEnabled = 1;
-    }
+}
 
 
 void WlanInterruptDisable(void) {