#include <system_def.h>
#include <cpu_def.h>
#endif
+
// #include <lpciap.h>
// #include <keyval_id.h>
// #include <keyval_loc.h>
// #include <lpciap_kvpb.h>
//INCLUDE IN CURRENT DIRECTORY
-#include "hydroponie.h"
#include "ul_idstr.h"
+#include "hydroponie.h"
// CONSTANTS
#define UL_DEV "/dev/ulan"
ul_msginfo msginfo;
int addfilt;
+adc_stat_t adcst;
+// adc_cal_t adccal;
+
#ifndef UL_WITHOUT_HANDLE
//kvpb_block_t *kvpb_block=&kvpb_block_global;
uloi_coninfo_t *coninfo=&uloi_coninfo_global;
// OBJECT INTERFACE VARIABLES
uint16_t status_val;
-int16_t oi_temperature = 20;
+int16_t oi_temperature;
int16_t oi_cid_temp;
int16_t oi_per_temp;
-int16_t oi_humidity = 100;
+int16_t oi_humidity;
int16_t oi_cid_hum;
int16_t oi_per_hum;
}
-int send_sn(void){
- //declaration
+void send_sn(void){
int msgsend;
//.preparing of msg
}
-int heartbeat(void){
+void heartbeat(void){
//int period;
int msgsend, i;
int len = HEART_BUF_LEN;
free(buf);
}
-int send_data(void) {
+void send_data(void) {
int msgsend;
uchar *buf;
int i;
int len = DATA_BUF_LEN;
- get_data();
+ init_adc();
+ get_adc(&adcst);
+// PC_adc();
//.preparing of msg
buf = (uchar *) malloc(len*sizeof(uchar)); // NULL NULL NULL CID_TEMP len_data oi_temperature CID_HUM len_data oi_humidity
int2buf(&buf[3],CID_TEMP);
int2buf(&buf[5],2);
int2buf(&buf[7],oi_temperature);
-// int2buf(&buf[9],CID_HUM);
-// int2buf(&buf[11],2);
-// int2buf(&buf[13],oi_humidity);
+ int2buf(&buf[9],CID_HUM);
+ int2buf(&buf[11],2);
+ int2buf(&buf[13],oi_humidity);
- msgsend = ul_send_query(ul_fd, ul_dyac->ul_dysa, UL_CMD_PDO, UL_BFL_NORE, (void*) buf, /*DATA_BUF_LEN*/9);
+ msgsend = ul_send_query(ul_fd, ul_dyac->ul_dysa, UL_CMD_PDO, UL_BFL_NORE, (void*) buf, DATA_BUF_LEN);
printf("[I] DATA\n");
free(buf);
ul_freemsg(ul_fd);
}
-int get_data(void){
+void PC_adc(void){
#ifdef OS_POSIX
- oi_temperature = -25000;
+ oi_temperature = 25;
oi_humidity = 99;
#else
oi_temperature = AD0DR1;
#endif
}
-int accept_SDO(void) {
+void accept_SDO(void) {
// setting lan configuration
if ((ul_inepoll(ul_fd)>0) && (ul_acceptmsg(ul_fd, &msginfo)>=0)) {
}
+void blink(void){
+ #ifndef OS_POSIX
+ while(1){
+ int led1 = 200;
+ int led2 = 0;
+ mstime_t led1_time, led2_time;
+ led1_time = current_time();
+ led2_time = current_time();
+
+ if(led1 == 0) IO0SET=LED1_BIT;
+ else if(led1 == 1) IO0CLR=LED1_BIT;
+ else if((current_time()-led1_time) > led1){
+ IO0PIN=IO0PIN^LED1_BIT;
+ led1_time+=led1;
+ }
+
+ if(led2 == 0) IO0SET=LED2_BIT;
+ else if(led2 == 1) IO0CLR=LED2_BIT;
+ else if((current_time()-led2_time) > led2){
+ IO0PIN=IO0PIN^LED2_BIT;
+ led2_time+=led2;
+ }
+ }
+ #endif
+
+}
+
int main(int argc, char *argv[]) {
//opening file descriptor
uldy_init(ul_dyac,ul_fd,ul_save_sn,ul_save_adr,(char*)ul_idstr,sn);
loop();
+// blink();
ul_close(ul_fd);
+
return EXIT_SUCCESS;
}