- Luck Dragon: Asszociációs játék. :)
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- vrob: Az utolsó DOS játékok 1996 - 1997-ben, egy korszak lezárul
- Rap, Hip-hop 90'
- Gurulunk, WAZE?!
- sziku69: Szólánc.
- btz: Internet fejlesztés országosan!
- sziku69: Fűzzük össze a szavakat :)
- Meggyi001: RTX 5060 - Az új népkártya?
- bitpork: Phautós tali a Balcsinál 2025 Augusztus 2 napján (szombat)
Hirdetés
Köszönjük a sok biztatást, támogatást! Egy rövid ideig még féláron tudsz hirdetni, előfizetni!
-
LOGOUT
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ása
byte 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ása
char chrFloat[] = "";; // string létrehozása
char buffer[10]; // character tömb létrehozása
dtostrf(adat, 6, 4, buffer); // 6 szélesség, 4 a precizitás; adat float átalakítása a buffer változóba
strcat( 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áig
writeEEPROM(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ása
newStr[i] = 0;
Serial.println(atof(newStr),2); // ASCII konvertálása float-ba 2 tizedessel
}
// Egy byte írása
void 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őle
Wire.write((byte)eeAddr & 0xFF); // Legkisebb helyiértékű byte írása, LSB kimaszkolása bitekkel ÉS 0-kkal
Wire.write(data);
Wire.endTransmission();
delay(5); //5ms várakozás
}
// Egy byte olvasása
byte readEEPROM(int devAddr, unsigned int eeAddr )
{
byte readByte = 0;
Wire.beginTransmission(devAddr);
Wire.write((byte)eeAddr >> 8); // A legnagyobb helyiértékű byte írása
Wire.write((byte)eeAddr & 0xFF); // A legkisebb helyiértékű byte írása
Wire.endTransmission();
Wire.requestFrom(devAddr,1);
if (Wire.available())
readByte = Wire.read();
return readByte;
}
Új hozzászólás Aktív témák
- Milyen belső merevlemezt vegyek?
- Autós topik
- Gyúrósok ide!
- WoW avagy World of Warcraft -=MMORPG=-
- Külföldi prepaid SIM-ek itthon
- Témázgatunk, témázgatunk!? ... avagy mutasd az Android homescreened!
- Gaming notebook topik
- Otthoni hálózat és internet megosztás
- Genshin Impact (PC, PS4, Android, iOS)
- Audi, Cupra, Seat, Skoda, Volkswagen topik
- További aktív témák...
- iPhone 13 mini 128GB Midnight -1 ÉV GARANCIA - Kártyafüggetlen, MS3086, 94% Akkumulátor
- 0% THM részletfizetés, beszámítás! Gamer PC, notebook, konzol, Apple termék, hardver KAMATMENTESEN!
- LG 39GS95UE - 39" Ívelt OLED / QHD 2K / 240Hz & 0.03ms / 1300 Nits / NVIDIA G-Sync / AMD FreeSync
- DELL PowerEdge R730xd 26SFF rack szerver - 2xE5-2680v3 (24c/48t, 2.5/3.3GHz), 64GB RAM, 10G, H730p
- GYÖNYÖRŰ iPhone 11 Pro 64GB Space Grey -1 ÉV GARANCIA - Kártyafüggetlen, MS2050, 100% Akkumulátor
Állásajánlatok
Cég: FOTC
Város: Budapest