📄 plane050930v01.lst
字号:
657 0000A0 6AD1(1) b0bset ptempennage
658 0000A1 260E(1+S) decms empennagebuf
659 0000A2 80AC(2) jmp TC0INTR40
660 0000A3 62D1(1) b0bclr ptempennage
661 0000A4 6B29(1) b0bset empennagestatflag
662 0000A5 mov_ empennagelowbuf,lowcontant ;set low level 10ms
663 0000A5 2DFA(1) mov a, lowcontant
664 0000A6 1F11(1) mov empennagelowbuf, a
665 0000A7 mov_ empennagebuf,empennageloadbuf ;set high level
666 0000A7 1E10(1) mov a, empennageloadbuf
667 0000A8 1F0E(1) mov empennagebuf, a
668 0000A9 ;-----
669 0000A9 TC0INTR30:
670 0000A9 2611(1+S) decms empennagelowbuf
671 0000AA 80AC(2) jmp TC0INTR40
672 0000AB 6329(1) b0bclr empennagestatflag
673 0000AC ;-----------------------
674 0000AC TC0INTR40:
675 0000AC ;螺旋桨控制
676 0000AC 7429(1+S) b0bts0 screwstatflag
677 0000AD 80B7(2) jmp TC0INTR50
678 0000AE 68D1(1) b0bset ptscrew
679 0000AF 2612(1+S) decms screwbuf
680 0000B0 80BA(2) jmp TC0INTR60
681 0000B1 60D1(1) b0bclr ptscrew
682 0000B2 6C29(1) b0bset screwstatflag
683 0000B3 mov_ screwlowbuf,lowcontant ;set low level 10ms
684 0000B3 2DFA(1) mov a, lowcontant
685 0000B4 1F15(1) mov screwlowbuf, a
686 0000B5 mov_ screwbuf,screwloadbuf ;set high level
687 0000B5 1E14(1) mov a, screwloadbuf
688 0000B6 1F12(1) mov screwbuf, a
689 0000B7 ;-----
690 0000B7 TC0INTR50:
691 0000B7 2615(1+S) decms screwlowbuf
692 0000B8 80BA(2) jmp TC0INTR60
693 0000B9 6429(1) b0bclr screwstatflag
694 0000BA ;-----------------------
695 0000BA TC0INTR60:
696 0000BA ;摆尾控制
697 0000BA 7529(1+S) b0bts0 swingstatflag
698 0000BB 80C5(2) jmp TC0INTR70
699 0000BC 6BD1(1) b0bset ptswing
700 0000BD 2616(1+S) decms swingbuf
701 0000BE 80C8(2) jmp TC0INTR80
702 0000BF 63D1(1) b0bclr ptswing
703 0000C0 6D29(1) b0bset swingstatflag
704 0000C1 mov_ swinglowbuf,lowcontant ;set low level 10ms
705 0000C1 2DFA(1) mov a, lowcontant
706 0000C2 1F19(1) mov swinglowbuf, a
707 0000C3 mov_ swingbuf,swingloadbuf ;set high level
708 0000C3 1E18(1) mov a, swingloadbuf
709 0000C4 1F16(1) mov swingbuf, a
710 0000C5 ;-----
711 0000C5 TC0INTR70:
712 0000C5 2619(1+S) decms swinglowbuf
713 0000C6 80C8(2) jmp TC0INTR80
714 0000C7 6529(1) b0bclr swingstatflag
715 0000C8 ;-----
716 0000C8 TC0INTR80:
717 0000C8 TC0INTR90:
718 0000C8 65C8(1) b0bclr FTC0IRQ
719 0000C9 8084(2) jmp Interrupt90
720 0000CA ;--------------------------------------------------------
721 0000CA ;--------------------------------------------------------
722 0000CA t0intr:
723 0000CA 2D06(1) mov a,#6
724 0000CB 2220(1) sub a,levecount
725 0000CC 5286(1+S) bts0 fc
726 0000CD 80D0(2) jmp t0intr10
727 0000CE 4D28(1) bset errorflag
728 0000CF 80D2(2) jmp t0intr90
729 0000D0 t0intr10:
730 0000D0 1620(1+S) incms levecount
731 0000D1 0000(1) nop
732 0000D2 t0intr90:
733 0000D2 44C8(1) bclr ft0irq
734 0000D3 8084(2) jmp interrupt90
735 0000D4 ;--------------------------------------------------------
736 0000D4 ;--------------------------------------------------------
737 0000D4 P00INTR:
738 0000D4 40C8(1) bclr fp00irq
739 0000D5 47D8(1) bclr ft0enb
740 0000D6 1ED9(1) mov a,t0c
741 0000D7 58D0(1+S) bts1 singleflag
742 0000D8 80DB(2) jmp disasm100
743 0000D9 1F1F(1) mov level,a ;上升沿进入
744 0000DA 80DD(2) jmp disasm200
745 0000DB disasm100:
746 0000DB 1F1E(1) mov leveh,a ;下降沿进入
747 0000DC 80DD(2) jmp disasm200
748 0000DD disasm200:
749 0000DD 2BD9(1) clr t0c
750 0000DE 4FD8(1) bset ft0enb
751 0000DF 50D0(1+S) bts0 singleflag
752 0000E0 80ED(2) jmp disasm220
753 0000E1 80E2(2) jmp disasm210
754 0000E2 disasm210:
755 0000E2 @p00_edge 1 ;下降沿进入,设为上升沿中断
756 0000E2 2D08(1) MOV A,#00001000B
757 0000E3 2FBF(1) B0MOV PEDGE,A
758 0000E4 5728(1+S) bts0 firstflag
759 0000E5 80F8(2) jmp disasm221
760 0000E6 1E20(1) mov a,levecount
761 0000E7 5086(1+S) bts0 fz
762 0000E8 80FF(2) jmp disasm80
763 0000E9 4F28(1) bset firstflag
764 0000EA 2B20(1) clr levecount
765 0000EB 2B09(1) clr inputcount
766 0000EC 8106(2) jmp disasm90
767 0000ED disasm220:
768 0000ED @p00_edge 2 ;上升沿进入,设为下降沿中断
769 0000ED 2D10(1) MOV A,#00010000B
770 0000EE 2FBF(1) B0MOV PEDGE,A
771 0000EF 2D28(1) mov a,#40;60;56 ;448us=8x56
772 0000F0 221F(1) sub a,level
773 0000F1 5286(1+S) bts0 fc
774 0000F2 80FF(2) jmp disasm80 ;小于448us,出错
775 0000F3 2D5A(1) mov a,#90;70;75 ;600us=8x75
776 0000F4 221F(1) sub a,level
777 0000F5 5286(1+S) bts0 fc
778 0000F6 8106(2) jmp disasm90 ;小于600us,返回
779 0000F7 80FF(2) jmp disasm80 ;大于600us,出错
780 0000F8 disasm221:
781 0000F8 1609(1+S) incms inputcount
782 0000F9 0000(1) nop
783 0000FA 1E09(1) mov a,inputcount
784 0000FB 2405(1) sub a,#5
785 0000FC 5A86(1+S) bts1 fc
786 0000FD 8105(2) jmp disasm70;chksignaltable
787 0000FE 80FF(2) jmp disasm80
788 0000FF disasm80:
789 0000FF @p00_edge 2 ;出错,设为下降沿中断
790 0000FF 2D10(1) MOV A,#00010000B
791 000100 2FBF(1) B0MOV PEDGE,A
792 000101 2B09(1) clr inputcount
793 000102 2B20(1) clr levecount
794 000103 4728(1) bclr firstflag
795 000104 8106(2) jmp disasm90
796 000105 disasm70:
797 000105 4E29(1) bset chksigntableflag
798 000106 disasm90:
799 000106 P00INTR90:
800 000106 8084(2) jmp Interrupt90
801 000107 ;***********************************************
802 000107 mnint:
803 000107 5E29(1+S) bts1 chksigntableflag
804 000108 814A(2) jmp gearempennage60
805 000109 4629(1) bclr chksigntableflag
806 00010A 2B21(1) clr tablecount
807 00010B 40C9(1) bclr fp00ien
808 00010C chksignaltable: ;查询控制信号的档位
809 00010C 3401(1) b0mov y,#signaltable$m
810 00010D 339B(1) b0mov z,#signaltable$l
811 00010E 1E21(1) mov a,tablecount
812 00010F 1383(1) add z,a
813 000110 2D00(1) mov a,#0
814 000111 1184(1) adc y,a
815 000112 0D00(2) movc
816 000113 221E(1) sub a,leveh
817 000114 5286(1+S) bts0 fc
818 000115 811A(2) jmp chksignaltableend
819 000116 8117(2) jmp signaltableadd
820 000117 signaltableadd:
821 000117 1621(1+S) incms tablecount
822 000118 0000(1) nop
823 000119 810C(2) jmp chksignaltable
824 00011A chksignaltableend:
825 00011A 1E21(1) mov a,tablecount
826 00011B 5086(1+S) bts0 fz
827 00011C 8188(2) jmp mnint008 ;error
828 00011D 2415(1) sub a,#21
829 00011E 5286(1+S) bts0 fc
830 00011F 8188(2) jmp mnint008 ;error
831 000120 1E21(1) mov a,tablecount
832 000121 1417(1) add a,#23
833 000122 1F08(1) mov gearbuf,a
834 000123 1E09(1) mov a,inputcount
835 000124 @jmp_a 5
836 000124 13CE(1) add pcl, a
837 000125 818D(2) jmp mnint00
838 000126 812A(2) jmp gearwing
839 000127 813D(2) jmp gearempennage
840 000128 8162(2) jmp gearscrew
841 000129 8175(2) jmp gearswing
842 00012A ; jmp mnint00
843 00012A gearwing:
844 00012A 1E08(1) mov a,gearbuf
845 00012B 070B(1+S) cmprs a,wingbuf1
846 00012C 8139(2) jmp gearwing10
847 00012D 161A(1+S) incms samebuf1
848 00012E 0000(1) nop
849 00012F 1E1A(1) mov a,samebuf1
850 000130 2405(1) sub a,samecontant
851 000131 5A86(1+S) bts1 fc
852 000132 818D(2) jmp mnint00
853 000133 1E0B(1) mov a,wingbuf1
854 000134 1F0C(1) mov wingloadbuf,a
855 000135 1F0A(1) mov wingbuf,a
856 000136 2B1A(1) clr samebuf1
857 000137 4229(1) bclr wingstatflag
858 000138 818D(2) jmp mnint00
859 000139 gearwing10:
860 000139 1E08(1) mov a,gearbuf
861 00013A 1F0B(1) mov wingbuf1,a
862 00013B 2B1A(1) clr samebuf1
863 00013C 818D(2) jmp mnint00
864 00013D gearempennage:
865 00013D 1E08(1) mov a,gearbuf
866 00013E 070F(1+S) cmprs a,empennagebuf1
867 00013F 815F(2) jmp gearempennage10
868 000140 161B(1+S) incms samebuf2
869 000141 0000(1) nop
870 000142 1E1B(1) mov a,samebuf2
871 000143 2405(1) sub a,samecontant
872 000144 5A86(1+S) bts1 fc
873 000145 818D(2) jmp mnint00
874 000146 2B1B(1) clr samebuf2
875 000147 C06C(2) call complete
876 000148 gearempennage50:
877 000148 5828(1+S) bts1 csxenbflag
878 000149 815A(2) jmp gearempennage20
879 00014A gearempennage60:
880 00014A 5828(1+S) bts1 csxenbflag
881 00014B 818D(2) jmp mnint00
882 00014C 5F29(1+S) bts1 empenaddflag
883 00014D 8153(2) jmp gearempennage30
884 00014E 4729(1) bclr empenaddflag
885 00014F 2D21(1) mov a,equalcontant
886 000150 1224(1) add a,csxcalibratebuf
887 000151 1224(1) add a,csxcalibratebuf
888 000152 815B(2) jmp gearempennage40
889 000153
890 000153 gearempennage30:
891 000153 582A(1+S) bts1 empensubflag
892 000154 818D(2) jmp mnint00
893 000155 402A(1) bclr empensubflag
894 000156 2D21(1) mov a,equalcontant
895 000157 2224(1) sub a,csxcalibratebuf
896 000158 2224(1) sub a,csxcalibratebuf
897 000159 815B(2) jmp gearempennage40
898 00015A gearempennage20:
899 00015A 1E0F(1) mov a,empennagebuf1
900 00015B gearempennage40:
901 00015B 1F10(1) mov empennageloadbuf,a
902 00015C 1F0E(1) mov empennagebuf,a
903 00015D 4329(1) bclr empennagestatflag
904 00015E 818D(2) jmp mnint00
905 00015F gearempennage10:
906 00015F 1F0F(1) mov empennagebuf1,a
907 000160 2B1B(1) clr samebuf2
908 000161 818D(2) jmp mnint00
909 000162 gearscrew:
910 000162 1E08(1) mov a,gearbuf
911 000163 0713(1+S) cmprs a,screwbuf1
912 000164 8171(2) jmp gearscrew10
913 000165 161C(1+S) incms samebuf3
914 000166 0000(1) nop
915 000167 1E1C(1) mov a,samebuf3
916 000168 2405(1) sub a,samecontant
917 000169 5A86(1+S) bts1 fc
918 00016A 818D(2) jmp mnint00
919 00016B 1E13(1) mov a,screwbuf1
920 00016C 1F14(1) mov screwloadbuf,a
921 00016D 1F12(1) mov screwbuf,a
922 00016E 2B1C(1) clr samebuf3
923 00016F 4429(1) bclr screwstatflag
924 000170 818D(2) jmp mnint00
925 000171 gearscrew10:
926 000171 1E08(1) mov a,gearbuf
927 000172 1F13(1) mov screwbuf1,a
928 000173 2B1C(1) clr samebuf3
929 000174 818D(2) jmp mnint00
930 000175 gearswing:
931 000175 1E08(1) mov a,gearbuf
932 000176 0717(1+S) cmprs a,swingbuf1
933 000177 8184(2) jmp gearswing10
934 000178 161D(1+S) incms samebuf4
935 000179 0000(1) nop
936 00017A 1E1D(1) mov a,samebuf4
937 00017B 2405(1) sub a,samecontant
938 00017C 5A86(1+S) bts1 fc
939 00017D 818D(2) jmp mnint00
940 00017E 1E17(1) mov a,swingbuf1
941 00017F 1F18(1) mov swingloadbuf,a
942 000180 1F16(1) mov swingbuf,a
943 000181 2B1D(1) clr samebuf4
944 000182 4529(1) bclr swingstatflag
945 000183 818D(2) jmp mnint00
946 000184 gearswing10:
947 000184 1E08(1) mov a,gearbuf
948 000185 1F17(1) mov swingbuf1,a
949 000186 2B1D(1) clr samebuf4
950 000187 818D(2) jmp mnint00
951 000188 mnint008:
952 000188 @p00_edge 2 ;出错,设为下降沿中断
953 000188 2D10(1) MOV A,#00010000B
954 000189 2FBF(1) B0MOV PEDGE,A
955 00018A 2B09(1) clr inputcount
956 00018B 2B20(1) clr levecount
957 00018C 4728(1) bclr firstflag
958 00018D mnint00:
959 00018D 48C9(1) bset fp00ien
960 00018E mnint01:
961 00018E 5F27(1+S) bts1 t5msflag
962 00018F 819A(2) jmp mnint90
963 000190 4727(1) bclr t5msflag
964 000191 C203(2) call dkeychat
965 000192 mnint10:
966 000192 1623(1+S) incms timer500ms
967 000193 0000(1) nop
968 000194 1E23(1) mov a,timer500ms
969 000195 2464(1) sub a,#100
970 000196 5A86(1+S) bts1 fc
971 000197 819A(2) jmp mnint90
972 000198 2B23(1) clr timer500ms
973 000199 4E27(1) bset t500msflag
974 00019A mnint90:
975 00019A 0E00(2) ret
976 00019B ;***********************************************
977 00019B
978 00019B signaltable:
979 00019B 003A(1) dw 03ah ;0 ;1
980 00019C 0041(1) dw 041h ;1
981 00019D 0048(1) dw 048h ;2
982 00019E 004F(1) dw 04fh ;3
983 00019F 0056(1) dw 056h ;4
984 0001A0 005D(1) dw 05dh ;5
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -