📄 7102atest.lst
字号:
683 000123 6E22(1) b0bset f_s_ok
684 000124
685 000124 main_S_10: ;rx
686 000124 C273(2) CALL SUB_RX_EN
687 000125 7A22(1+S) b0bts1 f_key_2
688 000126 8128(2) jmp $+2
689 000127 805C(2) jmp main_master
690 000128 73D5(1+S) B0BTS0 IRQ
691 000129 8125(2) JMP $-4
692 00012A 6D22(1) B0BSET f_key2
693 00012B C2C3(2) CALL SUB_RX_PACKET
694 00012C 2D08(1) mov a,#00001000b
695 00012D 1CD1(1) xor p1,a
696 00012E 0000(1) nop
697 00012F ; MOV A,DATA2
698 00012F ; CMPRS A,#0X38
699 00012F ; JMP main
700 00012F C2E4(2) CALL SUB_standby
701 000130 C240(2) call SUB_WRITE_FIFO
702 000131 C285(2) CALL SUB_TX_EN
703 000132 73D5(1+S) B0BTS0 IRQ
704 000133 8132(2) JMP $-1
705 000134 2D04(1) mov a,#00000100b
706 000135 1CD1(1) xor p1,a
707 000136 0000(1) nop
708 000137 8057(2) jmp main
709 000138
710 000138
711 000138
712 000138 INCLUDE SUB.asm
713 000138
714 000138
715 000138 ;-------------------------------------------------------------------------------
716 000138 ; ClrRAM
717 000138 ; Use index @YZ to clear RAM (00h~2Fh)
718 000138 ;-------------------------------------------------------------------------------
719 000138
720 000138 ClrRAM:
721 000138
722 000138 2B84(1) CLR Y
723 000139 2D7F(1) mov A, #7fH
724 00013A 2F83(1) b0mov Z, A ;Set @YZ address from 7fh
725 00013B
726 00013B
727 00013B ClrRAM10:
728 00013B 2BE7(1) clr @YZ ;Clear @YZ content
729 00013C 2683(1+S) decms Z ;z = z - 1 , skip next if z=0
730 00013D 813B(2) jmp ClrRAM10
731 00013E 2BE7(1) clr @YZ ;Clear address $00
732 00013F
733 00013F 0E00(2) ret
734 000140
735 000140 ;-------------------------------------------------------------------------------
736 000140 ; SysInit
737 000140 ; System initial to define Register, RAM, I/O, Timer......
738 000140 ;-------------------------------------------------------------------------------
739 000140 SysInit:
740 000140
741 000140 2DFF(1) MOV A,#0FFH
742 000141 1FE0(1) MOV P0UR,A
743 000142 1FE5(1) MOV P5UR,A
744 000143 1FE1(1) MOV P1UR,A
745 000144 2D00(1) MOV A,#00000000B
746 000145 1FB8(1) MOV P0M,A
747 000146 2D0C(1) MOV A,#00001100B
748 000147 1FC1(1) MOV P1M,A
749 000148 2D00(1) MOV A,#00000000B
750 000149 1FC5(1) MOV P5M,A
751 00014A T0_INIT:
752 00014A 64C9(1) B0BCLR FT0IEN ; Disable T0 interrupt service
753 00014B 67D8(1) B0BCLR FT0ENB ; Disable T0 timer
754 00014C 2D00(1) MOV A, #00H
755 00014D 2FD8(1) B0MOV T0M, A
756 00014E 2DF0(1) MOV A, #0xf0
757 00014F 2FD9(1) B0MOV T0C, A ; Set T0 interval = 1ms
758 000150 6CC9(1) B0BSET FT0IEN ; Enable T0 interrupt service
759 000151 64C8(1) B0BCLR FT0IRQ ; Clear T0 interrupt request flag
760 000152 6FD8(1) B0BSET FT0ENB ; Enable T0 timer
761 000153
762 000153
763 000153 Tc0_INIT:
764 000153 65C9(1) B0BCLR FTc0IEN ; Disable T0 interrupt service
765 000154 67DA(1) B0BCLR FTc0ENB ; Disable T0 timer
766 000155 2D00(1) MOV A, #00H
767 000156 2FDA(1) B0MOV Tc0M, A
768 000157 2DF0(1) MOV A,#0F0H
769 000158 2FDB(1) B0MOV Tc0C, A ; Set T0 interval = 1ms
770 000159 6DC9(1) B0BSET FTc0IEN ; Enable T0 interrupt service
771 00015A 65C8(1) B0BCLR FTc0IRQ ; Clear T0 interrupt request flag
772 00015B 6FDA(1) B0BSET FTc0ENB ; Enable T0 timer
773 00015C
774 00015C
775 00015C
776 00015C
777 00015C
778 00015C 0E00(2) RET
779 00015D
780 00015D ;-------------------------------------
781 00015D ;DELAY 2US
782 00015D ;-------------------------------------
783 00015D DELAY2US:
784 00015D 815E(2) JMP $+1
785 00015E 815F(2) JMP $+1
786 00015F DELAY1US:
787 00015F 8160(2) jmp $+1
788 000160 8161(2) JMP $+1
789 000161 0E00(2) RET
790 000162 ;-------------------------------------
791 000162 ;DELAY 1MS
792 000162 ;-------------------------------------
793 000162 DELAY_MS:
794 000162 1F01(1) MOV TIME_MS,A
795 000163 DELAY1m:
796 000163 2DFA(1) MOV A,#250
797 000164 1F00(1) MOV TIME_250US,A
798 000165 8166(2) jmp $+1
799 000166 8167(2) JMP $+1
800 000167 8168(2) JMP $+1
801 000168 8169(2) jmp $+1
802 000169 816A(2) JMP $+1
803 00016A 816B(2) JMP $+1
804 00016B 816C(2) jmp $+1
805 00016C 2600(1+S) DECMS TIME_250US
806 00016D 8165(2) JMP $-8
807 00016E 2601(1+S) DECMS TIME_MS
808 00016F 8163(2) JMP DELAY1m
809 000170 0E00(2) RET
810 000171
811 000171
812 000171
813 000171
814 000171
815 000171 ;-------------------------------------
816 000171 ;8BITE WRITE
817 000171 ;-------------------------------------
818 000171 SUB_BYTE_SEND:
819 000171
820 000171 69C1(1) B0BSET SDIO_M
821 000172
822 000172 8173(2) jmp $+1
823 000173 8174(2) jmp $+1
824 000174 8175(2) jmp $+1
825 000175 8176(2) jmp $+1
826 000176 2B02(1) clr TEMP_WRITE
827 000177 1F02(1) MOV TEMP_WRITE,A ;数据入BUF
828 000178 2D08(1) MOV A,#8
829 000179 1F0C(1) MOV Bt_Cont,A ;8 Bit 计数
830 00017A SUB_BYTE_SEND_10:
831 00017A 4286(1) BCLR FC
832 00017B 0B02(1) RLCM TEMP_WRITE ;循环左移8 Bit
833 00017C 5286(1+S) BTS0 FC
834 00017D 49D1(1) BSET SDIO ;Set SDA
835 00017E 5A86(1+S) BTS1 FC
836 00017F 41D1(1) BCLR SDIO ;Clear SDA
837 000180 8181(2) jmp $+1
838 000181 49D5(1) BSET SCK
839 000182 8183(2) jmp $+1
840 000183 8184(2) jmp $+1
841 000184 8185(2) jmp $+1
842 000185 8186(2) jmp $+1
843 000186 0000(1) nop
844 000187 41D5(1) BCLR SCK
845 000188 260C(1+S) DECMS Bt_Cont
846 000189 817A(2) JMP SUB_BYTE_SEND_10
847 00018A SUB_BYTE_SEND_90:
848 00018A 0E00(2) RET
849 00018B
850 00018B
851 00018B
852 00018B ;-------------------------------------
853 00018B ;8BITE READ
854 00018B ;-------------------------------------
855 00018B SUB_BYTE_READ:
856 00018B
857 00018B 61C1(1) B0BCLR SDIO_M
858 00018C 818D(2) jmp $+1
859 00018D 818E(2) jmp $+1
860 00018E 818F(2) jmp $+1
861 00018F 8190(2) jmp $+1
862 000190
863 000190 SUB_BYTE_READ_00:
864 000190
865 000190 2B03(1) CLR TEMP_READ
866 000191 2D08(1) MOV A,#08
867 000192 1F0C(1) MOV BT_CONT,A
868 000193 SUB_BYTE_READ_10:
869 000193 4286(1) BCLR FC
870 000194 59D1(1+S) BTS1 SDIO ;Read SDA
871 000195 4286(1) BCLR FC
872 000196 51D1(1+S) BTS0 SDIO
873 000197 4A86(1) BSET FC
874 000198 0B03(1) RLCM TEMP_READ ;Left Shift 8 Bit
875 000199 819A(2) jmp $+1
876 00019A
877 00019A 69D5(1) b0bset sck
878 00019B 819C(2) jmp $+1
879 00019C 819D(2) jmp $+1
880 00019D 819E(2) jmp $+1
881 00019E 819F(2) jmp $+1
882 00019F 0000(1) nop
883 0001A0 61D5(1) B0BCLR SCK
884 0001A1
885 0001A1 260C(1+S) DECMS Bt_Cont
886 0001A2 8193(2) JMP SUB_BYTE_READ_10
887 0001A3 RD24C08_90:
888 0001A3 0E00(2) RET
889 0001A4
890 0001A4
891 0001A4
892 0001A4 ;-------------------------------------
893 0001A4 ;7102A WRITE REG
894 0001A4 ;-------------------------------------
895 0001A4 SUB_WRITE_REG:
896 0001A4 69C1(1) B0BSET SDIO_M
897 0001A5 1E0D(1) mov a,address
898 0001A6 1A00(1) OR A,CMD_CTRLW
899 0001A7 C171(2) call SUB_BYTE_SEND
900 0001A8 SUB_16BITE:
901 0001A8 1E0E(1) MOV A,DATA_M ;HI8 BITE IN BUF
902 0001A9 C171(2) call SUB_BYTE_SEND
903 0001AA 1E0F(1) MOV A,DATA_L
904 0001AB C171(2) call SUB_BYTE_SEND
905 0001AC
906 0001AC
907 0001AC 0E00(2) RET
908 0001AD
909 0001AD ;-------------------------------------
910 0001AD ;7102A READ REG
911 0001AD ;-------------------------------------
912 0001AD SUB_READ_REG:
913 0001AD 1E0D(1) mov a,address
914 0001AE 1A80(1) OR A,CMD_CTRLR
915 0001AF C171(2) CALL SUB_BYTE_SEND
916 0001B0 2B0E(1) CLR DATA_M
917 0001B1 2B0F(1) CLR DATA_L
918 0001B2 0000(1) NOP
919 0001B3 61C1(1) B0BCLR SDIO_M
920 0001B4 C190(2) CALL SUB_BYTE_READ_00
921 0001B5 1E03(1) MOV A,TEMP_READ
922 0001B6 1F0E(1) MOV DATA_M,A
923 0001B7 C190(2) CALL SUB_BYTE_READ_00
924 0001B8 1E03(1) MOV A,TEMP_READ
925 0001B9 1F0F(1) MOV DATA_L,A
926 0001BA
927 0001BA 69D5(1) b0bset sck
928 0001BB 81BC(2) jmp $+1
929 0001BC 81BD(2) jmp $+1
930 0001BD 81BE(2) jmp $+1
931 0001BE 81BF(2) jmp $+1
932 0001BF 0000(1) nop
933 0001C0 61D5(1) B0BCLR SCK
934 0001C1
935 0001C1 0E00(2) RET
936 0001C2
937 0001C2 ;-------------------------------------
938 0001C2 ;7102A WRITE ID
939 0001C2 ;-------------------------------------
940 0001C2 SUB_WRITE_ID:
941 0001C2 60D5(1) B0BCLR SCS
942 0001C3 2D20(1) MOV A,#0x20 ;WRITE ID
943 0001C4 C171(2) CALL SUB_BYTE_SEND
944 0001C5
945 0001C5 2D54(1) MOV A,#0x54 ;SEND 4 BYTE ID
946 0001C6 C171(2) CALL SUB_BYTE_SEND
947 0001C7 2D75(1) MOV A,#0x75
948 0001C8 C171(2) CALL SUB_BYTE_SEND
949 0001C9 2DC5(1) MOV A,#0xC5
950 0001CA C171(2) CALL SUB_BYTE_SEND
951 0001CB 2D2A(1) MOV A,#0x2A
952 0001CC C171(2) CALL SUB_BYTE_SEND
953 0001CD
954 0001CD 68D5(1) B0BSET SCS
955 0001CE 81CF(2) jmp $+1
956 0001CF 81D0(2) jmp $+1
957 0001D0 81D1(2) jmp $+1
958 0001D1 81D2(2) jmp $+1
959 0001D2 60D5(1) B0BCLR SCS
960 0001D3
961 0001D3 2DA0(1) MOV A,#0XA0 ; READ ID
962 0001D4 C171(2) CALL SUB_BYTE_SEND
963 0001D5
964 0001D5 C18B(2) CALL SUB_BYTE_READ
965 0001D6 1E03(1) MOV A,TEMP_READ
966 0001D7 1F04(1) MOV TEMP_ID1,A
967 0001D8 C18B(2) CALL SUB_BYTE_READ
968 0001D9 1E03(1) MOV A,TEMP_READ
969 0001DA 1F05(1) MOV TEMP_ID2,A
970 0001DB C18B(2) CALL SUB_BYTE_READ
971 0001DC 1E03(1) MOV A,TEMP_READ
972 0001DD 1F06(1) MOV TEMP_ID3,A
973 0001DE C18B(2) CALL SUB_BYTE_READ
974 0001DF 1E03(1) MOV A,TEMP_READ
975 0001E0 1F07(1) MOV TEMP_ID4,A
976 0001E1 68D5(1) B0BSET SCS
977 0001E2
978 0001E2 0E00(2) RET
979 0001E3
980 0001E3 ;-------------------------------------
981 0001E3 ;7102A CONFIG_M
982 0001E3 ;-------------------------------------
983 0001E3
984 0001E3
985 0001E3
986 0001E3
987 0001E3 SUB_CONFIG_M:
988 0001E3
989 0001E3 2B0D(1) CLR address
990 0001E4 @@:
991 0001E4
992 0001E4 60D5(1) B0BCLR SCS
993 0001E5 3401(1) B0MOV Y,#TABLE_T$M
994 0001E6 33FE(1) B0MOV Z,#TABLE_T$L
995 0001E7
996 0001E7
997 0001E7 2E0D(1) B0MOV A,address
998 0001E8 1383(1) ADD Z,A
999 0001E9 7A86(1+S) B0BTS1 FC
1000 0001EA 81ED(2) JMP GETDATA_T
1001 0001EB 1684(1+S) INCMS Y
1002 0001EC 0000(1) NOP
1003 0001ED GETDATA_T:
1004 0001ED 0D00(2) MOVC
1005 0001EE 1F0F(1) MOV DATA_L,A
1006 0001EF 1E82(1) MOV A,R
1007 0001F0 1D55(1) XOR A,#55H
1008 0001F1 7086(1+S) B0BTS0 FZ
1009 0001F2 0E00(2) RET
1010 0001F3 1E82(1) MOV A,R
1011 0001F4 1F0E(1) MOV DATA_M,A
1012 0001F5
1013 0001F5 C1A4(2) CALL SUB_WRITE_REG
1014 0001F6 68D5(1) B0BSET SCS
1015 0001F7 81F8(2) jmp $+1
1016 0001F8 81F9(2) jmp $+1
1017 0001F9 81FA(2) jmp $+1
1018 0001FA 81FB(2) jmp $+1
1019 0001FB 160D(1+S) INCMS address
1020 0001FC 81E4(2) JMP @B
1021 0001FD 0E00(2) RET
1022 0001FE
1023 0001FE
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -