Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: SoftSerial MAX14690 Buffer
Fork of rtos_threading_with_callback by
gpsTask.cpp@3:d7ec6dc025b0, 2018-03-30 (annotated)
- Committer:
- lwehmeier
- Date:
- Fri Mar 30 10:32:10 2018 +0000
- Revision:
- 3:d7ec6dc025b0
implemented basic GPS read support, freed serial connection for uart jpg camera module
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
lwehmeier | 3:d7ec6dc025b0 | 1 | #include "mbed.h" |
lwehmeier | 3:d7ec6dc025b0 | 2 | #include "GPS.h" |
lwehmeier | 3:d7ec6dc025b0 | 3 | #include "rtos.h" |
lwehmeier | 3:d7ec6dc025b0 | 4 | #include "global.h" |
lwehmeier | 3:d7ec6dc025b0 | 5 | |
lwehmeier | 3:d7ec6dc025b0 | 6 | class GpsTask |
lwehmeier | 3:d7ec6dc025b0 | 7 | { |
lwehmeier | 3:d7ec6dc025b0 | 8 | public: |
lwehmeier | 3:d7ec6dc025b0 | 9 | static void run() |
lwehmeier | 3:d7ec6dc025b0 | 10 | { |
lwehmeier | 3:d7ec6dc025b0 | 11 | for (;;) { |
lwehmeier | 3:d7ec6dc025b0 | 12 | //printf("GPS task\r\n"); |
lwehmeier | 3:d7ec6dc025b0 | 13 | if(gps.sample()>2) |
lwehmeier | 3:d7ec6dc025b0 | 14 | { |
lwehmeier | 3:d7ec6dc025b0 | 15 | float lon = gps.get_dec_longitude(); |
lwehmeier | 3:d7ec6dc025b0 | 16 | printf("Sat: %u\r\n", gps.get_satelites()); |
lwehmeier | 3:d7ec6dc025b0 | 17 | printf("%3.2f\r\n", lon); |
lwehmeier | 3:d7ec6dc025b0 | 18 | } |
lwehmeier | 3:d7ec6dc025b0 | 19 | //float lon = gps.get_dec_longitude(); |
lwehmeier | 3:d7ec6dc025b0 | 20 | //printf("Sat: %u\r\n", gps.get_satelites()); |
lwehmeier | 3:d7ec6dc025b0 | 21 | //printf("%3.2f\r\n", lon); |
lwehmeier | 3:d7ec6dc025b0 | 22 | rtos::Thread::wait(250); |
lwehmeier | 3:d7ec6dc025b0 | 23 | } |
lwehmeier | 3:d7ec6dc025b0 | 24 | } |
lwehmeier | 3:d7ec6dc025b0 | 25 | GpsTask() |
lwehmeier | 3:d7ec6dc025b0 | 26 | { |
lwehmeier | 3:d7ec6dc025b0 | 27 | registerThread(GpsTask::run); |
lwehmeier | 3:d7ec6dc025b0 | 28 | //run(); |
lwehmeier | 3:d7ec6dc025b0 | 29 | } |
lwehmeier | 3:d7ec6dc025b0 | 30 | static GPS gps; |
lwehmeier | 3:d7ec6dc025b0 | 31 | }; |
lwehmeier | 3:d7ec6dc025b0 | 32 | GPS GpsTask::gps(P5_4, P5_3); |
lwehmeier | 3:d7ec6dc025b0 | 33 | |
lwehmeier | 3:d7ec6dc025b0 | 34 | // some witchcraft to register run function without touching anything outside our library |
lwehmeier | 3:d7ec6dc025b0 | 35 | static GpsTask _dummy; |