Modularizando o src
Dependencies: EALib EthernetInterface_vz mbed-rtos mbed
Fork of header_main_colinas_V0-20-09-14 by
Diff: parallelcpld.cpp
- Revision:
- 100:09a23fcd3bdf
- Parent:
- 99:e80850c51106
- Child:
- 104:62646ef786a3
--- a/parallelcpld.cpp Mon Jan 19 18:00:42 2015 +0000 +++ b/parallelcpld.cpp Thu Feb 12 16:42:35 2015 +0000 @@ -42,28 +42,39 @@ delay_to_send_to_cbx.start(); once = false; } - + /* if( delay_to_send_to_cbx.read_ms() < 7 ){ - droped_pkg_to_cb++; + { + delayed_pkg_to_cb++; uint8_t ret = ring_buffer_add( rb, buffer ); - if( ret == 0x01 ) if( dparallel ){ - debug_msg("Error: Ring buffer fully charged"); - if( debug_fw ){ - uint16_t ext = ( ( uint16_t )buffer[ 0 ] ) << 8 | buffer[ 1 ]; - uint16_t port = ( ( uint16_t )buffer[ 2 ] ) << 8 | buffer[ 3 ]; - fw_cbx_pkg( ext, port, ( char *)buffer ); - } - } + if( ret == 0x01 ) if( dparallel ) debug_msg("Error: Ring buffer fully charged"); if( ret == 0x00 ) if( dparallel ) debug_msg("Success : package queued -- on queue %u", rb->size ); } else { - + */ delay_to_send_to_cbx.reset(); if( tx_clear == 1 ){ tx_clear = 0; xmemcpy( TXBuffer, buffer, __CB_BUFFER_SIZE__ ); + /* + if( big_bug_pkg ){ + send_msg("--> %d", __CB_BUFFER_SIZE__ + 4 ); + big_bug_pkg = false; + uint8_t big_buffer[ __CB_BUFFER_SIZE__ + 4 ]; + xmemcpy( big_buffer, buffer, __CB_BUFFER_SIZE__ ); + big_buffer[ __CB_BUFFER_SIZE__ + 3 ] = 0x11; + big_buffer[ __CB_BUFFER_SIZE__ + 2 ] = 0x13; + big_buffer[ __CB_BUFFER_SIZE__ + 1 ] = 0x17; + big_buffer[ __CB_BUFFER_SIZE__ ] = 0x17; + + parallel_write( big_buffer[ 0 ] ); + + }else{ + + } + */ // Send the first position of TXBuffer first parallel_write( TXBuffer[ 0 ] ); DataReady = 1; @@ -90,7 +101,7 @@ if( ret == 0x00 ) if( dparallel ) debug_msg("Success : package queued -- on queue %u", rb->size ); } - } + //} } //***************************************************************************** @@ -117,7 +128,8 @@ } void tx_buffer_ring_buffer_handler( void ){ - if( ( rb->size != 0x00 ) && ( tx_clear == 1 ) && ( delay_to_send_to_cbx.read_ms() > 7 ) ){ + //if( ( rb->size != 0x00 ) && ( tx_clear == 1 ) && ( delay_to_send_to_cbx.read_ms() > 7 ) ){ + if( ( rb->size != 0x00 ) && ( tx_clear == 1 ) ){ //uint8_t buffer[ __CB_BUFFER_SIZE__ ]; uint8_t * _rb_next = ring_buffer_get_next( rb ); //xmemcpy( buffer, _rb_next, __CB_BUFFER_SIZE__ );