Rev 480 | Rev 483 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 480 | Rev 482 | ||
---|---|---|---|
Line 61... | Line 61... | ||
61 | #include "91x_lib.h" |
61 | #include "91x_lib.h" |
62 | #include "main.h" |
62 | #include "main.h" |
63 | #include "config.h" |
63 | #include "config.h" |
64 | #include "menu.h" |
64 | #include "menu.h" |
65 | #include "GPS.h" |
65 | #include "GPS.h" |
66 | #include "i2c0.h" |
- | |
67 | #include "i2c1.h" |
66 | #include "i2c.h" |
68 | #include "uart0.h" |
67 | #include "uart0.h" |
69 | #include "uart1.h" |
68 | #include "uart1.h" |
70 | #include "uart2.h" |
69 | #include "uart2.h" |
71 | #include "timer1.h" |
70 | #include "timer1.h" |
72 | #include "timer2.h" |
71 | #include "timer2.h" |
Line 684... | Line 683... | ||
684 | //$GPGGA,191410,4735.5634,N,00739.3538,E,1,04,4.4,351.5,M,48.0,M,,*45 |
683 | //$GPGGA,191410,4735.5634,N,00739.3538,E,1,04,4.4,351.5,M,48.0,M,,*45 |
685 | //$GPGGA,092120.20,,,,,0,00,99.99,,,,,,*6C |
684 | //$GPGGA,092120.20,,,,,0,00,99.99,,,,,,*6C |
686 | //http://www.kowoma.de/gps/zusatzerklaerungen/NMEA.htm |
685 | //http://www.kowoma.de/gps/zusatzerklaerungen/NMEA.htm |
687 | void CreateNmeaGGA(void) |
686 | void CreateNmeaGGA(void) |
688 | { |
687 | { |
689 | unsigned char array[200], i = 0, crc = 0, x; |
688 | u8 array[200], i = 0, crc = 0, x; |
690 | long tmp1, tmp2; |
689 | s32 tmp1, tmp2; |
- | 690 | ||
691 | i += sprintf(array, "$GPGGA,"); |
691 | i += sprintf(array, "$GPGGA,"); |
692 | // +++++++++++++++++++++++++++++++++++++++++++ |
692 | // +++++++++++++++++++++++++++++++++++++++++++ |
693 | if(SystemTime.Valid) |
693 | if(SystemTime.Valid) |
694 | { |
694 | { |
695 | i += sprintf(&array[i], "%02d%02d%02d.%02d,",SystemTime.Hour,SystemTime.Min,SystemTime.Sec,SystemTime.mSec/10); |
695 | i += sprintf(&array[i], "%02d%02d%02d.%02d,", SystemTime.Hour, SystemTime.Min, SystemTime.Sec, SystemTime.mSec/10); |
696 | } |
696 | } |
697 | else |
697 | else |
698 | { |
698 | { |
699 | i += sprintf(&array[i], ","); |
699 | i += sprintf(&array[i], ","); |
700 | } |
700 | } |
701 | // +++++++++++++++++++++++++++++++++++++++++++ |
701 | // +++++++++++++++++++++++++++++++++++++++++++ |
702 | if(GPSData.Flags & FLAG_GPSFIXOK) |
702 | if(GPSData.Flags & FLAG_GPSFIXOK) |
703 | { |
703 | { |
704 | tmp1 = abs(GPSData.Position.Latitude)/10000000L; |
704 | tmp1 = abs(GPSData.Position.Latitude)/10000000L; |
705 | i += sprintf(&array[i],"%02d",(int)tmp1); |
705 | i += sprintf(&array[i],"%02d",(s16)tmp1); |
706 | 706 | ||
707 | tmp1 = abs(GPSData.Position.Latitude)%10000000L; |
707 | tmp1 = abs(GPSData.Position.Latitude)%10000000L; |
708 | tmp1 *= 6; // in Minuten |
708 | tmp1 *= 6; // in Minuten |
709 | tmp2 = tmp1 / 1000000L; |
709 | tmp2 = tmp1 / 1000000L; |
710 | i += sprintf(&array[i],"%02d",(int)tmp2); |
710 | i += sprintf(&array[i],"%02d", (s16)tmp2); |
711 | tmp2 = tmp1 % 1000000L; |
711 | tmp2 = tmp1 % 1000000L; |
712 | tmp2 /= 10; // eine Stelle zu viel |
712 | tmp2 /= 10; // eine Stelle zu viel |
713 | i += sprintf(&array[i],".%05d,",(int)tmp2); |
713 | i += sprintf(&array[i],".%05d,", (s16)tmp2); |
714 | 714 | ||
715 | if(GPSData.Position.Latitude >= 0) i += sprintf(&array[i],"N,"); |
715 | if(GPSData.Position.Latitude >= 0) i += sprintf(&array[i],"N,"); |
716 | else i += sprintf(&array[i],"S,"); |
716 | else i += sprintf(&array[i],"S,"); |
717 | // +++++++++++++++++++++++++++++++++++++++++++ |
717 | // +++++++++++++++++++++++++++++++++++++++++++ |
718 | 718 | ||
719 | tmp1 = abs(GPSData.Position.Longitude)/10000000L; |
719 | tmp1 = abs(GPSData.Position.Longitude)/10000000L; |
720 | i += sprintf(&array[i],"%03d",(int)tmp1); |
720 | i += sprintf(&array[i],"%03d", (s16)tmp1); |
721 | 721 | ||
722 | tmp1 = abs(GPSData.Position.Longitude)%10000000L; |
722 | tmp1 = abs(GPSData.Position.Longitude)%10000000L; |
723 | tmp1 *= 6; // in Minuten |
723 | tmp1 *= 6; // in Minuten |
724 | tmp2 = tmp1 / 1000000L; |
724 | tmp2 = tmp1 / 1000000L; |
725 | i += sprintf(&array[i],"%02d",(int)tmp2); |
725 | i += sprintf(&array[i],"%02d", (s16)tmp2); |
726 | tmp2 = tmp1 % 1000000L; |
726 | tmp2 = tmp1 % 1000000L; |
727 | tmp2 /= 10; // eine Stelle zu viel |
727 | tmp2 /= 10; // eine Stelle zu viel |
728 | i += sprintf(&array[i],".%05d,",(int)tmp2); |
728 | i += sprintf(&array[i],".%05d,", (s16)tmp2); |
729 | 729 | ||
730 | 730 | ||
731 | if(GPSData.Position.Longitude >= 0) i += sprintf(&array[i],"E,"); |
731 | if(GPSData.Position.Longitude >= 0) i += sprintf(&array[i],"E,"); |
732 | else i += sprintf(&array[i],"W,"); |
732 | else i += sprintf(&array[i],"W,"); |
733 | i += sprintf(&array[i],"%d,",GPSData.SatFix); |
733 | i += sprintf(&array[i],"%d,",GPSData.SatFix); |
734 | i += sprintf(&array[i],"%d,",GPSData.NumOfSats); |
734 | i += sprintf(&array[i],"%d,",GPSData.NumOfSats); |
735 | i += sprintf(&array[i],"%d.%d,",GPSData.Position_Accuracy/100,abs(GPSData.Position_Accuracy%100)); |
735 | i += sprintf(&array[i],"%d.%d,",(s16)(GPSData.Position_Accuracy/100),abs(GPSData.Position_Accuracy%100)); |
736 | // i += sprintf(&array[i],"%d.%d,M,",GPSData.Position.Altitude/1000,abs(GPSData.Position.Altitude%1000)/100); |
736 | // i += sprintf(&array[i],"%d.%d,M,",GPSData.Position.Altitude/1000,abs(GPSData.Position.Altitude%1000)/100); |
737 | tmp1 = NaviData.Altimeter / 2; // in dm |
737 | tmp1 = NaviData.Altimeter / 2; // in dm |
738 | i += sprintf(&array[i],"%d.%d,M,",tmp1 / 10,abs(tmp1 % 10)); |
738 | i += sprintf(&array[i],"%d.%d,M,",(s16)tmp1 / 10,abs((s16)tmp1 % 10)); |
739 | i += sprintf(&array[i],",,,*"); |
739 | i += sprintf(&array[i],",,,*"); |
740 | } |
740 | } |
741 | else |
741 | else |
742 | { |
742 | { |
743 | i += sprintf(&array[i], ",,,,%d,00,99.99,,,,,,*",GPSData.NumOfSats); |
743 | i += sprintf(&array[i], ",,,,%d,00,99.99,,,,,,*",GPSData.NumOfSats); |
744 | } |
744 | } |
745 | for(x=1; x<i-1; x++) |
745 | for(x = 1; x < i-1; x++) |
746 | { |
746 | { |
747 | crc ^= array[x]; |
747 | crc ^= array[x]; |
748 | } |
748 | } |
749 | i += sprintf(&array[i], "%02x%c%c",crc,0x0d,0x0a); |
749 | i += sprintf(&array[i], "%02x%c%c",crc,0x0d,0x0a); |
750 | AddSerialData(&UART1_tx_buffer,array,i); |
750 | AddSerialData(&UART1_tx_buffer,array,i); |
Line 751... | Line 751... | ||
751 | 751 | ||
752 | // +++++++++++++++++++++++++++++++++++++++++++ |
752 | // +++++++++++++++++++++++++++++++++++++++++++ |
Line 753... | Line 753... | ||
753 | } |
753 | } |
754 | 754 | ||
Line 755... | Line 755... | ||
755 | //$GPRMC,162614.123,A,5230.5900,N,01322.3900,E,10.0,90.0,131006,1.2,E,A*13 |
755 | //$GPRMC,162614.123,A,5230.5900,N,01322.3900,E,10.0,90.0,131006,1.2,E,A*13 |
756 | //$GPRMC,HHMMSS.sss,A,BBBB.BBBB,b,LLLLL.LLLL,l,GG.G,RR.R,DDMMYY,M.M,m,F*PP |
756 | //$GPRMC,HHMMSS.sss,A,BBBB.BBBB,b,LLLLL.LLLL,l,GG.G,RR.R,DDMMYY,M.M,m,F*PP |
757 | 757 | ||
758 | void CreateNmeaRMC(void) |
758 | void CreateNmeaRMC(void) |
759 | { |
759 | { |
760 | unsigned char array[200], i = 0, crc = 0, x; |
760 | u8 array[200], i = 0, crc = 0, x; |
761 | int tmp_int; |
761 | s16 tmp_int; |
762 | long tmp1, tmp2; |
762 | s32 tmp1, tmp2; |
763 | // +++++++++++++++++++++++++++++++++++++++++++ |
763 | // +++++++++++++++++++++++++++++++++++++++++++ |
764 | i += sprintf(array, "$GPRMC,"); |
764 | i += sprintf(array, "$GPRMC,"); |
765 | // +++++++++++++++++++++++++++++++++++++++++++ |
765 | // +++++++++++++++++++++++++++++++++++++++++++ |
766 | if(SystemTime.Valid) |
766 | if(SystemTime.Valid) |
767 | { |
767 | { |
768 | i += sprintf(&array[i], "%02d%02d%02d.%03d,",SystemTime.Hour,SystemTime.Min,SystemTime.Sec,SystemTime.mSec); |
768 | i += sprintf(&array[i], "%02d%02d%02d.%03d,", SystemTime.Hour, SystemTime.Min, SystemTime.Sec, SystemTime.mSec); |
769 | } |
769 | } |
770 | else |
770 | else |
771 | { |
771 | { |
772 | i += sprintf(&array[i], ","); |
772 | i += sprintf(&array[i], ","); |
773 | } |
773 | } |
774 | if(GPSData.Flags & FLAG_GPSFIXOK) |
774 | if(GPSData.Flags & FLAG_GPSFIXOK) |
775 | { |
775 | { |
776 | // +++++++++++++++++++++++++++++++++++++++++++ |
776 | // +++++++++++++++++++++++++++++++++++++++++++ |
777 | tmp1 = abs(GPSData.Position.Latitude)/10000000L; |
777 | tmp1 = abs(GPSData.Position.Latitude)/10000000L; |
778 | i += sprintf(&array[i],"A,%02d",(int)tmp1); // Status: A = Okay V = Warnung |
778 | i += sprintf(&array[i],"A,%02d", (s16)tmp1); // Status: A = Okay V = Warnung |
779 | 779 | ||
780 | tmp1 = abs(GPSData.Position.Latitude)%10000000L; |
780 | tmp1 = abs(GPSData.Position.Latitude)%10000000L; |
781 | tmp1 *= 6; // in Minuten |
781 | tmp1 *= 6; // in Minuten |
782 | tmp2 = tmp1 / 1000000L; |
782 | tmp2 = tmp1 / 1000000L; |
783 | i += sprintf(&array[i],"%02d",(int)tmp2); |
783 | i += sprintf(&array[i],"%02d", (s16)tmp2); |
784 | tmp2 = tmp1 % 1000000L; |
784 | tmp2 = tmp1 % 1000000L; |
785 | tmp2 /= 10; // eine Stelle zu viel |
785 | tmp2 /= 10; // eine Stelle zu viel |
786 | i += sprintf(&array[i],".%05d,",(int)tmp2); |
786 | i += sprintf(&array[i],".%05d,", (s16)tmp2); |
787 | if(GPSData.Position.Latitude >= 0) i += sprintf(&array[i],"N,"); |
787 | if(GPSData.Position.Latitude >= 0) i += sprintf(&array[i],"N,"); |
788 | else i += sprintf(&array[i],"S,"); |
788 | else i += sprintf(&array[i],"S,"); |
789 | // +++++++++++++++++++++++++++++++++++++++++++ |
789 | // +++++++++++++++++++++++++++++++++++++++++++ |
790 | tmp1 = abs(GPSData.Position.Longitude)/10000000L; |
790 | tmp1 = abs(GPSData.Position.Longitude)/10000000L; |
791 | i += sprintf(&array[i],"%03d",(int)tmp1); |
791 | i += sprintf(&array[i],"%03d", (s16)tmp1); |
792 | 792 | ||
793 | tmp1 = abs(GPSData.Position.Longitude)%10000000L; |
793 | tmp1 = abs(GPSData.Position.Longitude)%10000000L; |
794 | tmp1 *= 6; // in Minuten |
794 | tmp1 *= 6; // in Minuten |
795 | tmp2 = tmp1 / 1000000L; |
795 | tmp2 = tmp1 / 1000000L; |
796 | i += sprintf(&array[i],"%02d",(int)tmp2); |
796 | i += sprintf(&array[i],"%02d", (s16)tmp2); |
797 | tmp2 = tmp1 % 1000000L; |
797 | tmp2 = tmp1 % 1000000L; |
798 | tmp2 /= 10; // eine Stelle zu viel |
798 | tmp2 /= 10; // eine Stelle zu viel |
799 | i += sprintf(&array[i],".%05d,",(int)tmp2); |
799 | i += sprintf(&array[i],".%05d,", (s16)tmp2); |
800 | if(GPSData.Position.Longitude >= 0) i += sprintf(&array[i],"E,"); |
800 | if(GPSData.Position.Longitude >= 0) i += sprintf(&array[i],"E,"); |
801 | else i += sprintf(&array[i],"W,"); |
801 | else i += sprintf(&array[i],"W,"); |
802 | // +++++++++++++++++++++++++++++++++++++++++++ |
802 | // +++++++++++++++++++++++++++++++++++++++++++ |
803 | tmp_int = GPSData.Speed_Ground; // in cm/sek |
803 | tmp_int = GPSData.Speed_Ground; // in cm/sek |
804 | tmp_int *= 90; |
804 | tmp_int *= 90; |
805 | tmp_int /= 463; |
805 | tmp_int /= 463; |
806 | i += sprintf(&array[i],"%02d.%d,",tmp_int/10,tmp_int%10); // in Knoten |
806 | i += sprintf(&array[i],"%02d.%d,",tmp_int/10,tmp_int%10); // in Knoten |
807 | // +++++++++++++++++++++++++++++++++++++++++++ |
807 | // +++++++++++++++++++++++++++++++++++++++++++ |
808 | i += sprintf(&array[i],"%03d.%d,",GyroCompassCorrected/10,GyroCompassCorrected%10); |
808 | i += sprintf(&array[i],"%03d.%d,",GyroCompassCorrected/10,GyroCompassCorrected%10); |
809 | // +++++++++++++++++++++++++++++++++++++++++++ |
809 | // +++++++++++++++++++++++++++++++++++++++++++ |
810 | if(SystemTime.Valid) |
810 | if(SystemTime.Valid) |
811 | { |
811 | { |
812 | i += sprintf(&array[i], "%02d%02d%02d,",SystemTime.Day,SystemTime.Month,SystemTime.Year); |
812 | i += sprintf(&array[i], "%02d%02d%02d,",SystemTime.Day,SystemTime.Month,SystemTime.Year); |
813 | } |
813 | } |
814 | else |
814 | else |
815 | { |
815 | { |
816 | i += sprintf(&array[i], ","); |
816 | i += sprintf(&array[i], ","); |
817 | } |
817 | } |
818 | // +++++++++++++++++++++++++++++++++++++++++++ |
818 | // +++++++++++++++++++++++++++++++++++++++++++ |
819 | i += sprintf(&array[i],"%d.%1d,", abs(GeoMagDec)/10,abs(GeoMagDec)%10); |
819 | i += sprintf(&array[i],"%d.%1d,", abs(GeoMagDec)/10,abs(GeoMagDec)%10); |
820 | if(GeoMagDec < 0) i += sprintf(&array[i], "W,"); else i += sprintf(&array[i], "E,"); |
820 | if(GeoMagDec < 0) i += sprintf(&array[i], "W,"); else i += sprintf(&array[i], "E,"); |
821 | // +++++++++++++++++++++++++++++++++++++++++++ |
821 | // +++++++++++++++++++++++++++++++++++++++++++ |
822 | if(GPSData.Flags & FLAG_DIFFSOLN) i += sprintf(&array[i], "D,"); |
822 | if(GPSData.Flags & FLAG_DIFFSOLN) i += sprintf(&array[i], "D,"); |
823 | else i += sprintf(&array[i], "A,"); |
823 | else i += sprintf(&array[i], "A,"); |
824 | } |
824 | } |
825 | else // kein Satfix |
825 | else // kein Satfix |
826 | { |
826 | { |
827 | i += sprintf(&array[i], "V,,,,,,,,,,N*"); |
827 | i += sprintf(&array[i], "V,,,,,,,,,,N*"); |
828 | } |
828 | } |
829 | // +++++++++++++++++++++++++++++++++++++++++++ |
829 | // +++++++++++++++++++++++++++++++++++++++++++ |
830 | // CRC |
830 | // CRC |
831 | // +++++++++++++++++++++++++++++++++++++++++++ |
831 | // +++++++++++++++++++++++++++++++++++++++++++ |
832 | for(x=1; x<i-1; x++) |
832 | for(x=1; x<i-1; x++) |
833 | { |
833 | { |
834 | crc ^= array[x]; |
834 | crc ^= array[x]; |
835 | } |
835 | } |
836 | i += sprintf(&array[i], "%02x%c%c",crc,0x0d,0x0a); |
836 | i += sprintf(&array[i], "%02x%c%c",crc,0x0d,0x0a); |
837 | // +++++++++++++++++++++++++++++++++++++++++++ |
837 | // +++++++++++++++++++++++++++++++++++++++++++ |
Line 838... | Line 838... | ||
838 | AddSerialData(&UART1_tx_buffer,array,i); |
838 | AddSerialData(&UART1_tx_buffer,array,i); |
839 | // +++++++++++++++++++++++++++++++++++++++++++ |
839 | // +++++++++++++++++++++++++++++++++++++++++++ |
840 | /* |
840 | /* |
841 | |
841 | |
842 | |
842 | |
843 | 843 | ||
844 | GPSData.Flags = (GPSData.Flags & 0xf0) | (UbxSol.Flags & 0x0f); // we take only the lower bits |
844 | GPSData.Flags = (GPSData.Flags & 0xf0) | (UbxSol.Flags & 0x0f); // we take only the lower bits |
845 | GPSData.NumOfSats = UbxSol.numSV; |
845 | GPSData.NumOfSats = UbxSol.numSV; |
846 | GPSData.SatFix = UbxSol.GPSfix; |
846 | GPSData.SatFix = UbxSol.GPSfix; |
847 | GPSData.Position_Accuracy = UbxSol.PAcc; |
847 | GPSData.Position_Accuracy = UbxSol.PAcc; |
848 | GPSData.Speed_Accuracy = UbxSol.SAcc; |
848 | GPSData.Speed_Accuracy = UbxSol.SAcc; |
849 | SetGPSTime(&SystemTime); // update system time |
849 | SetGPSTime(&SystemTime); // update system time |
850 | // NAV POSLLH |
850 | // NAV POSLLH |
851 | GPSData.Position.Status = INVALID; |
851 | GPSData.Position.Status = INVALID; |
852 | GPSData.Position.Longitude = UbxPosLlh.LON; |
852 | GPSData.Position.Longitude = UbxPosLlh.LON; |
853 | GPSData.Position.Latitude = UbxPosLlh.LAT; |
853 | GPSData.Position.Latitude = UbxPosLlh.LAT; |
854 | GPSData.Position.Altitude = UbxPosLlh.HMSL; |
854 | GPSData.Position.Altitude = UbxPosLlh.HMSL; |
855 | GPSData.Position.Status = NEWDATA; |
855 | GPSData.Position.Status = NEWDATA; |
856 | // NAV VELNED |
856 | // NAV VELNED |
857 | GPSData.Speed_East = UbxVelNed.VEL_E; |
857 | GPSData.Speed_East = UbxVelNed.VEL_E; |
858 | GPSData.Speed_North = UbxVelNed.VEL_N; |
858 | GPSData.Speed_North = UbxVelNed.VEL_N; |
859 | GPSData.Speed_Top = -UbxVelNed.VEL_D; |
859 | GPSData.Speed_Top = -UbxVelNed.VEL_D; |
860 | GPSData.Speed_Ground = UbxVelNed.GSpeed; |
860 | GPSData.Speed_Ground = UbxVelNed.GSpeed; |
861 | GPSData.Heading = UbxVelNed.Heading; |
861 | GPSData.Heading = UbxVelNed.Heading; |
862 | SystemTime.Year = 0; |
862 | SystemTime.Year = 0; |
863 | SystemTime.Month = 0; |
863 | SystemTime.Month = 0; |
Line 864... | Line 864... | ||
864 | SystemTime.Day = 0; |
864 | SystemTime.Day = 0; |
865 | SystemTime.Hour = 0; |
865 | SystemTime.Hour = 0; |
866 | SystemTime.Min = 0; |
866 | SystemTime.Min = 0; |
867 | SystemTime.Sec = 0; |
867 | SystemTime.Sec = 0; |
868 | SystemTime.mSec = 0; |
868 | SystemTime.mSec = 0; |
Line 869... | Line 869... | ||
869 | SystemTime.Valid = 0; |
869 | SystemTime.Valid = 0; |
870 | |
870 | |
871 | FromFlightCtrl.GyroHeading / 10;//NaviData.HomePositionDeviation.Bearing / 2; |
871 | FromFlightCtrl.GyroHeading / 10;//NaviData.HomePositionDeviation.Bearing / 2; |
872 | if(GPSData.Position.Latitude < 0) ToFlightCtrl.Param.Byte[5] = 1; // 1 = S |
872 | if(GPSData.Position.Latitude < 0) ToFlightCtrl.Param.Byte[5] = 1; // 1 = S |
873 | else ToFlightCtrl.Param.Byte[5] = 0; // 1 = S |
873 | else ToFlightCtrl.Param.Byte[5] = 0; // 1 = S |
874 | i1 = abs(GPSData.Position.Latitude)/10000000L; |
874 | i1 = abs(GPSData.Position.Latitude)/10000000L; |
875 | i2 = abs(GPSData.Position.Latitude)%10000000L; |
875 | i2 = abs(GPSData.Position.Latitude)%10000000L; |
876 | 876 | ||
877 | 877 | ||
878 | 878 | ||
879 | if(!(NCFlags & NC_FLAG_GPS_OK)) {i1 = 0; i2 = 0;} |
879 | if(!(NCFlags & NC_FLAG_GPS_OK)) {i1 = 0; i2 = 0;} |
880 | i1 *= 100; |
880 | i1 *= 100; |
881 | i1 += i2 / 100000; |
881 | i1 += i2 / 100000; |
882 | i2 = i2 % 100000; |
882 | i2 = i2 % 100000; |
883 | i2 /= 10; |
883 | i2 /= 10; |
884 | ToFlightCtrl.Param.Byte[6] = i1 % 256; |
884 | ToFlightCtrl.Param.Byte[6] = i1 % 256; |
885 | ToFlightCtrl.Param.Byte[7] = i1 / 256; |
885 | ToFlightCtrl.Param.Byte[7] = i1 / 256; |
886 | ToFlightCtrl.Param.Byte[8] = i2 % 256; |
886 | ToFlightCtrl.Param.Byte[8] = i2 % 256; |
887 | ToFlightCtrl.Param.Byte[9] = i2 / 256; |
887 | ToFlightCtrl.Param.Byte[9] = i2 / 256; |
Line 888... | Line 888... | ||
888 | break; |
888 | break; |
889 | case 1: |
889 | case 1: |