Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <SPI.h>
- #include <TFT.h>
- #define cs 10
- #define dc 9
- #define rst 8
- #define sd_cs 7
- TFT TFTscreen=TFT(cs, dc, rst);
- float temp;
- float oldTemp=0;
- #define pinTemp 1
- char sensorPrintout[5];
- #define Y 75 // alteza barra temperatura
- void setup() {
- pinMode(A1,INPUT);
- TFTscreen.begin();
- TFTscreen.background(0,0,0);
- TFTscreen.stroke(0,0,255);
- TFTscreen.setTextSize(2);
- TFTscreen.text("temperatura", 15, 0); // verificare posizione
- TFTscreen.text("ambiente", 30, 20);
- for(int i=10;i<110;i++){
- linea(i,Y);
- delay(20);
- }
- Serial.begin(9600);
- }
- void loop() {
- delay(2000);
- temp=(analogRead(pinTemp)-155)*330/1023;
- Serial.print(temp);
- Serial.print(" ");
- temperature(temp);
- cursoreTemp(temp,oldTemp);
- oldTemp=temp;
- }
- void temperature(float t) {
- //cancello vecchia temperatura
- TFTscreen.stroke(0,0,0);
- TFTscreen.setTextSize(3);
- TFTscreen.text(sensorPrintout,40,40);
- int deg=int(t); //temperature in celsius
- Serial.println(deg);
- //scrivo temperatura
- String temp = String(deg);
- temp.toCharArray(sensorPrintout,4);
- TFTscreen.stroke(220,135,245);
- TFTscreen.setTextSize(3);
- TFTscreen.text(sensorPrintout,40,40);
- }
- void cursoreTemp (float t, float oT){
- linea(map(oT,20,30,10,110)-1,Y);
- linea(map(oT,20,30,10,110),Y);
- linea(map(oT,20,30,10,110)+1,Y);
- TFTscreen.stroke(0,0,0);
- for(int i=10;i<110;i++){
- TFTscreen.line(i,Y-11,i,Y);
- TFTscreen.line(i,Y+30,i,Y+41);
- }
- TFTscreen.stroke(255,255,255);
- TFTscreen.line(map(t,20,30,10,110),Y-11,map(t,20,30,10,110),Y+41);
- TFTscreen.line(map(t,20,30,10,110)-1,Y-11,map(t,20,30,10,110)-1,Y+41);
- TFTscreen.line(map(t,20,30,10,110)+1,Y-11,map(t,20,30,10,110)+1,Y+41);
- }
- void linea(int x, int y){
- if(x<60){
- TFTscreen.stroke(0,map(x,10,59,0,255),map(x,10,59,255,0));
- }
- if(x>=60){
- TFTscreen.stroke(map(x,60,110,0,255),map(x,60,110,255,0),0);
- }
- TFTscreen.line(x,y,x,y+30);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement