premiere mesure de temperature avec le LM35
This commit is contained in:
parent
efdf127033
commit
7332f87654
@ -5,9 +5,9 @@ DATAFILE="foo.dat"
|
|||||||
TMPFILE="/tmp/dd2data"
|
TMPFILE="/tmp/dd2data"
|
||||||
|
|
||||||
IMAGE="graphe.png"
|
IMAGE="graphe.png"
|
||||||
NB_READ=12000
|
NB_READ=50
|
||||||
|
|
||||||
./t -n ${NB_READ} -d ${DEVICE} | tee -a ${DATAFILE}
|
./t -v -n ${NB_READ} -d ${DEVICE} | tee -a ${DATAFILE}
|
||||||
|
|
||||||
gnuplot << __EOC__
|
gnuplot << __EOC__
|
||||||
set term png size 1600,512
|
set term png size 1600,512
|
||||||
|
@ -33,7 +33,7 @@ for (count=0; count<iters; count++) {
|
|||||||
fprintf(stderr, "getline #%d -> %d\n", count, foo);
|
fprintf(stderr, "getline #%d -> %d\n", count, foo);
|
||||||
fprintf(stderr, "%s\n", ligne);
|
fprintf(stderr, "%s\n", ligne);
|
||||||
}
|
}
|
||||||
foo = parse4values(ligne, 'X', datas);
|
foo = parse4values(ligne, 'T', datas);
|
||||||
//
|
//
|
||||||
if (foo >= 0) {
|
if (foo >= 0) {
|
||||||
temps = time(NULL);
|
temps = time(NULL);
|
||||||
|
47
simulator/rdtemp/rdtemp.ino
Normal file
47
simulator/rdtemp/rdtemp.ino
Normal file
@ -0,0 +1,47 @@
|
|||||||
|
/*
|
||||||
|
* lecture des capteurs de temperature LM35
|
||||||
|
*/
|
||||||
|
/* -------------------------------------------------- */
|
||||||
|
|
||||||
|
#define NBVAL 4
|
||||||
|
#define DELAI 5000
|
||||||
|
|
||||||
|
int values[NBVAL];
|
||||||
|
|
||||||
|
/* -------------------------------------------------- */
|
||||||
|
void setup() {
|
||||||
|
Serial.begin(9600);
|
||||||
|
pinMode(LED_BUILTIN, OUTPUT);
|
||||||
|
delay(2000);
|
||||||
|
}
|
||||||
|
/* -------------------------------------------------- */
|
||||||
|
void updatevalues(void)
|
||||||
|
{
|
||||||
|
int foo;
|
||||||
|
for (foo=0; foo<NBVAL; foo++) {
|
||||||
|
values[foo] = analogRead(A0);
|
||||||
|
delay(50);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
/* -------------------------------------------------- */
|
||||||
|
void sendvalues(void)
|
||||||
|
{
|
||||||
|
int foo;
|
||||||
|
|
||||||
|
Serial.print("T");
|
||||||
|
for (foo=0; foo<NBVAL; foo++) {
|
||||||
|
Serial.print(" ");
|
||||||
|
Serial.print(values[foo]);
|
||||||
|
}
|
||||||
|
Serial.print("\n");
|
||||||
|
}
|
||||||
|
/* -------------------------------------------------- */
|
||||||
|
|
||||||
|
void loop() {
|
||||||
|
updatevalues();
|
||||||
|
sendvalues();
|
||||||
|
delay(DELAI);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* -------------------------------------------------- */
|
||||||
|
|
@ -15,6 +15,41 @@
|
|||||||
int verbosity;
|
int verbosity;
|
||||||
|
|
||||||
/* ---------------------------------------------------------------- */
|
/* ---------------------------------------------------------------- */
|
||||||
|
int afficheur_7segs(WINDOW * win, int lig, int col, int bits, int k)
|
||||||
|
{
|
||||||
|
int numbit, mask;
|
||||||
|
|
||||||
|
for (numbit=0; numbit<8; numbit++) {
|
||||||
|
mask = 1 << numbit;
|
||||||
|
|
||||||
|
switch(mask) {
|
||||||
|
|
||||||
|
case 0x01:
|
||||||
|
|
||||||
|
case 0x02:
|
||||||
|
|
||||||
|
case 0x04:
|
||||||
|
|
||||||
|
case 0x08:
|
||||||
|
|
||||||
|
case 0x10:
|
||||||
|
|
||||||
|
case 0x20:
|
||||||
|
|
||||||
|
case 0x40:
|
||||||
|
|
||||||
|
case 0x80:
|
||||||
|
/* decimal point */
|
||||||
|
break;
|
||||||
|
|
||||||
|
default:
|
||||||
|
fprintf(stderr, "%s mask is wrong\n", __func__);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
/* ---------------------------------------------------------------- */
|
/* ---------------------------------------------------------------- */
|
||||||
|
|
||||||
|
@ -33,7 +33,7 @@ char buffer[200];
|
|||||||
tp = " DD2 MONITORING by tTh 2019 ";
|
tp = " DD2 MONITORING by tTh 2019 ";
|
||||||
if (NULL != title) tp = title;
|
if (NULL != title) tp = title;
|
||||||
|
|
||||||
barre_inverse('+', 0);
|
barre_inverse(' ', 0);
|
||||||
standout();
|
standout();
|
||||||
mvaddstr(0, 2, tp);
|
mvaddstr(0, 2, tp);
|
||||||
#if TRACE
|
#if TRACE
|
||||||
|
@ -22,16 +22,16 @@ water = open_waterfall("premier essai", 0);
|
|||||||
|
|
||||||
for (loop=0; loop<nbl; loop++) {
|
for (loop=0; loop<nbl; loop++) {
|
||||||
|
|
||||||
sprintf(line, "%04X %04X", loop, rand()&0xffff);
|
sprintf(line, "%06X %04X", loop, rand()&0xffff);
|
||||||
mvwaddstr(stdscr, LINES-1, 1, line);
|
mvwaddstr(stdscr, LINES-1, 1, line);
|
||||||
wrefresh(stdscr);
|
wrefresh(stdscr);
|
||||||
|
|
||||||
for (foo=0; foo<4; foo++) {
|
for (foo=0; foo<4; foo++) {
|
||||||
if (rand()%100<42) {
|
if (rand()%100<42) {
|
||||||
rvals[foo] += 3.8*(foo + 1);
|
rvals[foo] += 3.9 * (foo + 1);
|
||||||
}
|
}
|
||||||
if (rvals[foo] > 1023.0) {
|
if (rvals[foo] > 1023.0) {
|
||||||
rvals[foo] = (float)(rand() % 15);
|
rvals[foo] = (float)(rand() % 25);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -77,7 +77,7 @@ keypad(stdscr, TRUE); /* acces aux touches 'curseur' */
|
|||||||
|
|
||||||
fond_ecran(" Demonstrator ");
|
fond_ecran(" Demonstrator ");
|
||||||
|
|
||||||
demo(90000, 0);
|
demo(190000, 0);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* plop, on a fini, restaurer la console
|
* plop, on a fini, restaurer la console
|
||||||
|
Loading…
Reference in New Issue
Block a user