Modularizando o src

Dependencies:   EALib EthernetInterface_vz mbed-rtos mbed

Fork of header_main_colinas_V0-20-09-14 by VZTECH

Revision:
78:1353744f01e1
Parent:
74:81c47fff88a5
Child:
79:9bc12aa305a9
--- a/vz_protocol.cpp	Tue Nov 25 18:43:01 2014 +0000
+++ b/vz_protocol.cpp	Tue Dec 16 12:13:01 2014 +0000
@@ -1,13 +1,9 @@
 #include "vz_protocol.h"
 
-//#include "debug.h"
-    
-//extern DigitalOut led2;
-//extern DigitalOut led4;
+uint32_t pkg_ckserr = 0;
+uint32_t pkg_zero = 0;
+uint32_t pkg_cksok = 0;
 
-uint16_t pkg_ckserr = 0;
-uint16_t pkg_cksok = 0;
-    
 uint8_t * __parse_vz_pkg__( int * ext, int * port, volatile uint8_t * type, uint8_t * cb_buffer ){
     uint8_t p_lsb, p_msb;
     uint8_t e_lsb, e_msb;
@@ -94,13 +90,17 @@
     
     uint16_t cc = ( uint16_t )cb_buffer[ 4 ] << 8 | cb_buffer[ 5 ];
     
-    if( cc != __checksum__( cb_buffer, __CB_BUFFER_SIZE__ ) ){
-            /*pc.printf("\n\r CKS ERROR:  ");
-            for (int i=0; i< 300; i++ ){ pc.printf("%x ", cb_buffer[i]); }
-            pc.printf("\n\r");*/
+    uint16_t cc_calculated = __checksum__( cb_buffer, __CB_BUFFER_SIZE__ );
+    
+    if( cc != cc_calculated ){
+        if( debug_cks_err ) send_msg( "Received PKG, but -- CKS ERROR: %d ( %d )", cc_calculated, cc );
+
+        if( cc_calculated == 30975 && cc == 0 ){
+            pkg_zero++;
+        }else{ 
             pkg_ckserr++;
-            return( NULL );
-
+        }
+        return( NULL );
     }else{
         pkg_cksok++;
         e_msb = cb_buffer[ 0 ];
@@ -115,7 +115,6 @@
 
         return( cb_buffer + __VZ_HEADER_OFFSET__ );    
     }
-
 }
 uint8_t * __build_cb_package__( int ext, int port, uint8_t type, char * cb_buffer, uint8_t seq_num, int length,  uint8_t * pkg ){
     pkg[ 0 ] = ( uint8_t )( ( ext & 0xFF00 ) >> 8 );                                                                                      
@@ -172,33 +171,6 @@
     return pkg;
 }
 
-char * __build_eth__package__( void ){
-    return( NULL );    
-}
-
-uint8_t * __read_cb_buffer__( uint8_t * dest, uint8_t * src ){    
-    for( register int i = 0; i < __CB_BUFFER_SIZE__; i++ ) *dest++ = *src++;
-    return( dest );
-}
-
-uint8_t * __read_eth_buffer__( uint8_t * dest, uint8_t * src ){
-    
-    for( register int i = 0; i < __ETH_BUFFER_SIZE__; i++ ) *dest++ = *src++;
-    
-    return( dest );
-}
-
-uint8_t * __write_cb_buffer__( uint8_t * dest, uint8_t * src ){    
-    for( register int i = 0; i < __CB_BUFFER_SIZE__; i++ ) *dest++ = *src++;
-    return( dest );
-}
-
-uint8_t * __write_eth_buffer__( uint8_t * dest, uint8_t * src ){
-    for( register int i = 0; i < __ETH_BUFFER_SIZE__; i++ ) *dest++ = *src++;
-    
-    return( dest );
-}
-
 uint16_t __checksum__( uint8_t * buffer, size_t length ){
     if( !buffer ) return( 0 );
     uint16_t cc = 0x00;