Okundu Omeni
/
wifi-https-ble-sm-uart-atcmd-5-13-1
this is using the mbed os version 5-13-1
Diff: source/main-https.cpp
- Revision:
- 84:7c7add00f4bf
- Parent:
- 83:9c271a50a70b
- Child:
- 86:04fc2fcda7ec
--- a/source/main-https.cpp Tue Mar 26 23:33:51 2019 +0000 +++ b/source/main-https.cpp Thu Mar 28 22:13:06 2019 +0000 @@ -76,18 +76,26 @@ //unsigned char rt_stk[1024]; //unsigned char hp_stk[1024]; //unsigned char lp_stk[1024]; -unsigned char btle_stk[1024]; -unsigned char wifi_stk[4*1024]; -unsigned char atcmd_stk[4*1024]; /* creates three tread objects with different priorities */ //Thread real_time_thread(osPriorityRealtime, 1024, &rt_stk[0]); //Thread high_prio_thread(osPriorityHigh, 1024, &hp_stk[0]); //Thread low_prio_thread(osPriorityNormal, 1024, &lp_stk[0]); + +#ifdef USE_MAIN_THREAD_STACK +// using main thread stack +unsigned char btle_stk[1024]; +unsigned char wifi_stk[8*1024]; +unsigned char atcmd_stk[4*1024]; Thread btle_thread(BTLE_THREAD_PRIORITY, 1024, &btle_stk[0]); -Thread wifi_thread(WIFI_THREAD_PRIORITY, 4*1024, &wifi_stk[0]); +Thread wifi_thread(WIFI_THREAD_PRIORITY, 8*1024, &wifi_stk[0]); Thread atcmd_thread(ATCMD_THREAD_PRIORITY, 4*1024, &atcmd_stk[0]); - +#else +// using global heap +Thread btle_thread(BTLE_THREAD_PRIORITY, 2*1024); +Thread wifi_thread(WIFI_THREAD_PRIORITY, 8*1024); +Thread atcmd_thread(ATCMD_THREAD_PRIORITY, 8*1024); +#endif /* create a semaphore to synchronize the threads */ Semaphore sync_sema; @@ -391,11 +399,15 @@ #define SKIP_WIFI_SCAN_DEMO #define BLE_STOP_START_ADV_SCAN_DEMO #define SKIP_WIFI_CONNECT_DEMO +#define PAUSE_SECONDS 2 int main() { + //print_all_thread_info(); + //print_heap_and_isr_stack_info(); reset_counter++; print_memory_info(); printf("\r\n ++++++ PROGRAM STARTING -- reset count = %d ++++++ \r\n", reset_counter); device = new RawSerial(USBTX, USBRX, DEFAULT_BAUD_RATE); + //device = new RawSerial(PA_9, PA_10, DEFAULT_BAUD_RATE); printf("*** HELLO MESSAGE *** \n %s", (char *)&hello_msg[6]); setupDefaultWiFiConfig(); @@ -417,8 +429,8 @@ peripheral->run(); btle_thread.start(callback(&queue, &EventQueue::dispatch_forever)); print_memory_info(); - printWaitAbortKeyPress(120); - peripheral->stopAdvertising(); + printWaitAbortKeyPress(PAUSE_SECONDS); + //peripheral->stopAdvertising(); #ifndef DISABLE_WIFI // comment out wifi part int start = Kernel::get_ms_count(); @@ -450,8 +462,8 @@ printWait(2); // lets wait for a minute before turning BLE back on device->printf("\n ++++++ restarting BLE ++++++ \n\n"); #endif /// endif DISABLE_WIFI - printWaitAbortKeyPress(60); - peripheral->startAdvertising(); + printWaitAbortKeyPress(PAUSE_SECONDS); + //peripheral->startAdvertising(); #ifdef ENABLE_UART_BACKGRND_DEMO for(int i=0;i<255;i++) { @@ -473,7 +485,7 @@ #endif device->printf("\r\n++++++ Press key for Wifi demo test ++++++ \r\n"); - printWaitAbortKeyPress(120); + printWaitAbortKeyPress(PAUSE_SECONDS); #ifndef SKIP_WIFI_SCAN_DEMO device->printf("\r\n++++++ Test WiFi Manager Network Scan ++++++ \r\n"); int count;