ARDUINO LED TESTER: 5 Langkah

ARDUINO LED TESTER: 5 Langkah

Daftar Isi:

Anonim

Proyek penguji LED kecil

Saya mencari di NET untuk tester LED dan setelah melihat beberapa ide saya ingin membangun tester ini dari nol

Persediaan:

Langkah 1: Skema tersebut

Untuk menguji LED Anda memerlukan generator saat ini.

Lembar data LM317LZ menyediakan peta, Lihat situs web ide dasar

www.robotroom.com/LED-Tester-Pro-1.html

tidak ada kode yang tersedia dari situs ini

Oleh karena itu prinsipnya adalah untuk mengukur beberapa tegangan di terminal LED

Tegangan VH anoda Tegangan katoda VL dan kurangi (VH - VL)

kemudian untuk mengukur tegangan pada terminal resistansi yang dilalui oleh arus LED IL dan dibagi dengan nilainya R (VR / R = IL)

Langkah 2: Kode Arduino

Untuk kode Arduino, ide dasar didefinisikan, saya ingin tampilan pada layar OLED

perpustakaan adalah untuk ssd1306

github.com/adafruit/Adafruit_SSD1306

Untuk mengukur tegangan yang berbeda, lihat

http: //www.instructables.com/id/Arduino-OLED-Volt …

Untuk pilihan menu yang berbeda, lihat

it-edukacija.eu.hr/multidruino/default.html

Untuk membuat ikon lihat

javl.github.io/image2cpp/

kami lulus tes di papan tes

kode di sini:

// ================================================

// Penulis: PHILOUPAT

// Mars 2019 // versi 1: satu tombol, mode tampilan OLED I2C, AREF default // ============================= ===================

// I2C OLED DISPLAY: SCL = A5, SDA = A4

// Referensi input A0 untuk perhitungan RL

// input A1 Vbat

// masukan A2 VL

// A7 input VH

// ================================================

#termasuk

#termasuk

#termasuk

#termasuk

#termasuk

#termasuk

#define SSD1306_128_64

#define SCREEN_WIDTH 128

// Lebar tampilan OLED, dalam piksel

#define SCREEN_HEIGHT 64

// Tinggi tampilan OLED, dalam piksel

// Deklarasi untuk tampilan SSD1306 yang terhubung ke I2C (SDA, pin SCL)

#define OLED_RESET -1 // Reset pin # (atau -1 jika berbagi pin atur ulang Arduino)

Tampilan Adafruit_SSD1306 (SCREEN_WIDTH, SCREEN_HEIGHT, & Kawat, OLED_RESET);

#define XPOS 0

#define YPOS 1

#define DELTAY 2

// # if (SSD1306_LCDHEIGHT! = 64)

// # error ("Tinggi salah, perbaiki Adafruit_SSD1306.h!");

//#berakhir jika

const unsigned char PROGMEM batterie = {

0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 0x20, 0x00, 0x00, 0x02, 0x00, 0x20, 0x00, 0x02, 0x00, 0x20, 0x00, 0x00, 0x03, 0xe0, 0x20, 0x00, 0x00, 0x02, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20 0x24, 0x00, 0x01, 0xe2, 0x20, 0x24, 0x00, 0x82, 0x20, 0x20, 0x00, 0x00, 0x82, 0x20, 0x20, 0x00, 0x00, 0x03, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x20, 0x00, 0x00, 0x02, 0x00, 0x20, 0x00, 0x00, 0x3, 0x3f, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00};

