- Samsung Galaxy Z Fold7 - ezt vártuk, de…
- Huawei P30 - kell ennél több?
- Google Pixel topik
- Xiaomi 15 - kicsi telefon nagy energiával
- Okosóra és okoskiegészítő topik
- Motorola Edge 50 Neo - az egyensúly gyengesége
- Android alkalmazások - szoftver kibeszélő topik
- Huawei Watch Fit 3 - zöldalma
- Samsung Galaxy Watch7 - kötelező kör
- Apple Watch
Hirdetés
-
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
-
Teasüti
nagyúr
MPU6050 lelkivilágához ért itt vki?
Átnyálaztam magam ezen, mellé felcsaptam még ezt is.
Viszont akad pár kérdésem, amit nem értek, infót neten nem találtam, a program és a kézikönyv nem tárgyalja.
Pl. a FIFO olvasása és írása hogy működik?
Van egy FIFO_R_W regiszterem, de ez csak egyetlen bájt az 1024-ből. Szóval ezt miként használja a modul? Az olvasás gondolom úgy megy, mint a 60 KB soros puffer esetén, hogy a kiolvasott adat helyére a sorban következő kerül míg ki nem ürül a FIFO. Így van?
Viszont az írás teljesen ködös, egyáltalán mit és miért kéne ebbe írni kívülről az adatbusz felől?Aztán ott van a low pass filter és a sample rate.
Ha jól értem a kézikönyvet, akkor a chip a mintavételi frekinél alacsonyabb szűrő frekivel írja ki a szűrt értéket a regiszterbe.
Viszont ennek látszólag ellenmond az alábbi kód:// Configure MPU6050 gyro and accelerometer for bias calculation
writeByte(MPU6050_ADDRESS, CONFIG, 0x01); // Set low-pass filter to 188 Hz
writeByte(MPU6050_ADDRESS, SMPLRT_DIV, 0x00); // Set sample rate to 1 kHz
writeByte(MPU6050_ADDRESS, GYRO_CONFIG, 0x00); // Set gyro full-scale to 250 degrees per second, maximum sensitivity
writeByte(MPU6050_ADDRESS, ACCEL_CONFIG, 0x00); // Set accelerometer full-scale to 2 g, maximum sensitivity
uint16_t gyrosensitivity = 131; // = 131 LSB/degrees/sec
uint16_t accelsensitivity = 16384; // = 16384 LSB/g
// Configure FIFO to capture accelerometer and gyro data for bias calculation
writeByte(MPU6050_ADDRESS, USER_CTRL, 0x40); // Enable FIFO
writeByte(MPU6050_ADDRESS, FIFO_EN, 0x78); // Enable gyro and accelerometer sensors for FIFO (max size 1024 bytes in MPU-6050)
delay(80); // accumulate 80 samples in 80 milliseconds = 960 bytesTehát 80 ms-et vár, ami e szerint 80 minta (1 kHz). Viszont feljebb meg 188 Hz-es lowpass van beállítva, szóval ezt nem értem.
A célom az volna, hogy egy tetszőleges lowpass frekvencián megtöltsem a FIFO-t a gyorsulásérzékelő adataival, majd ezt burst read módban kiolvasni relatíve ritkán, hogy a fő programomat ne lassítsa be a 200 hz-es I2C olvasás szerencsétlen Uno-n. E helyett mondjuk a megengedhető legnagyobb késleltetéssel végezni egyetlen I2C műveletet a teljes FIFO puffert kiemelve, majd matekozni.
Ehhez talán interrupt se fog kelleni, max flag-ként.
Illetve azon fílózom még, hogy ha overflow interrupt-ot választok, akkor a FIFO eleje már felülírodott, mire jön a jel? Mert tök jó lenne úgy időzíteni a burst read-et is, hogy teli puffernél olvasson.szerk: illetve továbbra se tudok interrupt-ban I2C műveletet végezni. Ez normális?
Köszi!
Új hozzászólás Aktív témák
- Csökkentik a fogyasztást a Google AI-adatközpontok, hogy ne legyen áramszünet
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- NVIDIA GeForce RTX 3080 / 3090 / Ti (GA102)
- Futás, futópályák
- Építő/felújító topik
- Samsung Galaxy Z Fold7 - ezt vártuk, de…
- NVIDIA® driverek topikja
- Huawei P30 - kell ennél több?
- Kerékpárosok, bringások ide!
- Musk feloszlatta a Tesla Dojo szuperszámítógépes részlegét
- További aktív témák...
- LG 55QNED87T 139 cm-es 4K QNED Gaming Erőmű, 120Hz-el és 3ms válaszidővel!
- LG 65QNED87T 165 cm-es 4K QNED Gaming Erőmű, 120Hz-el és 3ms válaszidővel!
- MacSzerez.com - 2022 MacBook Pro 13" Retina M2 / 8GB RAM / 256GB SSD / Asztro / Garancia / Magyar
- 3x ASUS Turbo RTX 2080 Ti (11 GB) / Frissen pasztázva / Igény esetén + EKWB vízesblokk.
- LG 75QNED87T 190 cm-es 4K QNED Gaming Erőmű, 120Hz-el és 3ms válaszidővel!
Állásajánlatok
Cég: FOTC
Város: Budapest