1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768 |
- #include "backend.h"
- #include "bus.h"
- #ifdef __linux__
- #include "config.h"
- int data[3]={0};
- #include "io.h"
- int do_pid_file(config_t* cfg)
- {
- const char* file = config_get_string(cfg, "misc.pidfile");
- FILE* f;
- int x;
- f=fopen(file, "w+");
- if(!f)
- {
- fprintf(stderr, "Erreur unable to open pid file '%s'\n", file);
- perror(" ");
- return -1;
- }
-
- x=getpid();
-
- fprintf(f, "%d\n", x);
- fclose(f);
- return 0;
- }
- int main_loop()
- {
- config_t cfg;
- bus_t bus;
- pthread_t thread;
- FILE* file = NULL;
- struct timeval tv;
- time(NULL);
- setup_io();
- config_init(&cfg, "config.cfg");
- config_print(&cfg);
- bus_init_recv(&bus, config_get_int(&cfg, "pin.data"),
- config_get_int(&cfg, "pin.clk"),
- config_get_int(&cfg, "pin.ack"));
- init_read_pin(config_get_int(&cfg, "pin.data"),
- config_get_int(&cfg, "pin.clk"),
- config_get_int(&cfg, "pin.ack"));
-
- pthread_create(&thread, NULL, bus_recv_thread, &bus);
- while(1)
- {
- uint32_t c;
- double w;
- char buffer[16];
- bus_read(&bus, &c, 4);
-
-
- printf("%ld' s %ld ms %'d us \n", c/1000000, c%1000000/1000, c%1000);
- w=3600.0/(((double)c)/1000000.0);
- printf("\t%.2lf W %.2lf A\n\n", w, w/220);
- }
- }
- #endif
|