Hirdetés
-
PROHARDVER!
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
-
tonermagus
aktív tag
Ma egész szépen elhaladtam a GPS projektemmel. Felépítettem a Bázis állomást, NEO GPS 8 leszedi a GPS koordinátát, azt eltárolom egy floatban amit átküldök NRF24L01+PA+LNA-val a Rover eszköznek.
float gpsadat=fix_data.latitude();float gpsadat1=fix_data.longitude();radio.write(&gpsadat, sizeof(gpsadat));radio.write(&gpsadat1, sizeof(gpsadat1));Tudom, ez nem túl elegáns, tömbként jobb lenne átküldeni, de még nem jöttem rá hogy kell lekódolni
Na mindegy, a lényeg az, hogy ez meg is érkezik a Rover-hez, mindkét érték tökéletesen megjelenik Seriallal kiíratva a gpsadat és gpsadat1-et.A gond ott kezdődik, hogy ugyebár két dinamikusan változó GPS koordináta között akarok távolságot mérni. Így az alábbi parancsot használom:
NeoGPS::Location_t base( gpsadat, gpsadat1 );float range = fix.location.DistanceKm(base);Ez tökéletesen működik ha fix számot írok be a :
NeoGPS::Location_t base( 43.121212, 20.121212 );float range = fix.location.DistanceKm(base);De ha oda a gpsadat, gpsadat1 -t használom akkor nagyon hülye adatok jönnek ki.
Hosszas nyomozás után rájöttem, hogy a Location_t elvileg int32_t változót vár paraméternek, én pedig ugye float-ot adok. Így a gyakorlatban ezt kapja:NeoGPS::Location_t base( 43, 20 );Hogy tudom azt megcsinálni, hogy a 43.121212-ból 43121212 legyen? Mert úgy is elfogadja. Tudom hogy nagyon alap dolog, de rajtam kifog

Próbálkoztam az
int32_t gpslat=gpsadatsorral is, de ekkor is csak 43 tárolódik el a gpslat változóban...Egyébként könnyen lehet hogy már a gps koordináták kiolvasásánál lehetne ilyen formátumra kérni az adatot, de ebben János250 kolléga lehet jobban képben van

Új hozzászólás Aktív témák
- 5.1, 7.1 és gamer fejhallgatók
- Milyen okostelefont vegyek?
- AMD Ryzen 9 / 7 / 5 7***(X) "Zen 4" (AM5)
- Garancia kérdés, fogyasztóvédelem
- Kínai és egyéb olcsó órák topikja
- Kezdő fotósok digitális fényképei
- Projektor topic
- Azonnali alaplapos kérdések órája
- Filmvilág
- E-book olvasók
- További aktív témák...
- Asus G14 GA402RK -1TB,6800S,16GB/AnimeMatrix
- AMD Ryzen 5 5600X/3070/512Gb SSD/32Gb RAM/850W GOLD
- Chieftec GPS-350EB-101 A 350W ATX tápegység, Retro gépekbe!
- Gamer PC - Ryzen 7 5700X / RX 9060 XT 16GB / B550 WIFI / 32GB RAM 3600Mhz / 1TB M.2 SSD / 650W GOLD
- Canon EOS M50 Mark II kit obival, 2db eredeti aksival, 1000 expoval, gyári dobozában, táskával.
- GYÖNYÖRŰ iPhone 13 mini 128GB Midnight -1 ÉV GARANCIA - Kártyafüggetlen, MS3317, 100% Akksi
- Kaspersky, BitDefender, Avast és egyéb vírusírtó licencek a legolcsóbban, egyenesen a gyártóktól!
- HIBÁTLAN iPhone 13 256GB Pink -1 ÉV GARANCIA - Kártyafüggetlen, MS3733, 91% Akkumulátor
- ÁRGARANCIA!Épített KomPhone i7 14700KF 32/64GB RAM RX 9070 16GB GAMER PC termékbeszámítással
- Navee S40 elektromos roller // Számla // Garancia //
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: NetGo.hu Kft.
Város: Gödöllő
Na mindegy, a lényeg az, hogy ez meg is érkezik a Rover-hez, mindkét érték tökéletesen megjelenik Seriallal kiíratva a gpsadat és gpsadat1-et.
ekkold

