📄 liveosci.rst
字号:
00AC 712 00101$: 00AC 22 713 ret 714 ;------------------------------------------------------------ 715 ;Allocation info for local variables in function 'CkGen_SerialIOByte' 716 ;------------------------------------------------------------ 717 ;to_send Allocated to registers r2 718 ;i Allocated to registers 719 ;j Allocated to registers 720 ;res Allocated to registers r3 721 ;------------------------------------------------------------ 722 ;liveosci.c:215: static uint8 CkGen_SerialIOByte(uint8 to_send) 723 ; ----------------------------------------- 724 ; function CkGen_SerialIOByte 725 ; ----------------------------------------- 00AD 726 _CkGen_SerialIOByte: 727 ; genReceive 00AD AA 82 728 mov r2,dpl 729 ;liveosci.c:218: uint8 res=0U; 730 ; genAssign 00AF 7B 00 731 mov r3,#0x00 732 ;liveosci.c:220: for(i=0; i<8; i++) 733 ; genAssign 00B1 7C 00 734 mov r4,#0x00 00B3 735 00124$: 736 ; genCmpLt 737 ; genCmp 00B3 BC 08 00 738 cjne r4,#0x08,00138$ 00B6 739 00138$: 740 ; genIfxJump 741 ; Peephole 108 removed ljmp by inverse jump logic 00B6 50 51 742 jnc 00127$ 00B8 743 00139$: 744 ;liveosci.c:222: res<<=1; 745 ; genLeftShift 746 ; genLeftShiftLiteral 747 ; genlshOne 00B8 EB 748 mov a,r3 00B9 25 E0 749 add a,acc 00BB FB 750 mov r3,a 751 ;liveosci.c:225: if(to_send & (0x80U>>i)) SET_TXD_HIGH(); 752 ; genRightShift 00BC 8C F0 753 mov b,r4 00BE 05 F0 754 inc b 00C0 7D 80 755 mov r5,#0x80 00C2 7E 00 756 mov r6,#0x00 00C4 80 07 757 sjmp 00141$ 00C6 758 00140$: 00C6 C3 759 clr c 00C7 EE 760 mov a,r6 00C8 13 761 rrc a 00C9 FE 762 mov r6,a 00CA ED 763 mov a,r5 00CB 13 764 rrc a 00CC FD 765 mov r5,a 00CD 766 00141$: 00CD D5 F0 F6 767 djnz b,00140$ 768 ; genCast 00D0 8A 07 769 mov ar7,r2 00D2 78 00 770 mov r0,#0x00 771 ; genAnd 00D4 EF 772 mov a,r7 00D5 52 05 773 anl ar5,a 00D7 E8 774 mov a,r0 00D8 52 06 775 anl ar6,a 776 ; genIfx 00DA ED 777 mov a,r5 00DB 4E 778 orl a,r6 779 ; genIfxJump 780 ; Peephole 110 removed ljmp by inverse jump logic 00DC 60 05 781 jz 00104$ 00DE 782 00142$: 783 ; genOr 00DE 43 80 80 784 orl _IOA,#0x80 785 ;liveosci.c:226: else SET_TXD_LOW(); 786 ; Peephole 112.b changed ljmp to sjmp 00E1 80 07 787 sjmp 00110$ 00E3 788 00104$: 789 ; genAssign 00E3 AD 80 790 mov r5,_IOA 791 ; genAnd 00E5 74 7F 792 mov a,#0x7F 00E7 5D 793 anl a,r5 00E8 F5 80 794 mov _IOA,a 795 ;liveosci.c:227: SET_SCK_HIGH(); 00EA 796 00110$: 797 ; genOr 00EA 43 80 08 798 orl _IOA,#0x08 799 ;liveosci.c:231: for(j=0; j<8; j++) { NOP; } 800 ; genAssign 00ED 7D 08 801 mov r5,#0x08 00EF 802 00120$: 803 ; genInline 00EF 00 804 nop; 805 ; genDjnz 806 ; Peephole 112.b changed ljmp to sjmp 807 ; Peephole 205 optimized misc jump sequence 00F0 DD FD 808 djnz r5,00120$ 00F2 809 00143$: 00F2 810 00144$: 811 ;liveosci.c:234: SET_SCK_LOW(); 812 ; genAssign 00F2 AD 80 813 mov r5,_IOA 814 ; genAnd 00F4 74 F7 815 mov a,#0xF7 00F6 5D 816 anl a,r5 00F7 F5 80 817 mov _IOA,a 818 ;liveosci.c:237: if(RXD_LEVEL()) res|=1; 819 ; genAnd 00F9 E5 80 820 mov a,_IOA 821 ; genIfxJump 822 ; Peephole 111 removed ljmp by inverse jump logic 00FB 30 E0 03 823 jnb acc.0,00135$ 00FE 824 00145$: 825 ; genOr 00FE 43 03 01 826 orl ar3,#0x01 827 ;liveosci.c:240: for(j=0; j<8; j++) { NOP; } 0101 828 00135$: 829 ; genAssign 0101 7D 08 830 mov r5,#0x08 0103 831 00123$: 832 ; genInline 0103 00 833 nop; 834 ; genDjnz 835 ; Peephole 112.b changed ljmp to sjmp 836 ; Peephole 205 optimized misc jump sequence 0104 DD FD 837 djnz r5,00123$ 0106 838 00146$: 0106 839 00147$: 840 ;liveosci.c:220: for(i=0; i<8; i++) 841 ; genPlus 842 ; genPlusIncr 0106 0C 843 inc r4 844 ; Peephole 112.b changed ljmp to sjmp 0107 80 AA 845 sjmp 00124$ 0109 846 00127$: 847 ;liveosci.c:243: return(res); 848 ; genRet 0109 8B 82 849 mov dpl,r3 010B 850 00128$: 010B 22 851 ret 852 ;------------------------------------------------------------ 853 ;Allocation info for local variables in function 'WriteIOModuleConfig' 854 ;------------------------------------------------------------ 855 ;keep_rck_high Allocated to registers r2 856 ;i Allocated to registers 857 ;config Allocated to registers r3 858 ;tmp Allocated to registers r2 859 ;------------------------------------------------------------ 860 ;liveosci.c:247: static void WriteIOModuleConfig(uint8 keep_rck_high) 861 ; ----------------------------------------- 862 ; function WriteIOModuleConfig 863 ; ----------------------------------------- 010C 864 _WriteIOModuleConfig: 865 ; genReceive 010C AA 82 866 mov r2,dpl 867 ;liveosci.c:252: uint8 i,config=iomodule_config; 868 ; genAssign 010E AB 08 869 mov r3,_iomodule_config 870 ;liveosci.c:255: SET_CKGEN_INT1_SREG_RCK_LOW(); 871 ; genAssign 0110 AC 80 872 mov r4,_IOA 873 ; genAnd 0112 74 FD 874 mov a,#0xFD 0114 5C 875 anl a,r4 0115 F5 80 876 mov _IOA,a 877 ;liveosci.c:256: SET_SCK_LOW(); 878 ; genAssign 0117 AC 80 879 mov r4,_IOA 880 ; genAnd 0119 74 F7 881 mov a,#0xF7 011B 5C 882 anl a,r4 011C F5 80 883 mov _IOA,a 884 ;liveosci.c:258: for(i=0; i<8; i++) 885 ; genAssign 011E 7C 00 886 mov r4,#0x00 0120 887 00131$: 888 ; genCmpLt 889 ; genCmp 0120 BC 08 00 890 cjne r4,#0x08,00141$ 0123 891 00141$: 892 ; genIfxJump 893 ; Peephole 108 removed ljmp by inverse jump logic 0123 50 3B 894 jnc 00134$ 0125 895 00142$: 896 ;liveosci.c:263: if(config & (0x80U>>i)) SET_TXD_HIGH(); 897 ; genRightShift 0125 8C F0 898 mov b,r4 0127 05 F0 899 inc b 0129 7D 80 900 mov r5,#0x80 012B 7E 00 901 mov r6,#0x00 012D 80 07 902 sjmp 00144$ 012F 903 00143$: 012F C3 904 clr c 0130 EE 905 mov a,r6 0131 13 906 rrc a 0132 FE 907 mov r6,a 0133 ED 908 mov a,r5 0134 13 909 rrc a 0135 FD 910 mov r5,a 0136 911 00144$: 0136 D5 F0 F6 912 djnz b,00143$ 913 ; genCast 0139 8B 07 914 mov ar7,r3 013B 78 00 915 mov r0,#0x00 916 ; genAnd 013D EF 917 mov a,r7 013E 52 05 918 anl ar5,a 0140 E8 919 mov a,r0 0141 52 06 920 anl ar6,a 921 ; genIfx 0143 ED 922 mov a,r5 0144 4E 923 orl a,r6 924 ; genIfxJump 925 ; Peephole 110 removed ljmp by inverse jump logic 0145 60 05 926 jz 00110$ 0147 927 00145$: 928 ; genOr 0147 43 80 80 929 orl _IOA,#0x80 930 ;liveosci.c:264: else SET_TXD_LOW(); 931 ; Peephole 112.b changed ljmp to sjmp 014A 80 07 932 sjmp 00116$ 014C 933 00110$: 934 ; genAssign 014C AD 80 935 mov r5,_IOA 936 ; genAnd 014E 74 7F 937 mov a,#0x7F 0150 5D 938 anl a,r5 0151 F5 80 939 mov _IOA,a 940 ;liveosci.c:267: SET_SCK_HIGH(); 0153 941 00116$: 942 ; genOr 0153 43 80 08 943 orl _IOA,#0x08 944 ;liveosci.c:268: SET_SCK_LOW(); 945 ; genAssign 0156 AD 80 946 mov r5,_IOA 947 ; genAnd 0158 74 F7 948 mov a,#0xF7
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -