Hi,
I am new to the Arduino so please forgive me if this is easy to do...
I would like to indicate the level of my water tank on a N10DP TFT Shield using a bargraph. The voltage output from my water level sensor is 0 to 3.5V (max). I have got as far as laying out my screen with the graphic I wish to show the water level in as follows...
/* draw text's APP
drawChar(INT8U ascii,INT16U poX, INT16U poY,INT16U size, INT16U fgcolor);
drawString(char *string,INT16U poX, INT16U poY,INT16U size,INT16U fgcolor);
*/
#include <stdint.h>
#include <TFTv2.h>
#include <SPI.h>
void setup()
{
TFT_BL_ON; // turn on the background light
Tft.TFTinit(); // init TFT library
Tft.drawString("Water Tank Level",25,5,2,WHITE); // draw string: "Water Tank Level", (21, 5), size: 2, color: WHITE
Tft.drawLine(20,25,220,25,YELLOW); //start: (20, 25) end: (220, 25), color : YELLOW
Tft.drawLine(20,26,220,26,YELLOW);
Tft.drawString("NOTE: Pump will not operate at tank",10,35,1,GREEN);
Tft.drawString("level less than 5% total fill !",18,45,1,GREEN);
Tft.drawString("PUMP OUTPUT RELAY",13,65,2,RED);
Tft.drawString("IS",65,90,2,RED);
Tft.drawLine(60,120,60,300,CYAN);
Tft.drawLine(180,120,180,300,CYAN);
Tft.drawLine(60,300,180,300,CYAN);
Tft.drawLine(50,300,60,300,WHITE);
Tft.drawString("0 %",25,295,1,WHITE);
Tft.drawLine(50,282,60,282,WHITE);
Tft.drawString("10 %",18,277,1,WHITE);
Tft.drawLine(50,264,60,264,WHITE);
Tft.drawString("20 %",18,259,1,WHITE);
Tft.drawLine(50,246,60,246,WHITE);
Tft.drawString("30 %",18,240,1,WHITE);
Tft.drawLine(50,228,60,228,WHITE);
Tft.drawString("40 %",18,222,1,WHITE);
Tft.drawLine(50,210,60,210,WHITE);
Tft.drawString("50 %",18,205,1,WHITE);
Tft.drawLine(50,192,60,192,WHITE);
Tft.drawString("60 %",18,187,1,WHITE);
Tft.drawLine(50,174,60,174,WHITE);
Tft.drawString("70 %",18,169,1,WHITE);
Tft.drawLine(50,156,60,156,WHITE);
Tft.drawString("80 %",18,150,1,WHITE);
Tft.drawLine(50,138,60,138,WHITE);
Tft.drawString("90 %",18,133,1,WHITE);
Tft.drawLine(50,120,60,120,WHITE);
Tft.drawString("100 %",13,115,1,WHITE);
Tft.drawLine(180,120,190,120,WHITE);
Tft.drawString("FULL",195,115,1,WHITE);
Tft.drawLine(180,210,190,210,WHITE);
Tft.drawString("HALF",195,205,1,WHITE);
Tft.drawLine(180,300,190,300,WHITE);
Tft.drawString("EMPTY",195,295,1,WHITE);
}
void loop()
{
}
Now I need to add the code to read in an analogue voltage (just one - 0 to 3.5V max) and then put this into a variable, which I then use to draw filled boxes - according to the variable level (large value = a bigger box = a bigger bar graph).
Any help would be much appreciated and help me on my way to learning...
Cheers
Dan