Line 1... |
Line 1... |
1 |
/**** IR Mrakomer3 ****/ |
1 |
/**** IR Mrakomer3 ****/ |
2 |
#define VERSION "3.0" |
2 |
#define VERSION "3.0" |
3 |
#define ID "$Id: irmrak3.c 928 2007-12-24 09:52:55Z kakl $" |
3 |
#define ID "$Id: irmrak3.c 929 2007-12-24 10:00:11Z kakl $" |
4 |
#include "irmrak3.h" |
4 |
#include "irmrak3.h" |
5 |
#bit SSPM3=0x14.3 |
5 |
#bit SSPM3=0x14.3 |
6 |
|
6 |
|
7 |
#define SA 0x00 // Slave Address (0 for single slave / 0x5A<<1 default) |
7 |
#define SA 0x00 // Slave Address (0 for single slave / 0x5A<<1 default) |
8 |
#define RAM_Access 0x00 // RAM access command |
8 |
#define RAM_Access 0x00 // RAM access command |
Line 141... |
Line 141... |
141 |
|
141 |
|
142 |
while(TRUE) |
142 |
while(TRUE) |
143 |
{ |
143 |
{ |
144 |
n++; |
144 |
n++; |
145 |
|
145 |
|
146 |
if (kbhit()) |
146 |
if (kbhit()) // Would you like warmer? |
147 |
{ |
147 |
{ |
148 |
delay_ms(200); |
148 |
getc(); i=0; |
149 |
if ('w'==getc()) i=0; // Would you like warmer? |
- |
|
150 |
} |
149 |
} |
151 |
|
150 |
|
152 |
tempa=ReadTemp(SA, RAM_Tamb); // Read temperatures from sensor |
151 |
tempa=ReadTemp(SA, RAM_Tamb); // Read temperatures from sensor |
153 |
temp=ReadTemp(SA, RAM_Tobj1); |
152 |
temp=ReadTemp(SA, RAM_Tobj1); |
154 |
|
153 |
|
155 |
if((0==tempa)||(0==temp)) // Transfer error? |
154 |
if((0==tempa)||(0==temp)) // Transfer error? |
156 |
{ |
155 |
{ |
157 |
printf("%Lu;ta:-273;ts:-273;Error\n\r",n); |
156 |
printf("%Lu;ta:-273;ts:-273;sta:-1\n\r",n); |
158 |
output_low(HEATING); |
157 |
output_low(HEATING); |
159 |
} |
158 |
} |
160 |
else |
159 |
else |
161 |
{ |
160 |
{ |
162 |
to=(signed int16)(temp*2-27315)/100; |
161 |
to=(signed int16)(temp*2-27315)/100; |
163 |
ta=(signed int16)(tempa*2-27315)/100; |
162 |
ta=(signed int16)(tempa*2-27315)/100; |
164 |
|
163 |
|
165 |
printf("%Lu;ta:%Ld;ts:%Ld;",n,ta,to); |
164 |
printf("%Lu;ta:%Ld;ts:%Ld;sta:",n,ta,to); |
166 |
if (i>=MAXHEAT) |
165 |
if (i>=MAXHEAT) |
167 |
{ |
166 |
{ |
168 |
printf("OK\n\r"); |
167 |
printf("0\n\r"); |
169 |
output_low(HEATING); |
168 |
output_low(HEATING); |
170 |
} |
169 |
} |
171 |
else |
170 |
else |
172 |
{ |
171 |
{ |
173 |
printf("Heating\n\r"); |
172 |
printf("1\n\r"); |
174 |
output_high(HEATING); |
173 |
output_high(HEATING); |
175 |
i++; |
174 |
i++; |
176 |
} |
175 |
} |
177 |
}; |
176 |
}; |
178 |
restart_wdt(); |
177 |
restart_wdt(); |