Gör en Mini Arduino programmerbar 4 kanal DC-DVM (4 / 8 steg)
Steg 4: 2 kanal DVM kod
---2channel DVM start---
/*--------------------------------------------------------------------
Program: voltmeter_LCD
Beskrivning/kontroller: 2 kanal DC voltmeter med spänningar visas
på färg TFT LCD med 1 decimal
Hårdvara: Arduino NANO med spänningsavdelare på A0 och A1
TFT LCD ansluten
Programvara: Utvecklad med Arduino 1.0.3 programvara
Datum: 10 mars 2014
Författare:
--------------------------------------------------------------*/
#define sclk 13
#define mosi 11
#define cs 10
#define dc 9
#define rst 8 / / reset
#include < Adafruit_GFX.h > / / Core grafik bibliotek
#include < Adafruit_ST7735.h > / / maskinvaruspecifika bibliotek
#include < SPI.h >
Adafruit_ST7735 tft = Adafruit_ST7735 (cs, dc, rst);
spänningsavdelare kalibreringsvärden
#define Dv1 11.00 / / beräknade genom att mäta spänning på motstånd junction
#define Dv2 11,25
ADC referensspänningen / kalibreringsvärde
#define VREF 4,9
flyta V1 = {0,0}.
flyta V2 = {0,0}.
void setup()
{
tft.initR(INITR_BLACKTAB); initiera en ST7735S chip, svart flik
tft.fillScreen(ST7735_BLACK); Rensa skärmen
tft.setTextColor(ST7735_WHITE);
tft.setTextSize(1);
tft.setCursor(5,0);
TFT.println ("2 kanal voltmeter");
tft.setTextColor(ST7735_RED);
tft.setCursor(0,140);
TFT.println ("försiktighet max spänning 55vdc");
}
void loop()
{
V1 = analogRead(A0);
V2 = analogRead(A1);
tft.drawLine (0, 20, tft.width ()-1, 20, ST7735_WHITE);
tft.drawLine (0, 130, tft.width ()-1, 130, ST7735_WHITE);
tft.setTextColor(ST7735_YELLOW,ST7735_BLACK);
spänning 1 (pin A0)
tft.setCursor (5, 40);
tft.setTextSize(1);
TFT.println ("spänning @ pin A0");
tft.setTextSize(2);
tft.setCursor (10, 50);
TFT.Print ("V1");
TFT.Print(((v1*VREF) / 1023)) * Dv1, 1);
TFT.Print ("V");
spänning 2 (PIN-kod A1)
tft.setCursor (5, 70);
tft.setTextSize(1);
TFT.println ("spänning @ pin A1");
tft.setTextSize(2);
tft.setTextColor(ST7735_GREEN,ST7735_BLACK);
tft.setCursor (10, 80);
TFT.Print ("V2");
TFT.Print(((v2*VREF) / 1023)) * Dv2, 1);
TFT.Print ("V");
}
---2channel DVM slut---