ThingPlug GMMP library for mbed

Dependents:   ThingPlug_WiFi_Example_2 ThingPlug_Ethernet_Example ThingPlug_Ethernet_Example_temp_V2

Fork of GMMP_2 by Sangmin Lee

Committer:
lesmin
Date:
Fri Aug 14 09:11:32 2015 +0000
Revision:
10:84a748b7d1f6
Parent:
0:7e575e5f88ec
added TCP retry codes by WIZnet

Who changed what in which revision?

UserRevisionLine numberNew contents of line
lesmin 0:7e575e5f88ec 1 /*
lesmin 0:7e575e5f88ec 2 * GMMP_Util.c
lesmin 0:7e575e5f88ec 3 *
lesmin 0:7e575e5f88ec 4 * Created on: 2013. 11. 27.
lesmin 0:7e575e5f88ec 5 * Author: root
lesmin 0:7e575e5f88ec 6 */
lesmin 0:7e575e5f88ec 7
lesmin 0:7e575e5f88ec 8 #include "GMMP_Util.h"
lesmin 0:7e575e5f88ec 9
lesmin 0:7e575e5f88ec 10 short ltobs(const short nShort)
lesmin 0:7e575e5f88ec 11 {
lesmin 0:7e575e5f88ec 12 return _btols(nShort);
lesmin 0:7e575e5f88ec 13 }
lesmin 0:7e575e5f88ec 14
lesmin 0:7e575e5f88ec 15 short btols(const short nShort)
lesmin 0:7e575e5f88ec 16 {
lesmin 0:7e575e5f88ec 17 return _btols(nShort);
lesmin 0:7e575e5f88ec 18 }
lesmin 0:7e575e5f88ec 19
lesmin 0:7e575e5f88ec 20 short _btols(const short nShort)
lesmin 0:7e575e5f88ec 21 {
lesmin 0:7e575e5f88ec 22 short nValue = 0;
lesmin 0:7e575e5f88ec 23
lesmin 0:7e575e5f88ec 24 nValue = (unsigned short)nShort >> 8;
lesmin 0:7e575e5f88ec 25 nValue |=(unsigned short) nShort << 8;
lesmin 0:7e575e5f88ec 26
lesmin 0:7e575e5f88ec 27 return nValue;
lesmin 0:7e575e5f88ec 28 }
lesmin 0:7e575e5f88ec 29
lesmin 0:7e575e5f88ec 30 long ltobi(const long nInt)
lesmin 0:7e575e5f88ec 31 {
lesmin 0:7e575e5f88ec 32 return _ltobi(nInt);
lesmin 0:7e575e5f88ec 33 }
lesmin 0:7e575e5f88ec 34
lesmin 0:7e575e5f88ec 35 long btoli(const long nInt)
lesmin 0:7e575e5f88ec 36 {
lesmin 0:7e575e5f88ec 37 return _ltobi(nInt);
lesmin 0:7e575e5f88ec 38 }
lesmin 0:7e575e5f88ec 39
lesmin 0:7e575e5f88ec 40 long _ltobi(const long nInt)
lesmin 0:7e575e5f88ec 41 {
lesmin 0:7e575e5f88ec 42 long nVal0, nVal1, nVal2, nVal3;
lesmin 0:7e575e5f88ec 43
lesmin 0:7e575e5f88ec 44 nVal0 = (unsigned long)nInt >> 24;
lesmin 0:7e575e5f88ec 45 nVal1 = (unsigned long)(nInt & 0x00FF0000) >> 8;
lesmin 0:7e575e5f88ec 46 nVal2 = (unsigned long)(nInt & 0x0000FF00) << 8;
lesmin 0:7e575e5f88ec 47 nVal3 = (unsigned long)nInt << 24;
lesmin 0:7e575e5f88ec 48
lesmin 0:7e575e5f88ec 49 return (nVal0 | nVal1 | nVal2 | nVal3);
lesmin 0:7e575e5f88ec 50 }
lesmin 0:7e575e5f88ec 51
lesmin 0:7e575e5f88ec 52 int freeRam () {
lesmin 0:7e575e5f88ec 53 // __brkval is the address of the top of the heap
lesmin 0:7e575e5f88ec 54 // if memory has been allocated.
lesmin 0:7e575e5f88ec 55 // If __brkval is zero then it means malloc has not used any memory yet, so
lesmin 0:7e575e5f88ec 56 // we look at the address of __heap_start.
lesmin 0:7e575e5f88ec 57
lesmin 0:7e575e5f88ec 58 return 0;
lesmin 0:7e575e5f88ec 59 }