Tartalomjegyzék:

GPS felügyelet OLED kijelzővel: 5 lépés (képekkel)
GPS felügyelet OLED kijelzővel: 5 lépés (képekkel)

Videó: GPS felügyelet OLED kijelzővel: 5 lépés (képekkel)

Videó: GPS felügyelet OLED kijelzővel: 5 lépés (képekkel)
Videó: 10 Trükk, Rejtett Dolog Androidon Amit Nem Ismersz!!! #Android Tippek# 2024, Július
Anonim
GPS monitorozás OLED kijelzőprojekt segítségével
GPS monitorozás OLED kijelzőprojekt segítségével
GPS monitorozás OLED kijelzőprojekt segítségével
GPS monitorozás OLED kijelzőprojekt segítségével
GPS monitorozás OLED kijelzőprojekt segítségével
GPS monitorozás OLED kijelzőprojekt segítségével
GPS monitorozás OLED kijelzőprojekt segítségével
GPS monitorozás OLED kijelzőprojekt segítségével

Üdv mindenkinek, ebben a gyors cikkben megosztom veletek a projektemet: ATGM332D GPS modul SAMD21J18 mikrokontrollerrel és SSD1306 OLED 128*64 kijelzővel, készítettem hozzá egy speciális NYÁK -t az Eagle Autodesk -en, és programozom Atmel studio 7.0 és ASF4 segítségével ebben a cikkben megosztom veletek ezt az utat és az általam használt fájlokat, ha érdekes, hogy egyedül végezze el.

Ha most az Arduino segítségével programozza MCU -ját/fejlesztőpaneljét, akkor ennek a projektnek viszonylag egyszerűnek kell lennie, de itt az ASF4 -et (Advanced software framework 4) fogom használni az Atmel/Microchip -től, amely C nyelven alapul, és ötletet ad Önnek a GPS NMEA üzenet olvasásához az USART aszinkron meghajtó (visszahívás) használatával, és egy egyszerű könyvtárat biztosít, amelyet bármilyen mikrovezérlővel és különböző platformokkal használhat, ha egyszerűen hozzáadja a megfelelő illesztőprogramot, amelyet az üzenet fogadásához használ GPS (NMEA üzenet).

Ezt a cikket a következőkre osztom:

  1. NYÁK -tervezés.
  2. BOM össze kell szerelni a NYÁK -t
  3. Gyors pillantás a szoftverre és magára a kódra, valamint a hardver és a szoftver tesztelése.
  4. Végül, de nem utolsósorban javítani kell ezen a projekten.

A projekthez kapcsolódó összes anyagot megtalálhatja a Githubon (itt)

1. lépés: NYÁK tervezés az Eagle segítségével

NYÁK -tervezés az Eagle segítségével
NYÁK -tervezés az Eagle segítségével
NYÁK -tervezés az Eagle segítségével
NYÁK -tervezés az Eagle segítségével
NYÁK -tervezés az Eagle segítségével
NYÁK -tervezés az Eagle segítségével
NYÁK -tervezés az Eagle segítségével
NYÁK -tervezés az Eagle segítségével

Ez a projekt elsősorban az ATGM332D GPS modulra épül, egyszerű GPS -re, mivel csak pár passzív komponensre van szüksége a működéshez, és adhatunk hozzá tartalék akkumulátort az idő/dátum megtakarítása érdekében, ha leállítjuk a modul fő áramforrását.

és az áramkör összes jelének vezérlésére az ATSAMD21J18B mikrokontrollerrel, a TQFP64 csomaggal mentem, mivel 128 KBájt programmemóriát és 32 KB adatmemóriát tartalmaz (és rengeteg van belőlük a munkapad körül).

Az áramkört 5 V USB -ről kell táplálni, az USB pedig virtuális COM -portként (CDC USB) is működhet, és hozzá lehet adni egy kódot, ha USB -n keresztül kíván kommunikálni a készülékkel.

a kijelzőhöz SSD1306 0,96 'OLED kijelzőt választottam SPI busszal, kicsi, de megfelel a kívánt NYÁK -méretnek, a kártya mérete 100x31 mm.

A mikrokontroller programozása SWD programozón keresztül történik (én Atmel ICE -t használok), és 1.27 mm -es 10p tűs fejlécen keresztül csatlakoztatja.

szintén a Fusion360 -at használtam, hogy 3D -s nézetet kapjak a táblához, és láthat hozzá renderelt képet is.

2. lépés: A NYÁK forrasztása

A NYÁK forrasztása
A NYÁK forrasztása
A NYÁK forrasztása
A NYÁK forrasztása
A NYÁK forrasztása
A NYÁK forrasztása

Lehetősége van arra, hogy sablont rendeljen a PCB -vel, könnyebb a forrasztópasztát a táblára felhelyezni a sablon használatával, én forró lemezt használtam az alkatrészek összeforrasztásához, forró levegő használata is rendben van, de legyen óvatos a LED forrasztása közben annyira érzékenyek a hőre.

Az alsó oldal forrasztása egy kicsit könnyebb, mivel csak az SWD csapfejjel és a tartalék akkumulátorral rendelkezik, amelyeket forrasztópáka segítségével forraszthat.

Mielőtt az áramkört bármilyen USB -áramforráshoz csatlakoztatná, ellenőrizze, nincs -e rövidzárlat.