const unsigned char PROGMEM resis = {

0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x00, 0x00, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 0x20, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 0x00, 0x00, 0x00, 0x0f, 0x00, 0x00, 0x7f, 0x80, 0x00, 0x3f, 0xf8, 0x00, 0x7e, 0x00, 0x00, 0x0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 0x00, 0x00, 0xe0, 0x00, 0x00, 0x00, 0x38, 0x00, 0x00, 0x1f, 0x00, 0x00, 0x07, 0xfe, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 0x1e, 0x00, 0x00, 0x00, 0x07, 0x80, 0x00, 0x01, 0xe0, 0x00, 0x00, 0x00, 0x78, 0x00, 0x00, 0x7, 0x00, 0x00, 0x0f, 0x0f, 0x0f, 0x00, 0x00, 0x00 0x00, 0x00, 0x00, 0x70, 0x00, 0x00, 0x1, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, 0x01, 0xc0, 0x00, 0x00, 0x78, 0x00, 0x00, 0x0f, 0xf8, 0x00, 0x03, 0xff, 0x00, 0x03, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0c, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x00, 0x00, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0ff, 0ff, 0ff, 0ff,, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x ff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff};

const unsigned char oms PROGMEM = {

0x00, 0x00, 0x00, 0x00, 0x0c, 0x30, 0x18, 0x18, 0x0c, 0x30, 0x0c, 0x30, 0x0c, 0x30, 0x0c, 0x30, 0x0c, 0x18, 0x0x, 0x0, 0x0, 0x0 0x30, 0x1e, 0x3c, 0x1c, 0x3c, 0x00, 0x00, 0x00, 0x00};

const unsigned char PROGMEM led = {

0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0f, 0xe0, 0x00, 0x00, 0x3f, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 0xff, 0xfe, 0x00, 0x01, 0xff, 0xff, 0x00, 0xff, 0xff, 0xff, 0x03, 0xff, 0xff, 0x80, 0x03, 0xff, 0x80, 0x07, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff 0xff, 0xc0, 0x07, 0xff, 0xff, 0xc0, 0x07, 0xff, 0xff, 0xc0, 0x07, 0xff, 0xc0, 0x07, 0xff, 0xc0, 0x07, 0x, 0x, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc0, 0x07, 0xff, 0xc0, 0x07, 0x, 0x, 0xff, 0xff, 0xff, 0xff, 0xff 0xc0, 0x07, 0xff, 0xff, 0xc0, 0x07, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf, 0xf7, 0xff, 0xf, 0xf, 0xf, 0xff, 0xff, 0xff, 0xff, 0xff 0x1f, 0xff, 0xff, 0xf8, 0x1f, 0xff, 0xff, 0xf8, 0xff, 0xff, 0xf8, 0xff, 0xff, 0xf8, 0xff, 0xff, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xff 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x0e, 0x00, 0x01, 0xe0, 0x0e, 0x00, 0x00, 0xe0, 0x0e, 0x00, 0x0, 0x, 0x, 0x0, 0x0, 0x0, 0x00, 0x00, 0x00, 0x00, 0x00 0x0e, 0x00, 0x00, 0xe0, 0x0e, 0x00, 0x01, 0xe0, 0x0e, 0x00, 0x01, 0xe0, 0x0e, 0x00, 0x01, 0xe0, 0x0e, 0x00, 0x00, 0xe0, 0x0e, 0x00, 0xe0, 0x00, 0x00, 0x00, 0xc0, 0x0, 0x00, 0xc0, 0x0c, 0x00, 0x00, 0x00, 0x0, 0x0, 0x0, 0x00, 0xc0, 0x0c, 0x00, 0x00, 0xc0, 0x0c, 0x00, 0xc0, 0x0c, 0x00, 0xc0, 0x04, 0x00, 0x40, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00};

