Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
TPA81new.cpp
00001 #include "TPA81new.h" 00002 00003 TPA81::TPA81(PinName mysda, PinName myscl, char TPA_addr): _TPA(mysda,myscl) { 00004 _delay = 51; 00005 _addr = TPA_addr; 00006 } 00007 00008 void TPA81::setAddress(char inAddr) { 00009 _addr = inAddr; 00010 } 00011 00012 void TPA81::changeaddress(char oldAddr, char newAddr) { 00013 _addr = oldAddr; 00014 char data[2]; 00015 data[0] = 0; 00016 data[1] = 0xA0; 00017 _TPA.write(_addr,data,2,false); 00018 wait_us(100); 00019 data[1] = 0xAA; 00020 _TPA.write(_addr,data,2,false); 00021 wait_us(100); 00022 data[1] = 0xA5; 00023 _TPA.write(_addr,data,2,false); 00024 wait_us(100); 00025 data[1] = newAddr; 00026 _TPA.write(_addr,data,2,false); 00027 wait_us(100); 00028 } 00029 00030 int TPA81::getTempAt() { 00031 _cmd[0] = 1; 00032 _cmd[1] = 1; 00033 00034 _TPA.write(_addr, _cmd, 2); 00035 _TPA.read(_addr, _cmd, 1); 00036 00037 return _cmd[0]; 00038 } 00039 00040 int TPA81::getTemp(short i) { 00041 _cmd[0] = i; 00042 _cmd[1] = i; 00043 00044 _TPA.write(_addr, _cmd, 2); 00045 _TPA.read(_addr, _cmd, 1); 00046 00047 return _cmd[0]; 00048 } 00049 00050 unsigned int TPA81::Ambient(){ 00051 return getTemp(1); 00052 } 00053 00054 void TPA81::Read() 00055 { 00056 for (short i = 2; i < 10; i++) 00057 { 00058 Data[i-2]=getTemp(i)-getTemp(1); 00059 if(Data[i-2]<0){ 00060 Data[i-2] = 0; 00061 } 00062 } 00063 00064 } 00065 00066 unsigned char TPA81::IsAdaApi() 00067 { 00068 int i; 00069 00070 Read(); 00071 i=Data[0]+Data[1]+Data[2]+Data[3]+Data[4]+Data[5]+Data[6]+Data[7]; 00072 if (i>400) 00073 return(1); 00074 else 00075 return(0);; 00076 } 00077 00078 unsigned int TPA81::TingkatPanas() 00079 { 00080 int i; 00081 00082 Read(); 00083 i=Data[0]+Data[1]+Data[2]+Data[3]+Data[4]+Data[5]+Data[6]+Data[7]; 00084 return i; 00085 } 00086 00087 /*unsigned int TPA81::TingkatPanas() 00088 { 00089 int i; 00090 unsigned int x; 00091 00092 Read(); 00093 for(i=1;i<9;i++){ 00094 if(Data[i-1]<Data[i]){ 00095 x = Data[i]; 00096 } 00097 else{ 00098 x = Data[i-1]; 00099 } 00100 } 00101 return x; 00102 }*/
Generated on Sat Jul 23 2022 07:12:26 by
1.7.2