int main(int argc, char **argv) { if (argc != 2) { fprintf(stderr,"usage: %s <hostname> \n", argv[0]); exit(0); } hostname = argv[1]; network_setup(); }
void setup() { NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2); RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO, ENABLE); GPIO_PinRemapConfig(GPIO_Remap_SWJ_JTAGDisable, ENABLE); WWDG_DeInit(); time_setup(); debug_setup(); rtc_setup(); spi_setup(); sdcard_setupGpio(); cc3000_setupGpio(); button_setup(); if (!sdcard_setup()) { printf("Failed to setup SDCard\n"); } else { if (!sdcard_fat_setup()) { printf("Failed to setup SDCard Fat\n"); } } if (config_read()) { printf("read config success\n"); } else { printf("read config FAILED\n"); while (1); } network_setup(); uint32_t ntpTime = ntp_getTime(); printf("ntp time %lu\n", ntpTime); if (ntpTime > 0) { rtc_setTime(ntpTime); } }
static void publisher(void) { int i, rc; /* Set everything to 0 and later just assign the required fields. */ memset(&client_ctx, 0x00, sizeof(client_ctx)); /* connect, disconnect and malformed may be set to NULL */ client_ctx.mqtt_ctx.connect = connect_cb; client_ctx.mqtt_ctx.disconnect = disconnect_cb; client_ctx.mqtt_ctx.malformed = malformed_cb; client_ctx.mqtt_ctx.net_init_timeout = APP_NET_INIT_TIMEOUT; client_ctx.mqtt_ctx.net_timeout = APP_TX_RX_TIMEOUT; client_ctx.mqtt_ctx.peer_addr_str = SERVER_ADDR; client_ctx.mqtt_ctx.peer_port = SERVER_PORT; #if defined(CONFIG_MQTT_LIB_TLS) /** TLS setup */ client_ctx.mqtt_ctx.request_buf = tls_request_buf; client_ctx.mqtt_ctx.request_buf_len = TLS_REQUEST_BUF_SIZE; client_ctx.mqtt_ctx.personalization_data = TLS_PRIVATE_DATA; client_ctx.mqtt_ctx.personalization_data_len = strlen(TLS_PRIVATE_DATA); client_ctx.mqtt_ctx.cert_host = TLS_SNI_HOSTNAME; client_ctx.mqtt_ctx.tls_mem_pool = &tls_mem_pool; client_ctx.mqtt_ctx.tls_stack = tls_stack; client_ctx.mqtt_ctx.tls_stack_size = K_THREAD_STACK_SIZEOF(tls_stack); client_ctx.mqtt_ctx.cert_cb = setup_cert; client_ctx.mqtt_ctx.entropy_src_cb = NULL; #endif /* Publisher apps TX the MQTT PUBLISH msg */ client_ctx.mqtt_ctx.publish_tx = publish_cb; /* The connect message will be sent to the MQTT server (broker). * If clean_session here is 0, the mqtt_ctx clean_session variable * will be set to 0 also. Please don't do that, set always to 1. * Clean session = 0 is not yet supported. */ client_ctx.connect_msg.client_id = MQTT_CLIENTID; client_ctx.connect_msg.client_id_len = strlen(MQTT_CLIENTID); client_ctx.connect_msg.clean_session = 1; client_ctx.connect_data = "CONNECTED"; client_ctx.disconnect_data = "DISCONNECTED"; client_ctx.publish_data = "PUBLISH"; rc = network_setup(); PRINT_RESULT("network_setup", rc); if (rc < 0) { return; } rc = mqtt_init(&client_ctx.mqtt_ctx, MQTT_APP_PUBLISHER); PRINT_RESULT("mqtt_init", rc); if (rc != 0) { return; } for (i = 0; i < CONN_TRIES; i++) { rc = mqtt_connect(&client_ctx.mqtt_ctx); PRINT_RESULT("mqtt_connect", rc); if (!rc) { goto connected; } } goto exit_app; connected: rc = try_to_connect(&client_ctx); PRINT_RESULT("try_to_connect", rc); if (rc != 0) { goto exit_app; } i = 0; while (i++ < APP_MAX_ITERATIONS) { rc = mqtt_tx_pingreq(&client_ctx.mqtt_ctx); k_sleep(APP_SLEEP_MSECS); PRINT_RESULT("mqtt_tx_pingreq", rc); prepare_mqtt_publish_msg(&client_ctx.pub_msg, MQTT_QoS0); rc = mqtt_tx_publish(&client_ctx.mqtt_ctx, &client_ctx.pub_msg); k_sleep(APP_SLEEP_MSECS); PRINT_RESULT("mqtt_tx_publish", rc); prepare_mqtt_publish_msg(&client_ctx.pub_msg, MQTT_QoS1); rc = mqtt_tx_publish(&client_ctx.mqtt_ctx, &client_ctx.pub_msg); k_sleep(APP_SLEEP_MSECS); PRINT_RESULT("mqtt_tx_publish", rc); prepare_mqtt_publish_msg(&client_ctx.pub_msg, MQTT_QoS2); rc = mqtt_tx_publish(&client_ctx.mqtt_ctx, &client_ctx.pub_msg); k_sleep(APP_SLEEP_MSECS); PRINT_RESULT("mqtt_tx_publish", rc); } rc = mqtt_tx_disconnect(&client_ctx.mqtt_ctx); PRINT_RESULT("mqtt_tx_disconnect", rc); exit_app: mqtt_close(&client_ctx.mqtt_ctx); printk("\nBye!\n"); }
void dc_electronic_load_setup() { setCurrentMilliamps = 0; readCurrentMilliamps = 0; readMilliVolts = 0; setRateIndex = 0; readCurrentMilliampsDisplay = DISPLAY_MILLI; gfxState = GFX_STATE_MEASURE; dma_ring_buffer_init(&g_debugUsartDmaInputRingBuffer, DEBUG_USART_RX_DMA_CH, g_debugUsartRxBuffer, DEBUG_USART_RX_BUFFER_SIZE); debug_setup(); debug_write_line("?BEGIN setup"); process_init(); process_start(&etimer_process, NULL); process_start(&debug_process, NULL); #ifdef DISP6800_ENABLE process_start(&gfx_update_process, NULL); process_poll(&gfx_update_process); #endif spi_setup(); #ifdef DISP6800_ENABLE disp6800_setup(); gfx_setup(); #endif #ifdef ENCODER_ENABLE encoder_setup(); #endif #ifdef FLASH_ENABLE flashsst25_setup(); #endif #ifdef MAC_ENABLE mac25aa02e48_setup(); mac25aa02e48_read_eui48(); #endif #ifdef ADC_ENABLE adc_setup(); #endif #ifdef DAC_ENABLE dac_setup(); dac_set(0); #endif #ifdef NETWORK_ENABLE network_setup(EUI48); #endif #ifdef FAN_ENABLE fan_setup(); #endif #ifdef BUTTONS_ENABLE buttons_setup(); #endif time_setup(); recorder_setup(); debug_write_line("?END setup"); }