const unsigned char accueil PROGMEM = {

0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x80, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x80, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xf, 0xf, 0xf, 0xf, 0xff, 0xf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xf, 0xf, 0xf, 0xf, 0xff, 0xf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, 0xc1, 0xd9, 0x83, 0xff, 0xfc, 0x00, 0x3x, 0ff, 0ff, 0ff, fff, 0xff, 0xe6, 0xff, 0xf9, 0x83, 0xff, 0xfc, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc4, 0xex, 0xbx, 0xf, 0xf, 0xf, 0xf, 0xff, 0xff, 0x00, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff4, 0xf9, 0xf9, 0xb1, 0xa3, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x3f, 0xff, 0xx, 0ffx, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x83, 0xf3, 0x07, 0xff, 0xff, 0xfc, 0x00, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe1, 0x83, 0x73, 0x0f, 0xx, 0xf, 0xf, 0xf, 0xf, 0xf, 0xfc, 0xff, 0xf3, 0xf8, 0x02, 0x03, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0xff, 0xf3, 0xf8, 0xf, 0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x3f, 0xff, 0xf1, 0xf1, 0xfc, 0x30, 0xff, 0xff, 0xff, 0xff, 0xff, 0x ff, 0xff, 0xff, 0xf8, 0x00, 0x00, 0x3f, 0xff3, 0xf1, 0xf1, 0xfc, 0x78, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xx, 0ff, 0xf, 0xf, 0xf, 0xf, 0xff 0xf3, 0xbc, 0x7c, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0xe0, 0x1c, 0x7c, 0x7x, 0ff, 0x, 0ff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xec, 0x1c, 0x7c, 0x7x, 0ff, fx, 0x, f, 0xff, 0xff, 0xff 0xff, 0xf0, 0x04, 0x00, 0x0f, 0xff, 0xe7, 0x3c, 0x7c, 0x7c, 0xff, 0xff, 0xff, 0xff, 0xf, 0xf0, 0xf, 0x, 0x, 0x, 0xf, 0xf 0x7c, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe0, 0x00, 0x00, 0x07, 0xff, 0x8f, 0xe3, 0xf8, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff 0x00, 0x00, 0x07, 0xff, 0x8f, 0xc7, 0xf8, 0xf8, 0xf, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x07, 0xf, 0xf, 0xf, 0xf, 0xf7, 0xf8, 0xf8, 0xf8, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x07, 0xf, 0xf, 0xf, 0xf, 0xf 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x07, 0xff, 0x88, 0x07, 0x88, 0x60, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff 0x07, 0xff, 0x80, 0x00, 0x08, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf1, 0xf9, 0xff, 0xcf, 0xff, 0x80, 0x00, 0x08, 0x07, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff 0xff, 0xff, 0xff, 0xff, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf, 0xf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf, 0xf, 0xf, 0xff, 0xff, 0xff, 0xff, 0xff 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff 0xff, 0xff, 0x1f, 0xf0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x1f, 0xf0, 0xff, 0ffff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, 0xf, 0xff, 0ffff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x1f, 0xf0, 0xff, 0xff, 0xe0, 0x1c, 0x01, 0xc0, 0xe0, 0x1c, 0x0x, 0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe0, 0x1c, 0x01, 0xc0, 0xe0, 0x1c, 0x01, 0x0, 0xff, 0xff, 0xff, 0xff, 0xff 0x1f, 0xf0, 0xff, 0xff, 0x80, 0x04, 0x03, 0x00, 0x04, 0x01, 0x1f, 0x98, 0x03, 0xff, 0xf0, 0xf0, 0xf, 0xf, 0x, 0x, 0x, 0x, 0x, 0x0, 0xf 0x40, 0xff, 0x1f, 0x90, 0xe1, 0xff, 0xff, 0xff, 0xf0, 0xff, 0xff, 0x38, 0xf8, 0xfe, 0x3f, 0xb8, 0xf8, 0xfe, 0x1f, 0x91, 0xe1, 0xff, 0xff, 0xff, 0xf0, 0xff, 0xf9, 0xf8, 0xfe, 0x3f, 0xf8, 0xf8, 0xfe, 0x3x, 0fx, 0fx, 0fx, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xff, 0xf1, 0xf0, 0x0f, 0x07, 0xf8, 0xf8, 0x0f, 0x3f, 0x93, 0x87, 0xff, 0xff, 0x1f, 0xf, 0xf, 0xf0, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf1, 0xf1, 0xf1, 0xf1, 0xf1, 0xf1, 0xf, 0xf, 0xf1, 0xf1, 0xf0, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf,, 0xa0, 0x0f, 0xff, 0xff, 0x9F, 0xf9, 0xff, 0xff, 0xf1, 0xF0, 0xff, 0xf8, 0x70, 0xF0, 0xFE, 0x3F, 0x20, 0x1f, 0xff, 0xff, 0x9F, 0xf9, 0xff, 0xff, 0xf1, 0xf1, 0xff, 0xfc, 0x71, 0xf1, 0xfe, 0x3f, 0x20, 0x0f, 0xff, 0xff, 0xf9, 0xff, 0xff, 0xe1, 0xe3, 0xfx, 0xfx, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf1, 0xf1, 0xf1, 0xf1, 0xf1, 0xf1, 0xf1, 0xf1, 0xf1, 0xfd, 0xfx, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xff, 0xff, 0xbf, 0xf9, 0xff, 0xff, 0xe1, 0xfc, 0xfc, 0xf8, 0x61, 0xe3, 0xfe, 0x1e, 0x63, 0x87, 0xff, 0xff, 0xff, 0xf, 0xf, 0xf, 0xf, 0xf, 0xf, 0xff, 0x00, 0x61, 0xe1, 0xc6, 0x00, 0xc7, 0xff, 0xff, 0x9f, 0xf9, 0xff, 0xe1, 0xe0, 0x04, 0xe1, 0xex, 0xex, 0xex, 0xex, 0xex, 0xex, 0xex, 0xex, 0xex, 0xex, 0xex, 0xex, 0xex, 0xex, 0xex, 0xex, 0xex, 0xex, 0xe0, 0xex, 0xex, 0xex, 0xe0, 0xex, 0xex, 0xe0, 0xex, 0xe0, 0xex, 0xe0, 0xex, 0xex, 0xex, 0xff, 0x9f, 0xf9, 0xff, 0xff, 0xe1, 0xe0, 0x07, 0xe1, 0xe0, 0x07, 0x01, 0xc3, 0xc3, 0xff, 0xff, 0xff, 0x 9f, 0xf9, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf9, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf9, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff}

mode int = 0;

int pause = 500;

int RL = 0;

int R1 = 10000;

int R2 = 10000;

int R3 = 47;

float raw = 0;

float val = 0;

float ref = 0;

float vbat = 0;

float vin = 0,00;

float voutL = 0.00;

float voutH = 0.00;

float vref = 0.00;

float vled = 0.00;

float vr = 0.00;

float IL = 0,00;

float vinref = 0.00;

float vinbat = 0;

pengaturan batal ()

{

pinMode (5, INPUT_PULLUP);

pinMode (4, INPUT_PULLUP);

pinMode (3, INPUT_PULLUP);

attachInterrupt (1, bouton, FALLING);

// secara default, kami akan menghasilkan tegangan tinggi dari jalur 3.3v secara internal! (rapi!) display.begin (SSD1306_SWITCHCAPVCC, 0x3C); // inisialisasi dengan I2C addr 0x3C (untuk 128x32)

}

membatalkan loop ()

{

float vref = readVcc () / 1000.0;

val = analogRead (A7);

raw = analogRead (A2);

voutH = (val * vref) / 1024.0; // lihat teks

voutL = (mentah * vref) /1024.0;

jika (voutL> 0)

{

if (mode == 0) // caracteristique led

{

float vref = (readVcc () / 1000.0);

val = analogRead (A7);

raw = analogRead (A2);

ref = analogRead (A0);

voutH = (val * vref) / 1024.0; // lihat teks

voutL = (mentah * vref) /1024.0;

vled = (voutH-voutL) * (R1 + R2) / R2;

vr = voutL;

IL = vr / R3;

display.clearDisplay ();

display.setTextColor (WHITE);

display.drawBitmap (96, 0, led, 32, 64, 1);

display.setFont ();

display.setFont (& FreeSans9pt7b);

display.setCursor (0,12);

display.print ("fitur LED");

display.setCursor (0,35);

display.print ("VL:");

display.setCursor (28,35);

display.print (vled);

display.setCursor (72,35);

display.print ("V");

display.setCursor (0,60);

display.print ("IL:");

display.setCursor (28,60);

display.print (IL * 1000);

display.setCursor (75,60);

display.print ("mA");

display.display ();

keterlambatan (jeda);

}

if (mode == 1)

{// perlawanan

float vref = (readVcc () / 1000.0);

val = analogRead (A7);

raw = analogRead (A2);

ref = analogRead (A0);

voutH = (val * vref) /1024.0;

voutL = (mentah * vref) /1024.0;

vinref = (ref * vref * 2) /1024.0;

vled = (voutH-voutL) * (R1 + R2) / R2;

IL = voutL / R3;

RL = (vinref-vled) / IL;

display.clearDisplay ();

display.drawBitmap (96, 0, resis, 32, 64, 1);

display.setFont ();

display.setFont (& FreeSans9pt7b);

display.setCursor (0,12);

display.print ("Perlawanan:");

display.setCursor (0,35);

display.print ("Vin:");

display.setCursor (32,35);

display.print (vinref);

display.setCursor (75,35);

display.print ("V");

display.setCursor (0,60);

display.print ("RL:");

jika (RL <0)

{

display.setCursor (30,60);

display.print ("kosong");

}

lain

{

display.setCursor (30,60);

display.print (RL);

display.drawBitmap (73, 46, oms, 15, 15, 1);

}

display.display ();

keterlambatan (jeda);

}

if (mode == 2)

{// baterie

float vref = (readVcc () / 1000.0);

vbat = analogRead (A1);

vinbat = (vbat * vref * 2.3) /1024.0;

isplay.clearDisplay ();

display.drawBitmap (90, -2, batterie, 36, 21, 1);

display.setFont ();

display.setFont (& FreeSans9pt7b);

display.setCursor (0,14);

display.print ("Batterie:");

//display.fillRect(10,35,90,20,WHITE);

//display.fillRect(12,37,88,18,BLACK);

display.drawRoundRect (15, 40, 95, 24, 8, WHITE);

display.setCursor (0,35);

display.print ("Vbat:");

display.setCursor (50,35);

display.print (vinbat);

display.setCursor (90,35);

display.print ("V");

if (vinbat> 0 && vinbat <7.0)

{// satu batang

display.fillRect (20,45,10,15, BLACK);

}

lain jika (vinbat> 7.0 && vinbat <7.8)

{// dua bilah

display.fillRect (20,45,10,15, BLACK);

display.fillRect (30,45,5,15, WHITE);

display.fillRect (35,45,10,15, BLACK);

}

lain jika (vinbat> 7.8 && vinbat <8.4)

{// tiga bilah

display.fillRect (20,45,10,15, BLACK);

display.fillRect (30,45,5,15, WHITE);

display.fillRect (35,45,10,15, BLACK);

display.fillRect (45,45,5,15, WHITE);

display.fillRect (50,45,10,15, BLACK);

}

lain jika (vinbat> 8.4 && vinbat <8.7)

{// empat bar

display.fillRect (20,45,10,15, BLACK);

display.fillRect (30,45,5,15, WHITE);

display.fillRect (35,45,10,15, BLACK);

display.fillRect (45,45,5,15, WHITE);

display.fillRect (50,45,10,15, BLACK);

display.fillRect (60,45,5,15, WHITE);

display.fillRect (65,45,10,15, BLACK);

}

lain jika (vinbat> 8.7 && vinbat <9.0)

{// lima bilah

display.fillRect (20,45,10,15, BLACK);

display.fillRect (30,45,5,15, WHITE);

display.fillRect (35,45,10,15, BLACK);

display.fillRect (45,45,5,15, WHITE);

display.fillRect (50,45,10,15, BLACK);

display.fillRect (60,45,5,15, WHITE);

display.fillRect (65,45,10,15, BLACK);

display.fillRect (75,45,5,15, WHITE);

display.fillRect (80,45,10,15, BLACK);

}

lain jika (vinbat> 9.0 && vinbat <9.4)

{

display.fillRect (20,45,10,15, BLACK);

display.fillRect (30,45,5,15, WHITE);

display.fillRect (35,45,10,15, BLACK);

display.fillRect (45,45,5,15, WHITE);

display.fillRect (50,45,10,15, BLACK);

display.fillRect (60,45,5,15, WHITE);

display.fillRect (65,45,10,15, BLACK);

display.fillRect (75,45,5,15, WHITE);

display.fillRect (80,45,10,15, BLACK);

display.fillRect (90,45,5,15, WHITE);

display.fillRect (95,45,10,15, BLACK);

}

display.display (); keterlambatan (jeda); }

}lain

{

display.clearDisplay ();

display.drawBitmap (0, 0, accueil, 128, 64, 1);

display.display ();

keterlambatan (700);

display.display ();

keterlambatan (1000);

}

}

batal bouton ()

{

static unsigned long last_interrupt_time = 0;

unsigned long interrupt_time = millis ();

// Jika interupsi datang lebih cepat dari 200 ms, anggap itu bouncing dan diabaikan

if (interrupt_time - last_interrupt_time> 220) {

mode ++;

nada (6,2250,50);

jika (mode> 2)

mode = 0;

}

last_interrupt_time = interrupt_time;

}

long readVcc ()

didefinisikan (__ AVR_ATmega2560__) ADMUX = _BV (REFS0)

Langkah 3: Realisasi

Skema dan PCB. Saya menggunakan ELANG untuk menyadari shem dan pcb

situs yang bagus untuk pembuatan

jlcpcb.com/

Daftar bahan:

-1 Arduino mini pro 5v

http: //www.banggood.com/Wholesale-New-Ver-Pro-Min …

-1 0,96 Inch Modul OLED 12864 128x64 Kuning Biru SSD1306 Driver I2C Papan Display Bercahaya Seri Diri untuk Arduino Raspberry PI atau lainnya

peringatan untuk polaritas Gnd Vcc atau Vcc Gnd

http: //www.amazon.com/UCTRONICS-SSD1306-Self-Lumi …

http: //www.ebay.fr/itm/0-96-I2C-IIC-SPI-Serial-12 …

-1 LM317 LZ

http: //www.ebay.fr/itm/5Pcs-LM317LZ-LM317L-LM317 -…

http: //www.amazon.com/LM317LZ-Voltage-Regulator-I …

-1 MCP1702 5V

http: //www.ebay.fr/itm/Microchip-MCP1702-500-TO-9 …

http: //www.amazon.com/5002E-MCP1702-1702-5002E-MC …

-2x10K 2x470K 2x 47R 1 / 8W

-1x500R variabel TSR3386F 3/8

http: //www.ebay.fr/itm/Suntan-TSR3386F-3-8-1-turn …

-1x10K varable TSR3386F 3/8

http: //www.ebay.fr/itm/Suntan-TSR3386F-3-8-1-turn …

-1xsitch on / off SS12D00G4 SPDT 1P2T 2 Posisi PCB 3 Pin

http: //www.ebay.fr/itm/20pcs-SS12D00G4-SPDT-1P2T -…

-2x 1μF tantale

-3x100nF

-1x1N4148

Kemungkinan Power pada batterie 9V atau batterie lipo 3.7V

-1x3.7V 9V 5V 2A Penyesuaian Disesuaikan 18650 Baterai Lithium Pengisian Modul Terpadu

http: //www.banggood.com/3pcs-3_7V-9V-5V-2A-Adjust …

-1xLIPO batterie 3.7V 400mAh

http: //www.ebay.fr/itm/Batterie-403035-Lipo-3-7v -…

Langkah 4: Pemuatan Kode dan Uji dan Masukkan ke dalam Kotak

Untuk memuat kode gunakan FTDI

dan uji dengan LED dan dioda yang berbeda

membuat kotak cetak 3d

sampai ke bawah:

www.thingiverse.com/thing:3594143

berkumpul dan menikmati

Oleh karena itu proyek ini menggunakan beberapa peranti lunak, sebuah kalkulator pcb tantangan yang bagus, kalkulator elektronik, dll

Langkah 5: