Hirdetés
- Miért fárad gyorsabban az iPhone akku, mint az androidos?
- Amazfit Helio Strap – képernyőmentesen
- Rossz hírek a Galaxy S26-ok teléjét illetően
- Xiaomi 15T - reakció nélkül nincs egyensúly
- Milyen okostelefont vegyek?
- Xiaomi 15T Pro - a téma nincs lezárva
- Google Pixel topik
- Yettel topik
- Sony Xperia 1 V - kizárólag igényeseknek
- iPhone topik
-
Mobilarena
Arduino hardverrel és szoftverrel foglakozó téma. Minden mikrovezérlő ami arduinoval programozható, és minden arduino program, board, és hardverrel kapcsolatos kérdések helye.
Új hozzászólás Aktív témák
-
Tomika86
senior tag
Ezt a példaprogramot kommenteztem be:
#include <Wire.h>#define xAddr 0x50 //külső EEPROM cím definiálásabyte i;char buffer[10];char newStr[10];unsigned int eepromAdd = 0;float adat = 123.321;void setup(){Serial.begin(9600);Wire.begin();}void loop(){//Float konvertálása stringbe és EEPROM-ba írásachar chrFloat[] = "";; // string létrehozásachar buffer[10]; // character tömb létrehozásadtostrf(adat, 6, 4, buffer); // 6 szélesség, 4 a precizitás; adat float átalakítása a buffer változóbastrcat( chrFloat, buffer); // buffer character tömb összefűzése stringbe?// Átalakított string írása:for(byte i=0; i<=strlen(chrFloat); i++) // i ciklusváltozó a string hosszáigwriteEEPROM(xAddr, eepromAdd+i, chrFloat[i]); // 1 byte írása a// Adat kiolvasása és átalakítása float-ra:for(i=0; i<=strlen(chrFloat); i++)newStr[i] = readEEPROM(xAddr, eepromAdd + i); // 1 byte olvasásanewStr[i] = 0;Serial.println(atof(newStr),2); // ASCII konvertálása float-ba 2 tizedessel}// Egy byte írásavoid writeEEPROM(int devAddr, unsigned int eeAddr, byte data ){Wire.beginTransmission(devAddr);Wire.write((byte)eeAddr >> 8); // Legnagyobb helyiértékű byte írása, LSB-t jobbra shifteljük, hogy megszabaduljunk tőleWire.write((byte)eeAddr & 0xFF); // Legkisebb helyiértékű byte írása, LSB kimaszkolása bitekkel ÉS 0-kkalWire.write(data);Wire.endTransmission();delay(5); //5ms várakozás}// Egy byte olvasásabyte readEEPROM(int devAddr, unsigned int eeAddr ){byte readByte = 0;Wire.beginTransmission(devAddr);Wire.write((byte)eeAddr >> 8); // A legnagyobb helyiértékű byte írásaWire.write((byte)eeAddr & 0xFF); // A legkisebb helyiértékű byte írásaWire.endTransmission();Wire.requestFrom(devAddr,1);if (Wire.available())readByte = Wire.read();return readByte;}
Új hozzászólás Aktív témák
- Folyószámla, bankszámla, bankváltás, külföldi kártyahasználat
- Kuponkunyeráló
- Kerékpárosok, bringások ide!
- Forza sorozat (Horizon/Motorsport)
- Mibe tegyem a megtakarításaimat?
- eBay-es kütyük kis pénzért
- Melyik tápegységet vegyem?
- Házi hangfal építés
- Kertészet, mezőgazdaság topik
- Miért fárad gyorsabban az iPhone akku, mint az androidos?
- További aktív témák...
- iPhone 13 mini 128GB Starlight -1 ÉV GARANCIA - Kártyafüggetlen, MS3831, 100% Akkumulátor
- Apple iPhone 15 Pro 128GB, Kártyafüggetlen, 1 Év Garanciával
- Telenor 5G Indoor WiFi Router (FA7550) + töltő
- Bomba ár! HP EliteBook Folio 1040 G3 - i5-G6 I 8GB I 256GB SSD I 14" FHD I Cam I W11 I Garancia!
- Keresünk dokkolókat
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: Laptopműhely Bt.
Város: Budapest
ekkold