Csatlakoztassa a GPS antennát, és győződjön meg róla, hogy megfelelően forrasztotta a csatlakozót, az antennát a tábla alsó oldalán rögzítettem.

3. lépés: Szoftver… Funkcionalitás… eredmények

Image
Image
Szoftver… Funkcionalitás… eredmények
Szoftver… Funkcionalitás… eredmények
Szoftver… Funkcionalitás… eredmények
Szoftver… Funkcionalitás… eredmények

A szoftver 4 részre lesz osztva:

  1. USART kommunikálni az ATGM332 GPS modullal.
  2. SPI az OLED -lel való kommunikációhoz.
  3. USB CDC.
  4. GPIO a LED -ek vezérlésére

először csatlakoztassa az USB -csatlakozót az áramkörhöz, majd csatlakoztassa a szalagkábelt az SWD -csatlakozóhoz.

Töltse le a kódot a github -ról (link itt).

A földrajzi hely megszerzéséhez 3 különböző NMEA üzenetválasztási lehetőség közül választhat:

  1. GPGGA
  2. GPRMC
  3. GPGLL

A GPRMC mondatot használtam a hely, az idő és a dátum megszerzéséhez (az idő 0,0 GMT), így a kódban megtalálhatja:

GPRMC. Enable = 1;/*0, ha nincs szükség erre az üzenetre*/

GPGGA. Enable = 0;/*0, ha nincs szükség erre az üzenetre*/

GPGLL. Enable = 0;/*0, ha nincs szükség erre az üzenetre*/

egyszerre engedélyezheti őket, és egyszerre olvashatja el a szükséges adatokat.

ha van érvényes GPRMC mondat, akkor aGPRMC. Ready 1 lesz, és megkaphatja a mondatban rendelkezésre álló összes adatot, ellenőrizze ezt a linket a mondatban elérhető adatok megtekintéséhez.

Ha a javítás „A”, akkor a hely rendelkezésre áll, ha a javítás „V”, ez azt jelenti, hogy a hely nem érhető el.

vegye figyelembe, hogy az ATSAMD21 rendelkezik belső RTC -vel, de itt nem használom, hanem az időt és a dátumot használom közvetlenül a GPS -ből, így ha nem szeretné használni a CR1220 biztonsági akkumulátort, az USB -áramforrás leválasztása után elveszíti az időt/dátumot, és az áramkör következő bekapcsolásakor a kijelzőn látható idő/dátum üres lesz, amíg a GPS -nek nincs érvényes idő/dátum értéke.

a kijelzőn megjelenik a GPS aktuális állapota, és a földrajzi hely, ha az elérhető lesz, de a kijelzőn 3 LED található:

  1. Zöld LED csatlakozik a PA06-hoz, és villogni fog, ha érvényes földrajzi helyérték van.
  2. Narancssárga LED csatlakozik a PA07-hez, és másodpercenként egyszer villog, ha nincs érvényes földrajzi hely.
  3. A piros LED a GPS -modul PPS -csatlakozójához csatlakozik, és csak akkor villog, ha érvényes jel van a helyhez kapcsolódóan.

Eredmények

Az áramkör nagyon jól működött velem, a Geo-helymeghatározás a GPS-ből 20-30 másodpercig tartott szabadban, jól láthatóan az ég felé, és az épületek között, minden probléma nélkül, még a tábla alsó oldalán lévő antennával is.

4. lépés: 3D -s nyomtatott tok… Olyasmi

3D nyomtatott tok … Egyfajta
3D nyomtatott tok … Egyfajta

Egy egyszerű tokot (pontosabb tartót) készítettem erre az áramkörre, de a COVID-19 járvány és a zárlat miatt, ahol most vagyok, nem tudtam elérni a 3D nyomtatómat, hogy kinyomtassam, ezért frissítem ezt a részt stl-vel fájlt és fényképeket a tulajdonos számára, amint elérhető.

5. lépés: Javítandó dolgok…

Javítandó dolgok…
Javítandó dolgok…
Javítandó dolgok…
Javítandó dolgok…
Javítandó dolgok…
Javítandó dolgok…
  1. Az SWD csatlakozó áthelyezése a felső oldalra, mivel könnyebben csatlakoztatható a programozóhoz.
  2. Az áramkört lítium akkumulátorról táplálva, egy jumper forrasztásával csináltam, és jól működött, szem előtt tartva, hogy a lineáris (LDO) szabályozó V -es feszültséggel rendelkezik, ha a (Vbat - Vout) kisebb, mint a Vdrop határ, az áramkör esetleg nem működik rendesen.
  3. egy kicsit nagyobbra növelve a felhasználói gombot, így könnyebb lesz megnyomni.
  4. USB CDC kód hozzáadásával kommunikálhat/tervezhet egy speciális programot MAC/PC/linux számára.
  5. A GPS antennához aktív antennát használtam ehhez a projekthez, passzív antenna használata lehetséges, alacsony zajszintű op-erősítő, például AT2659 hozzáadásával (nézze meg az ATGM332 P.14. Adatlapjának sematikáját is).
  6. az OLED 0.96 'SSD1306 esetén, a hivatalos könyvtár a mikrochipről eredetileg 128*32 kijelzőre, a kód 128*64 -re történő módosításához lépjen az ssd1306.c oldalra, és módosítsa a kódot (ellenőrizze a képet).

Ajánlott: