Modularizando o src
Dependencies: EALib EthernetInterface_vz mbed-rtos mbed
Fork of header_main_colinas_V0-20-09-14 by
debug.h
- Committer:
- klauss
- Date:
- 2015-07-21
- Revision:
- 131:938ab88facae
- Parent:
- 128:3ae1c74773a8
- Child:
- 132:05cd37f7e007
File content as of revision 131:938ab88facae:
/** * @file debug.h * @Synopsis Instrumenta o uso de debug no código da header. * @author Jhonatan Casale / PedroZN * @version 1 * @date 2014-11-05 */ #ifndef __DEBUG_H__ #define __DEBUG_H__ #include "shared_variables.h" extern UDPSocket udp_client; extern bool udp_query; extern bool tcp_session; extern bool from_eth; extern uint16_t string_msg_overflow; extern Endpoint udp_server; extern uint16_t miss_prompt_udp_send_pkg; extern UDPSocket eth_fw_debug; extern Endpoint eth_fw_debug_server; const uint16_t DEBUG_MSG_SIZE = 1024; const uint8_t DEBUG_AUX_MSG_SIZE = 64; extern char debug_msg1[ DEBUG_MSG_SIZE + DEBUG_AUX_MSG_SIZE ]; ///< Buffer usado na composisão da mensagem enviada pela macro debug_msg extern char debug_msg2[ DEBUG_MSG_SIZE ]; ///< Buffer usado na composisão da mensagem enviada pela macro debug_msg extern char msg_[ DEBUG_MSG_SIZE ]; ///< Buffer utilizado pela macro send_msg extern bool cb_session; ///< Não utilizada atualmente. extern bool cb_status; ///< Não utilizada atualmente. extern bool debug_telemetry; ///< Variável de controle que aciona o debug de telemetria. extern bool main_test; ///< Variável de controle para acionamento de algum comando de interesse. extern bool sizes; extern bool debug_reconnect; extern uint16_t miss_debug_fw_send_pkg; extern uint16_t miss_sip_registry_send_pkg; extern uint16_t miss_sip_invite_send_pkg; extern uint16_t miss_sip_bye_send_pkg; extern uint16_t miss_sip_unregistry_send_pkg; extern uint16_t miss_sip_ok_send_pkg; extern uint16_t miss_sip_rcv_bye_send_pkg; extern uint16_t miss_wdt_send_pkg; extern uint16_t miss_sip_inc_pkg; extern uint16_t miss_udp_prompt_send_pkg; extern uint16_t miss_clock_send_pkg; extern bool show_uptime; extern bool debug_sip; ///< Variável de controle que ativa o debug sip. extern bool debug_prompt; ///< Variável de controle que ativa o debug do prompt. extern bool debug_vector; ///< Variável de controle que ativa o debug do vector. extern bool debug_cb; ///< Variável de controle que ativa o debug da classe Call_box. extern bool debug_main; ///< Variável de controle que ativa o debug da main. extern bool debug_cks; ///< Variável de controle que ativa o debug do ckechsum dos pacotes recebidos. extern bool debug_cb_rx; ///< Variável de controle que ativa o debug dos pacotes recebidos do CBx. extern bool debug_cb_tx; ///< Variável de controle que ativa o debug dos pacotes enviados para o CBx. extern bool debug_eth_rx; ///< Variável de controle que ativa o debug dos pacotes recebidos da eth \note não implementado. extern bool debug_eth_tx; ///< Variável de controle que ativa o debug dos pacotes enviados para a eth \note não implementado. extern bool debug_prompt_eth; ///< Variável de controle que ativa o debug do prompt eth. extern bool debug_file; ///< Variável de controle que ativa o debug do sistema de arquivos. extern bool dbl; ///< Variável de controle que ativa o debug do protocolo de bootloader dos CBx extern bool dparallel; ///< Variável de controle que aciona o debug de envio de pacotes pro cb, quando se ///< quer transmitir um pacote enquanto outro pacote, já esta em transmissao. extern bool test_debug; ///< Variável de controle que ativa o debug de test. extern bool debug_aging; ///< Variável de controle que ativa o debug da funçao de aging do registro. extern bool debug_clock; extern bool debug_invite; extern bool debug_wake; extern bool debug_muted; extern bool debug_cpld; extern bool debug_show_tx_cpld; extern bool debug_show_rx_cpld; extern bool debug_cks_err; extern bool debug_ping; extern bool debug_refresh; extern bool long_list; extern bool debug_out_of_range; extern bool debug_wdt; extern bool debug_eth; extern bool wdt_show; extern bool debug_rtp; extern bool debug_memory; extern bool debug_port_match; extern bool debug_fw; extern bool debug_gp; extern bool missed_send_udp_pkg; extern bool debug_boot; extern bool debug_fw_print; extern bool debug_uart3; extern bool big_bug_pkg; extern bool flood_bug_pkg; extern uint16_t miss_ftp_udp_send_pkg; extern bool reset_missed_send_udp_pkg; extern bool debug_missed; extern uint16_t deleted_sip; extern bool dshow_rtp; extern bool dcallshow_rtp; extern bool debug_reset_rtp; extern bool debug_rtp; extern uint16_t deleted_sip; extern bool print_values; extern bool print_v_cb; extern bool print_v_call; extern bool print_cb_var; extern bool print_cb_all; extern bool print_hex_cb_var; extern bool print_hex_cb_all; extern bool print_sip_var; extern bool print_sip_all; extern bool print_hex_sip_var; extern bool print_hex_sip_all; extern bool print_call_var; extern bool print_call_all; extern bool print_hex_call_var; extern bool print_hex_call_all; extern bool print_rtp_var; extern bool print_rtp_all; extern bool print_hex_rtp_var; extern bool print_hex_rtp_all; extern bool frtp; extern bool rescue_rtp; extern bool drop_invite_pkg; extern bool drop_entendi_pkg; extern bool drop_invite_to_ast_pkg; extern bool drop_ok_pkg; extern bool drop_ack_pkg; extern bool drop_rtp_from_ast_pkg; extern bool drop_rtp_from_cbx_pkg; extern bool drop_registry_pkg; extern bool registra; extern bool received_audio_from_cb; extern bool debug_reconnect; extern uint16_t miss_ftp_udp_send_pkg; extern bool debug_bootloader; extern bool debug_bind; extern bool debug_app_init; extern bool debug_string_length; extern bool show_current_time; extern bool dmissed_wdt; extern bool debug_hello; extern bool debug_sqn; extern bool test_ts; extern bool debug_pwr_src; /** * @Synopsis Função usada anteriormente para formatação da string que debug, não esta mais em uso. * * * @param pkg Ponteiro para inicio dos dados a serem transmitidos. * @param size Tamanho do pacote que deve ser enviado. * */ int eth_fw_debug_pkgdebug_pkg( uint8_t * pkg, int size ); /* #define debug_msg(...) _debug_msg(__VA_ARGS__) #define _debug_msg(...) { \ sprintf(debug_msg1, "%s:%d ", __FILE__, __LINE__); \ sprintf(debug_msg2, __VA_ARGS__); \ strcat(debug_msg1, debug_msg2); \ if( debug_uart3 ) pc.printf( "%s\n\r> ", debug_msg1 ); \ if( tcp_session ){ \ strcat( debug_msg1, "\n\r" ); \ while( !( tcp_client.send_all( debug_msg1, strlen( debug_msg1 ) ) ) ); \ }else if( udp_request ){ \ udp_server.sendTo( udp_client, debug_msg1, strlen( debug_msg1 ) ); \ } \ } */ #define debug_msg(...) _debug_msg(__VA_ARGS__) #define _debug_msg(...) { \ snprintf( debug_msg1, DEBUG_AUX_MSG_SIZE, "%s:%d ", __FILE__, __LINE__); \ snprintf( debug_msg2, DEBUG_MSG_SIZE, __VA_ARGS__); \ strncat( debug_msg1, debug_msg2, DEBUG_MSG_SIZE ); \ if( debug_uart3 && !udp_query && !from_eth ) pc.printf( "%s\n\r> ", debug_msg1 ); \ if( tcp_session && !udp_query ){ \ strcat( debug_msg1, "\n\r> " ); \ while( !( tcp_client.send_all( debug_msg1, strlen( debug_msg1 ) ) ) ); \ } \ if( udp_query ){ \ strcat( debug_msg1, "\n\r" ); \ int send = udp_client.sendTo( udp_server, debug_msg1, strlen( debug_msg1 ) ); \ if( send != strlen( debug_msg1 ) ) \ { \ if( debug_reconnect && debug_uart3 && !from_eth ) pc.printf("\r\nReconnect udp_query client"); \ reconnect_prompt_udp_socket(); \ miss_prompt_udp_send_pkg++; \ } \ } \ } #define send_msg(...) _send_msg(__VA_ARGS__) #define _send_msg(...) { \ int snprintf_ret = snprintf( msg_, DEBUG_MSG_SIZE, __VA_ARGS__ ); \ if( snprintf_ret >= DEBUG_MSG_SIZE ) string_msg_overflow++; \ if( debug_uart3 && !udp_query && !from_eth ) pc.printf( "%s\n\r> ", msg_ ); \ if( tcp_session && !udp_query ){ \ strcat( msg_, "\n\r> " ); \ while( !( tcp_client.send_all( msg_, strlen( msg_ ) ) ) ); \ } \ if( udp_query ){ \ strcat( msg_, "\n\r> " ); \ int send = udp_client.sendTo( udp_server, msg_, strlen( msg_ ) ); \ if( send != strlen( msg_ ) ) \ { \ if( debug_reconnect && debug_uart3 ) pc.printf ("\n\rReconnect udp_query client\n\r"); \ reconnect_prompt_udp_socket(); \ miss_prompt_udp_send_pkg++; \ } \ } \ } #endif