📄 stm8+
字号:
1 ; C Compiler for STM8 (COSMIC Software)
2 ; Generator V4.2.8 - 03 Dec 2008
2813 ; 66 void adc_init(void)
2813 ; 67 {
2815 switch .text
2816 0000 _adc_init:
2820 ; 68 AIN9_DDR=0;
2822 0000 721d5016 bres _AIN9_DDR
2823 ; 69 AIN9_CR1=0;
2825 0004 721d5017 bres _AIN9_CR1
2826 ; 70 AIN9_CR2=0;//PE6
2828 0008 721d5018 bres _AIN9_CR2
2829 ; 71 ADC_CR1=0X00;//关闭ADC
2831 000c 725f5401 clr _ADC_CR1
2832 ; 73 ADC_CSR=0x29;
2834 0010 35295400 mov _ADC_CSR,#41
2835 ; 78 ADC_CR1=0x42;
2837 0014 35425401 mov _ADC_CR1,#66
2838 ; 81 ADC_CR2=0x18;
2840 0018 35185402 mov _ADC_CR2,#24
2841 ; 85 ADC_CR3=0x80;
2843 001c 35805403 mov _ADC_CR3,#128
2844 ; 87 ADC_TDRH=0x00;
2846 0020 725f5406 clr _ADC_TDRH
2847 ; 88 ADC_TDRL=0x00;
2849 0024 725f5407 clr _ADC_TDRL
2850 ; 89 ITC_SPR6 |=0X04;//ADC中断一级
2852 0028 72147f75 bset _ITC_SPR6,#2
2853 ; 90 }
2856 002c 81 ret
2909 ; 98 @far @interrupt void ADC_IRQHandler (void)
2909 ; 99 {
2911 switch .text
2912 002d f_ADC_IRQHandler:
2916 ; 100 adc_data0 = ADC_DB0RL; // 读出ADC结果的低8位
2918 002d c653e1 ld a,_ADC_DB0RL
2919 0030 5f clrw x
2920 0031 97 ld xl,a
2921 0032 bf00 ldw _adc_data0,x
2922 ; 101 adc_data0 |=ADC_DB0RH<<8; //读出结果高八位
2924 0034 c653e0 ld a,_ADC_DB0RH
2925 0037 5f clrw x
2926 0038 97 ld xl,a
2927 0039 4f clr a
2928 003a 02 rlwa x,a
2929 003b 01 rrwa x,a
2930 003c ba01 or a,_adc_data0+1
2931 003e 01 rrwa x,a
2932 003f ba00 or a,_adc_data0
2933 0041 01 rrwa x,a
2934 0042 bf00 ldw _adc_data0,x
2935 ; 102 adc_data1 = ADC_DB1RL; // 读出ADC结果的低8位
2937 0044 c653e3 ld a,_ADC_DB1RL
2938 0047 5f clrw x
2939 0048 97 ld xl,a
2940 0049 bf00 ldw _adc_data1,x
2941 ; 103 adc_data1 |=ADC_DB1RH<<8; //读出结果高八位
2943 004b c653e2 ld a,_ADC_DB1RH
2944 004e 5f clrw x
2945 004f 97 ld xl,a
2946 0050 4f clr a
2947 0051 02 rlwa x,a
2948 0052 01 rrwa x,a
2949 0053 ba01 or a,_adc_data1+1
2950 0055 01 rrwa x,a
2951 0056 ba00 or a,_adc_data1
2952 0058 01 rrwa x,a
2953 0059 bf00 ldw _adc_data1,x
2954 ; 104 adc_data2 = ADC_DB2RL; // 读出ADC结果的低8位
2956 005b c653e5 ld a,_ADC_DB2RL
2957 005e 5f clrw x
2958 005f 97 ld xl,a
2959 0060 bf00 ldw _adc_data2,x
2960 ; 105 adc_data2 |=ADC_DB2RH<<8; //读出结果高八位
2962 0062 c653e4 ld a,_ADC_DB2RH
2963 0065 5f clrw x
2964 0066 97 ld xl,a
2965 0067 4f clr a
2966 0068 02 rlwa x,a
2967 0069 01 rrwa x,a
2968 006a ba01 or a,_adc_data2+1
2969 006c 01 rrwa x,a
2970 006d ba00 or a,_adc_data2
2971 006f 01 rrwa x,a
2972 0070 bf00 ldw _adc_data2,x
2973 ; 106 adc_data3 = ADC_DB3RL; // 读出ADC结果的低8位
2975 0072 c653e7 ld a,_ADC_DB3RL
2976 0075 5f clrw x
2977 0076 97 ld xl,a
2978 0077 bf00 ldw _adc_data3,x
2979 ; 107 adc_data3 |=ADC_DB3RH<<8; //读出结果高八位
2981 0079 c653e6 ld a,_ADC_DB3RH
2982 007c 5f clrw x
2983 007d 97 ld xl,a
2984 007e 4f clr a
2985 007f 02 rlwa x,a
2986 0080 01 rrwa x,a
2987 0081 ba01 or a,_adc_data3+1
2988 0083 01 rrwa x,a
2989 0084 ba00 or a,_adc_data3
2990 0086 01 rrwa x,a
2991 0087 bf00 ldw _adc_data3,x
2992 ; 108 adc_data4 = ADC_DB4RL; // 读出ADC结果的低8位
2994 0089 c653e9 ld a,_ADC_DB4RL
2995 008c 5f clrw x
2996 008d 97 ld xl,a
2997 008e bf00 ldw _adc_data4,x
2998 ; 109 adc_data4 |=ADC_DB4RH<<8; //读出结果高八位
3000 0090 c653e8 ld a,_ADC_DB4RH
3001 0093 5f clrw x
3002 0094 97 ld xl,a
3003 0095 4f clr a
3004 0096 02 rlwa x,a
3005 0097 01 rrwa x,a
3006 0098 ba01 or a,_adc_data4+1
3007 009a 01 rrwa x,a
3008 009b ba00 or a,_adc_data4
3009 009d 01 rrwa x,a
3010 009e bf00 ldw _adc_data4,x
3011 ; 110 adc_data5 = ADC_DB5RL; // 读出ADC结果的低8位
3013 00a0 c653eb ld a,_ADC_DB5RL
3014 00a3 5f clrw x
3015 00a4 97 ld xl,a
3016 00a5 bf00 ldw _adc_data5,x
3017 ; 111 adc_data5 |=ADC_DB5RH<<8; //读出结果高八位
3019 00a7 c653ea ld a,_ADC_DB5RH
3020 00aa 5f clrw x
3021 00ab 97 ld xl,a
3022 00ac 4f clr a
3023 00ad 02 rlwa x,a
3024 00ae 01 rrwa x,a
3025 00af ba01 or a,_adc_data5+1
3026 00b1 01 rrwa x,a
3027 00b2 ba00 or a,_adc_data5
3028 00b4 01 rrwa x,a
3029 00b5 bf00 ldw _adc_data5,x
3030 ; 112 adc_data6 = ADC_DB6RL; // 读出ADC结果的低8位
3032 00b7 c653ed ld a,_ADC_DB6RL
3033 00ba 5f clrw x
3034 00bb 97 ld xl,a
3035 00bc bf00 ldw _adc_data6,x
3036 ; 113 adc_data6 |=ADC_DB6RH<<8; //读出结果高八位
3038 00be c653ec ld a,_ADC_DB6RH
3039 00c1 5f clrw x
3040 00c2 97 ld xl,a
3041 00c3 4f clr a
3042 00c4 02 rlwa x,a
3043 00c5 01 rrwa x,a
3044 00c6 ba01 or a,_adc_data6+1
3045 00c8 01 rrwa x,a
3046 00c9 ba00 or a,_adc_data6
3047 00cb 01 rrwa x,a
3048 00cc bf00 ldw _adc_data6,x
3049 ; 114 adc_data7 = ADC_DB7RL; // 读出ADC结果的低8位
3051 00ce c653ef ld a,_ADC_DB7RL
3052 00d1 5f clrw x
3053 00d2 97 ld xl,a
3054 00d3 bf00 ldw _adc_data7,x
3055 ; 115 adc_data7 |=ADC_DB7RH<<8; //读出结果高八位
3057 00d5 c653ee ld a,_ADC_DB7RH
3058 00d8 5f clrw x
3059 00d9 97 ld xl,a
3060 00da 4f clr a
3061 00db 02 rlwa x,a
3062 00dc 01 rrwa x,a
3063 00dd ba01 or a,_adc_data7+1
3064 00df 01 rrwa x,a
3065 00e0 ba00 or a,_adc_data7
3066 00e2 01 rrwa x,a
3067 00e3 bf00 ldw _adc_data7,x
3068 ; 116 adc_data8 = ADC_DB8RL; // 读出ADC结果的低8位
3070 00e5 c653f1 ld a,_ADC_DB8RL
3071 00e8 5f clrw x
3072 00e9 97 ld xl,a
3073 00ea bf00 ldw _adc_data8,x
3074 ; 117 adc_data8 |=ADC_DB8RH<<8; //读出结果高八位
3076 00ec c653f0 ld a,_ADC_DB8RH
3077 00ef 5f clrw x
3078 00f0 97 ld xl,a
3079 00f1 4f clr a
3080 00f2 02 rlwa x,a
3081 00f3 01 rrwa x,a
3082 00f4 ba01 or a,_adc_data8+1
3083 00f6 01 rrwa x,a
3084 00f7 ba00 or a,_adc_data8
3085 00f9 01 rrwa x,a
3086 00fa bf00 ldw _adc_data8,x
3087 ; 118 adc_data9 = ADC_DB9RL; // 读出ADC结果的低8位
3089 00fc c653f3 ld a,_ADC_DB9RL
3090 00ff 5f clrw x
3091 0100 97 ld xl,a
3092 0101 bf00 ldw _adc_data9,x
3093 ; 119 adc_data9 |=ADC_DB9RH<<8; //读出结果高八位
3095 0103 c653f2 ld a,_ADC_DB9RH
3096 0106 5f clrw x
3097 0107 97 ld xl,a
3098 0108 4f clr a
3099 0109 02 rlwa x,a
3100 010a 01 rrwa x,a
3101 010b ba01 or a,_adc_data9+1
3102 010d 01 rrwa x,a
3103 010e ba00 or a,_adc_data9
3104 0110 01 rrwa x,a
3105 0111 bf00 ldw _adc_data9,x
3106 ; 120 }
3109 0113 80 iret
3153 xdef f_ADC_IRQHandler
3154 xref.b _adc_data9
3155 xref.b _adc_data8
3156 xref.b _adc_data7
3157 xref.b _adc_data6
3158 xref.b _adc_data5
3159 xref.b _adc_data4
3160 xref.b _adc_data3
3161 xref.b _adc_data2
3162 xref.b _adc_data1
3163 xref.b _adc_data0
3164 xdef _adc_init
3183 end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -