19 #define DALLAS1_POWER A0
20 #define DALLAS1_DATA A1
21 #define UPSTEPPER_EN_PIN A3
23 #define MCP_ADDR_OFFSET 3
25 #define ADC_CH_HMP_T 0
26 #define ADC_CH_HMP_H 3
29 #define XBEE_SLEEP_PIN 5
32 volatile uint8_t kippevent=0;
33 volatile uint8_t wdcount=0;
35 uint8_t count_kippevent=0;
37 unsigned long start_time;
38 unsigned long last_data;
43 void handleKippevent(){
49 if(kippevent && ! count_kippevent){
55 void measurePAR(
void){
59 mcp.
setConf(MCP_ADDR_OFFSET,1,ADC_CH_PAR1,1,3,3);
61 tmp_float=mcp.
getData(MCP_ADDR_OFFSET);
64 mcp.
setConf(MCP_ADDR_OFFSET,1,ADC_CH_PAR2,1,3,3);
66 tmp_float=mcp.
getData(MCP_ADDR_OFFSET);
72 last_data=myRTC.now().get();
77 myRTC.convertTemperature();
78 digitalWrite(DALLAS1_POWER,HIGH);
81 digitalWrite(UPSTEPPER_EN_PIN,HIGH);
93 analogReference(INTERNAL);
94 tmp_float=analogRead(A6);
101 if(tmp_float>900) tmp_float=0;
102 else if(tmp_float>550) tmp_float=1;
103 else if(tmp_float>350) tmp_float=2;
107 tmp_float=(1.1 / 1024)*analogRead(A7)*(10+2)/2;
119 mcp.
setConf(MCP_ADDR_OFFSET,1,ADC_CH_HMP_H,1,0,0);
121 tmp_float = mcp.
getData(MCP_ADDR_OFFSET)*100;
124 mcp.
setConf(MCP_ADDR_OFFSET,1,ADC_CH_HMP_T,1,0,0);
126 tmp_float = mcp.
getData(MCP_ADDR_OFFSET)*120-40;
129 digitalWrite(UPSTEPPER_EN_PIN,LOW);
132 mcp.
setConf(MCP_ADDR_OFFSET,1,ADC_CH_PAR1,1,3,3);
134 tmp_float=mcp.
getData(MCP_ADDR_OFFSET);
137 mcp.
setConf(MCP_ADDR_OFFSET,1,ADC_CH_PAR2,1,3,3);
139 tmp_float=mcp.
getData(MCP_ADDR_OFFSET);
153 digitalWrite(DALLAS1_POWER,LOW);
162 asm volatile (
" jmp 0");
170 void initShield(
void){
171 attachInterrupt(0, kippwaage, FALLING);
175 pinMode(DALLAS1_POWER, OUTPUT);
176 pinMode(UPSTEPPER_EN_PIN, OUTPUT);
177 digitalWrite(DALLAS1_POWER,HIGH);
180 start_time=myRTC.now().get();
uint8_t addToPayload(uint8_t b)
Definition: BayEOS.h:469
void startDataFrame(uint8_t subtype=BayEOS_Float32le, uint8_t checksum=0)
Definition: BayEOS.cpp:12
uint8_t readChannel(uint8_t channel, float *f, uint8_t tries=1)
Definition: DS18B20.cpp:147
int setAllAddr(void)
Definition: DS18B20.cpp:89
void t_conversion(void)
Definition: DS18B20.cpp:23
void setConf(uint8_t adc_addr, uint8_t conf)
Definition: MCP342x.cpp:91
float getData(byte adc_addr)
Definition: MCP342x.cpp:127