Modularizando o src

Dependencies:   EALib EthernetInterface_vz mbed-rtos mbed

Fork of header_main_colinas_V0-20-09-14 by VZTECH

Committer:
klauss
Date:
Mon Nov 24 16:43:16 2014 +0000
Revision:
74:81c47fff88a5
Parent:
72:895ca792c647
Child:
78:1353744f01e1
validando organiza??o de arquivos | ainda em desenvolvimento.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
klauss 0:4d17cd9c8f9d 1 #include "utils.h"
klauss 0:4d17cd9c8f9d 2
klauss 74:81c47fff88a5 3 int ls_comp( const void * a, const void * b ){ return( *( int * )a - *( int * )b ); }
klauss 68:b54993674190 4
klauss 0:4d17cd9c8f9d 5 void reverse( char str[], int length ){
klauss 0:4d17cd9c8f9d 6 int start = 0;
klauss 0:4d17cd9c8f9d 7 int end = length -1;
klauss 0:4d17cd9c8f9d 8 while (start < end){
klauss 0:4d17cd9c8f9d 9 swap(*(str+start), *(str+end));
klauss 0:4d17cd9c8f9d 10 start++;
klauss 0:4d17cd9c8f9d 11 end--;
klauss 0:4d17cd9c8f9d 12 }
klauss 0:4d17cd9c8f9d 13 }
klauss 0:4d17cd9c8f9d 14 char* itoa(int num, char* str, int base){
klauss 0:4d17cd9c8f9d 15 int i = 0;
klauss 0:4d17cd9c8f9d 16 bool isNegative = false;
klauss 0:4d17cd9c8f9d 17
klauss 0:4d17cd9c8f9d 18 if( num == 0 ){
klauss 0:4d17cd9c8f9d 19 str[i++] = '0';
klauss 0:4d17cd9c8f9d 20 str[i] = '\0';
klauss 0:4d17cd9c8f9d 21 return str;
klauss 0:4d17cd9c8f9d 22 }
klauss 0:4d17cd9c8f9d 23 if( num < 0 && base == 10 ){
klauss 0:4d17cd9c8f9d 24 isNegative = true;
klauss 0:4d17cd9c8f9d 25 num = -num;
klauss 0:4d17cd9c8f9d 26 }
klauss 0:4d17cd9c8f9d 27 while( num != 0 ){
klauss 0:4d17cd9c8f9d 28 int rem = num % base;
klauss 0:4d17cd9c8f9d 29 str[i++] = (rem > 9)? (rem-10) + 'a' : rem + '0';
klauss 0:4d17cd9c8f9d 30 num = num/base;
klauss 0:4d17cd9c8f9d 31 }
klauss 0:4d17cd9c8f9d 32 if( isNegative )
klauss 0:4d17cd9c8f9d 33 str[i++] = '-';
klauss 0:4d17cd9c8f9d 34
klauss 0:4d17cd9c8f9d 35 str[i] = '\0'; // Append string terminator
klauss 0:4d17cd9c8f9d 36
klauss 0:4d17cd9c8f9d 37 reverse( str, i );
klauss 0:4d17cd9c8f9d 38 return( str );
klauss 0:4d17cd9c8f9d 39 }
klauss 0:4d17cd9c8f9d 40
klauss 74:81c47fff88a5 41 void reset_leds( void ){ led1 = led2 = 1; led3 = led4 = 0; }
klauss 0:4d17cd9c8f9d 42
klauss 74:81c47fff88a5 43 int convert_ext_to_port( int ext ){
klauss 74:81c47fff88a5 44 if( ext < 1000 ) return ext;
klauss 74:81c47fff88a5 45
klauss 74:81c47fff88a5 46 else{
klauss 74:81c47fff88a5 47 int aux = 0;
klauss 74:81c47fff88a5 48 aux = ( ext / 1000 ) * 1000;
klauss 74:81c47fff88a5 49 ext -= aux;
klauss 74:81c47fff88a5 50 aux += ext % 100;
klauss 74:81c47fff88a5 51 return( aux );
klauss 74:81c47fff88a5 52 }
klauss 0:4d17cd9c8f9d 53 }
klauss 0:4d17cd9c8f9d 54
klauss 74:81c47fff88a5 55 void xstrcpy(uint8_t * dest, const uint8_t * src ){
klauss 74:81c47fff88a5 56 while (*src) *dest++ = *src++;
klauss 74:81c47fff88a5 57 *dest = 0;
klauss 0:4d17cd9c8f9d 58 }
klauss 0:4d17cd9c8f9d 59
klauss 74:81c47fff88a5 60 void xmemcpy(uint8_t * dest, uint8_t * src, uint16_t size ){
klauss 74:81c47fff88a5 61 while (size--) *dest++ = *src++;
klauss 0:4d17cd9c8f9d 62 }
klauss 0:4d17cd9c8f9d 63
klauss 74:81c47fff88a5 64 void xmemcpy32(uint32_t * dest, uint32_t * src, uint16_t size){
klauss 74:81c47fff88a5 65 size >>= 2;
klauss 74:81c47fff88a5 66 while (size--) *dest++ = *src++;
klauss 74:81c47fff88a5 67 }