2024-07-31 23:37:51 +08:00
|
|
|
import 'package:flutter/widgets.dart';
|
2024-07-31 19:04:11 +08:00
|
|
|
import 'package:get/get.dart';
|
|
|
|
import 'package:gnss/gnss.dart';
|
|
|
|
|
|
|
|
class GnssController extends GetxController {
|
2024-07-31 23:37:51 +08:00
|
|
|
late final Gnss gnss;
|
2024-07-31 19:04:11 +08:00
|
|
|
LocationData? locationData;
|
|
|
|
SignalData? signalData;
|
|
|
|
var locationUpdate = 0.obs;
|
|
|
|
|
|
|
|
var singnalUpdate = 0.obs;
|
2024-07-31 23:37:51 +08:00
|
|
|
|
|
|
|
// Map<String, bool> selectedSignal = {
|
|
|
|
// "GPS": true,
|
|
|
|
// "GLONASS": true,
|
|
|
|
// "GALILEO": true,
|
|
|
|
// "BEIDOU": true,
|
|
|
|
// "QZSS": true,
|
|
|
|
// "SBAS": true,
|
|
|
|
// }.obs;
|
2024-08-01 14:08:34 +08:00
|
|
|
final selectedSignal = <bool>[false, false, false, false, false].obs; //天空图
|
|
|
|
final QselectedSignal = <bool>[false, false, false, false, false].obs; //信号质量
|
2024-07-31 19:04:11 +08:00
|
|
|
|
|
|
|
@override
|
|
|
|
void onInit() async {
|
|
|
|
super.onInit();
|
2024-08-01 14:08:34 +08:00
|
|
|
gnss = Gnss(port: "/dev/ttysWK2", baudrate: 115200);
|
|
|
|
// gnss = Gnss(port: "COM1", baudrate: 115200);
|
2024-07-31 19:04:11 +08:00
|
|
|
gnss.start();
|
|
|
|
gnss.locationStream.listen((location) {
|
|
|
|
locationData = location;
|
|
|
|
locationUpdate++;
|
|
|
|
});
|
|
|
|
gnss.signalStream.listen((singnal) {
|
|
|
|
signalData = singnal;
|
|
|
|
singnalUpdate++;
|
|
|
|
});
|
|
|
|
}
|
|
|
|
|
|
|
|
@override
|
|
|
|
void dispose() {
|
|
|
|
gnss.dispose();
|
|
|
|
super.dispose();
|
|
|
|
}
|
|
|
|
}
|