Cuprins:
- Pasul 1: Primele lucruri mai întâi
- Pasul 2: Hardwares necesare
- Pasul 3: Biblioteci Arduino IDE pentru compilare
- Pasul 4: Conexiuni
- Pasul 5: încărcare schiță
Video: Altimetru Arduino folosind BMP și SPI sau I2C OLED: 5 pași
2024 Autor: John Day | [email protected]. Modificat ultima dată: 2024-01-30 11:46
De mult timp am căutat altimetru și temperatură folosind un singur senzor și îl afișez pe OLED bazat pe SPI. Deoarece nu am putut găsi ceva precis, m-am gândit să-mi construiesc propriul meu folosind biblioteca U8glib. Există un tutorial pe YouTube, dar urăsc tutorialele video, prefer textele cu instrucțiuni simple și fără legături comerciale.
Pasul 1: Primele lucruri mai întâi
Înainte de a face acest proiect, vă recomand cu tărie să finalizați tutorialul SSD1306 / OLED pentru I2C sau SPI (oricare dintre acestea doriți să utilizați). Acest lucru vă va asigura că știți cum să conectați / conectați ecranul, precum și afișajul dvs. funcționează. Faceți tutorialul adafruit și / sau exemple de tutorial u8glib. Vom folosi u8glib aici, așa că este recomandat utilizatorilor avansați.
Pasul 2: Hardwares necesare
1. Arduino UNO sau Nano sau similar.
2. Senzor de presiune barometrică BMP085 sau BMP180.
3. SSD1306 I2C sau SPI Bus (Configurabil în schiță).
4. Sârme jumper și panou de verificare sau placa Vero pentru conexiuni.
Pasul 3: Biblioteci Arduino IDE pentru compilare
1. Sârmă.h
2. Adafruit_BMP085.h (va funcționa și pentru BMP180)
3. U8glib.h
Pasul 4: Conexiuni
Conexiunile sunt la fel atât pentru afișajul I2C, cât și pentru ecranul SPI OLED. Numai conexiunea la afișare va fi diferită.
1. BMP către Arduino:
VCC> 3,3V
GND> Teren
SCL> A5 / SCL
SDA> A4 / SDA
SCK = 12, MOSI = 11, CS = 10, A0 = 9, Reset = 13
2. SPI OLED către Arduino
VDD> 5V
GND> Teren
SCK / D0> D12 (Digital 12)
SDA / D1 / Mosi> D11
CS / Chip Select> D10
A0 / DC> D9
RES / Resetare> D13
(Dacă SPI OLED-ul dvs. nu are pinul Resetare, eliminați resetarea și resetarea pinului de pe afișajul schiței, selectați parametrii)
3. I2C OLED
La fel ca cablajul BMP, utilizează aceleași porturi și același tip de magistrală.
Pasul 5: încărcare schiță
Destul de direct. Doar descărcați fișierul zip și deschideți în Arduino IDE. Totul este configurat în schiță. Utilizatorii SPI OLED pot încărca schița fără nicio editare și va funcționa. Pentru utilizatorii I2C OLED, doar decomentați numele / opțiunea de afișare din opțiunea Display Select din schiță și comentați și închideți modelul / parametrul SPI Display pentru a dezactiva SPI OLED.
Parametru de afișare SPI:
// U8GLIB_SSD1306_128X64 u8g (12, 11, 10, 9, 13); // SW SPI Com: SCK = 12, MOSI = 11, CS = 10, A0 = 9, Reset = 13
Parametru de afișare I2C:
// U8GLIB_SSD1306_128X64 u8g (U8G_I2C_OPT_NO_ACK); // Afișați care nu trimite AC
Pentru a activa un parametru, trebuie doar să eliminați semnul // la început pentru a nu-l comenta. Asigurați-vă că este selectat / necomentat un singur afișaj.
Sugestii:
1. Senzorii BMP sunt sensibili la vânt, căldură și lumini. Asigurați-vă că îl acoperiți, cele mai bune rezultate sunt obținute prin atașarea unei spume cu aerisire adecvată pe ea. Lucruri precum banda de rață vor funcționa și ele, dar nu vor fi precise.
2. BMP folosește de obicei 3.3V, cu excepția cazului în care producătorul dvs. spune altfel. OLED poate funcționa de la 3,3V-5,5V (se recomandă 4-5V)
3. Este recomandat să setați mai întâi totul pe panou.
4. Dacă sunteți nou în OLED, vă rugăm să încercați mai întâi elemente simple, cum ar fi text și tampoane fictive, pentru a vă asigura că afișajul dvs. funcționează, precum și conexiunile dvs. sunt exacte.
Recomandat:
Altimetru avion RC (compatibil cu telemetria Spektrum): 7 pași
RC Plane Altimeter (compatibil cu Spektrum Telemetry): Am realizat acest altimetru, astfel încât pilotul să știe că se află sub limita de 400 de picioare a aeronavelor RC din SUA. Prietenul meu era îngrijorat, deoarece nu putea spune cu certitudine că avea întotdeauna sub 400 ft și dorea asigurarea suplimentară că un senzor va
Arduino Nano - Tutorial senzor de altimetru de precizie MPL3115A2: 4 pași
Arduino Nano - MPL3115A2 Tutorial senzor de altimetru de precizie: MPL3115A2 folosește un senzor de presiune MEMS cu o interfață I2C pentru a furniza date precise de presiune / altitudine și temperatură. Ieșirile senzorului sunt digitalizate printr-un ADC de 24 biți de înaltă rezoluție. Procesarea internă elimină sarcinile de compensare din
Dirt-O-Meter ieftin - Altimetru audibil pe bază de Arduino de 9 USD: 4 pași (cu imagini)
Dirt Cheap Dirt-O-Meter - Altimetru audibil bazat pe Arduino de 9 dolari: Dytters (A.K.A Audimetre audibile) au salvat viețile parașutistilor atât de mulți ani. Acum, Audible Abby le va economisi și ei bani. Dytters-urile de bază au patru alarme, una la urcare și trei la coborâre. În călătoria cu avionul, parașutistii trebuie să știe când
Afișaj LCD I2C / IIC - Utilizați un LCD SPI pe afișajul LCD I2C Utilizând modulul SPI la IIC cu Arduino: 5 pași
Afișaj LCD I2C / IIC | Utilizați un LCD SPI pe afișajul LCD I2C Utilizarea modulului SPI la IIC cu Arduino: Bună băieți, deoarece un SPI LCD 1602 normal are prea multe fire pentru a se conecta, deci este foarte dificil să îl interfațați cu arduino, dar există un modul disponibil pe piață. convertiți afișajul SPI în afișajul IIC, deci trebuie să conectați doar 4 fire
SPI preliminar * pe Pi: comunicarea cu un accelerometru cu 3 axe SPI folosind un Raspberry Pi: 10 pași
SPI preliminar * pe Pi: Comunicarea cu un accelerometru cu 3 axe SPI Utilizarea unui Raspberry Pi: Ghid pas cu pas despre cum să configurați Raspbian și să comunicați cu un dispozitiv SPI utilizând biblioteca SPI bcm2835 (NU bit banged!) Acest lucru este încă foarte preliminar … Trebuie să adaug imagini mai bune ale legăturii fizice și să analizez un cod incomod