⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 stm8s_adc2.ls

📁 STM8S105 BLDC源代码
💻 LS
📖 第 1 页 / 共 2 页
字号:
   1                     ; C Compiler for STM8 (COSMIC Software)
   2                     ; Parser V4.9.10 - 10 Feb 2011
   3                     ; Generator (Limited) V4.3.6 - 15 Feb 2011
   4                     ; Optimizer V4.3.5 - 15 Feb 2011
  47                     ; 65 void ADC2_DeInit(void)
  47                     ; 66 {
  49                     	switch	.text
  50  0000               _ADC2_DeInit:
  54                     ; 67   ADC2->CSR  = ADC2_CSR_RESET_VALUE;
  56  0000 725f5400      	clr	21504
  57                     ; 68   ADC2->CR1  = ADC2_CR1_RESET_VALUE;
  59  0004 725f5401      	clr	21505
  60                     ; 69   ADC2->CR2  = ADC2_CR2_RESET_VALUE;
  62  0008 725f5402      	clr	21506
  63                     ; 70   ADC2->TDRH = ADC2_TDRH_RESET_VALUE;
  65  000c 725f5406      	clr	21510
  66                     ; 71   ADC2->TDRL = ADC2_TDRL_RESET_VALUE;
  68  0010 725f5407      	clr	21511
  69                     ; 72 }
  72  0014 81            	ret	
 597                     ; 107 void ADC2_Init(ADC2_ConvMode_TypeDef ADC2_ConversionMode, ADC2_Channel_TypeDef ADC2_Channel, ADC2_PresSel_TypeDef ADC2_PrescalerSelection, ADC2_ExtTrig_TypeDef ADC2_ExtTrigger, FunctionalState ADC2_ExtTrigState, ADC2_Align_TypeDef ADC2_Align, ADC2_SchmittTrigg_TypeDef ADC2_SchmittTriggerChannel, FunctionalState ADC2_SchmittTriggerState)
 597                     ; 108 {
 598                     	switch	.text
 599  0015               _ADC2_Init:
 601  0015 89            	pushw	x
 602       00000000      OFST:	set	0
 605                     ; 111   assert_param(IS_ADC2_CONVERSIONMODE_OK(ADC2_ConversionMode));
 607                     ; 112   assert_param(IS_ADC2_CHANNEL_OK(ADC2_Channel));
 609                     ; 113   assert_param(IS_ADC2_PRESSEL_OK(ADC2_PrescalerSelection));
 611                     ; 114   assert_param(IS_ADC2_EXTTRIG_OK(ADC2_ExtTrigger));
 613                     ; 115   assert_param(IS_FUNCTIONALSTATE_OK(((ADC2_ExtTrigState))));
 615                     ; 116   assert_param(IS_ADC2_ALIGN_OK(ADC2_Align));
 617                     ; 117   assert_param(IS_ADC2_SCHMITTTRIG_OK(ADC2_SchmittTriggerChannel));
 619                     ; 118   assert_param(IS_FUNCTIONALSTATE_OK(ADC2_SchmittTriggerState));
 621                     ; 123   ADC2_ConversionConfig(ADC2_ConversionMode, ADC2_Channel, ADC2_Align);
 623  0016 7b08          	ld	a,(OFST+8,sp)
 624  0018 88            	push	a
 625  0019 7b02          	ld	a,(OFST+2,sp)
 626  001b 95            	ld	xh,a
 627  001c cd00e3        	call	_ADC2_ConversionConfig
 629  001f 84            	pop	a
 630                     ; 125   ADC2_PrescalerConfig(ADC2_PrescalerSelection);
 632  0020 7b05          	ld	a,(OFST+5,sp)
 633  0022 ad31          	call	_ADC2_PrescalerConfig
 635                     ; 130   ADC2_ExternalTriggerConfig(ADC2_ExtTrigger, ADC2_ExtTrigState);
 637  0024 7b07          	ld	a,(OFST+7,sp)
 638  0026 97            	ld	xl,a
 639  0027 7b06          	ld	a,(OFST+6,sp)
 640  0029 95            	ld	xh,a
 641  002a cd0110        	call	_ADC2_ExternalTriggerConfig
 643                     ; 135   ADC2_SchmittTriggerConfig(ADC2_SchmittTriggerChannel, ADC2_SchmittTriggerState);
 645  002d 7b0a          	ld	a,(OFST+10,sp)
 646  002f 97            	ld	xl,a
 647  0030 7b09          	ld	a,(OFST+9,sp)
 648  0032 95            	ld	xh,a
 649  0033 ad33          	call	_ADC2_SchmittTriggerConfig
 651                     ; 138   ADC2->CR1 |= ADC2_CR1_ADON;
 653  0035 72105401      	bset	21505,#0
 654                     ; 140 }
 657  0039 85            	popw	x
 658  003a 81            	ret	
 693                     ; 157 void ADC2_Cmd(FunctionalState NewState)
 693                     ; 158 {
 694                     	switch	.text
 695  003b               _ADC2_Cmd:
 699                     ; 161   assert_param(IS_FUNCTIONALSTATE_OK(NewState));
 701                     ; 163   if (NewState != DISABLE)
 703  003b 4d            	tnz	a
 704  003c 2705          	jreq	L703
 705                     ; 165     ADC2->CR1 |= ADC2_CR1_ADON;
 707  003e 72105401      	bset	21505,#0
 710  0042 81            	ret	
 711  0043               L703:
 712                     ; 169     ADC2->CR1 &= (u8)(~ADC2_CR1_ADON);
 714  0043 72115401      	bres	21505,#0
 715                     ; 172 }
 718  0047 81            	ret	
 753                     ; 192 void ADC2_ITConfig(FunctionalState ADC2_ITEnable)
 753                     ; 193 {
 754                     	switch	.text
 755  0048               _ADC2_ITConfig:
 759                     ; 196   assert_param(IS_FUNCTIONALSTATE_OK(ADC2_ITEnable));
 761                     ; 198   if (ADC2_ITEnable != DISABLE)
 763  0048 4d            	tnz	a
 764  0049 2705          	jreq	L133
 765                     ; 201     ADC2->CSR |= (u8)ADC2_CSR_EOCIE;
 767  004b 721a5400      	bset	21504,#5
 770  004f 81            	ret	
 771  0050               L133:
 772                     ; 206     ADC2->CSR &= (u8)(~ADC2_CSR_EOCIE);
 774  0050 721b5400      	bres	21504,#5
 775                     ; 209 }
 778  0054 81            	ret	
 814                     ; 226 void ADC2_PrescalerConfig(ADC2_PresSel_TypeDef ADC2_Prescaler)
 814                     ; 227 {
 815                     	switch	.text
 816  0055               _ADC2_PrescalerConfig:
 818  0055 88            	push	a
 819       00000000      OFST:	set	0
 822                     ; 230   assert_param(IS_ADC2_PRESSEL_OK(ADC2_Prescaler));
 824                     ; 233   ADC2->CR1 &= (u8)(~ADC2_CR1_SPSEL);
 826  0056 c65401        	ld	a,21505
 827  0059 a48f          	and	a,#143
 828  005b c75401        	ld	21505,a
 829                     ; 235   ADC2->CR1 |= (u8)(ADC2_Prescaler);
 831  005e c65401        	ld	a,21505
 832  0061 1a01          	or	a,(OFST+1,sp)
 833  0063 c75401        	ld	21505,a
 834                     ; 237 }
 837  0066 84            	pop	a
 838  0067 81            	ret	
 886                     ; 257 void ADC2_SchmittTriggerConfig(ADC2_SchmittTrigg_TypeDef ADC2_SchmittTriggerChannel, FunctionalState ADC2_SchmittTriggerState)
 886                     ; 258 {
 887                     	switch	.text
 888  0068               _ADC2_SchmittTriggerConfig:
 890  0068 89            	pushw	x
 891       00000000      OFST:	set	0
 894                     ; 261   assert_param(IS_ADC2_SCHMITTTRIG_OK(ADC2_SchmittTriggerChannel));
 896                     ; 262   assert_param(IS_FUNCTIONALSTATE_OK(ADC2_SchmittTriggerState));
 898                     ; 264   if (ADC2_SchmittTriggerChannel == ADC2_SCHMITTTRIG_ALL)
 900  0069 9e            	ld	a,xh
 901  006a a11f          	cp	a,#31
 902  006c 261d          	jrne	L573
 903                     ; 266     if (ADC2_SchmittTriggerState != DISABLE)
 905  006e 9f            	ld	a,xl
 906  006f 4d            	tnz	a
 907  0070 270a          	jreq	L773
 908                     ; 268       ADC2->TDRL &= (u8)0x0;
 910  0072 725f5407      	clr	21511
 911                     ; 269       ADC2->TDRH &= (u8)0x0;
 913  0076 725f5406      	clr	21510
 915  007a 2065          	jra	L304
 916  007c               L773:
 917                     ; 273       ADC2->TDRL |= (u8)0xFF;
 919  007c c65407        	ld	a,21511
 920  007f aaff          	or	a,#255
 921  0081 c75407        	ld	21511,a
 922                     ; 274       ADC2->TDRH |= (u8)0xFF;
 924  0084 c65406        	ld	a,21510
 925  0087 aaff          	or	a,#255
 926  0089 2053          	jp	LC001
 927  008b               L573:
 928                     ; 277   else if (ADC2_SchmittTriggerChannel < ADC2_SCHMITTTRIG_CHANNEL8)
 930  008b 7b01          	ld	a,(OFST+1,sp)
 931  008d a108          	cp	a,#8
 932  008f 0d02          	tnz	(OFST+2,sp)
 933  0091 2426          	jruge	L504
 934                     ; 279     if (ADC2_SchmittTriggerState != DISABLE)
 936  0093 2714          	jreq	L704
 937                     ; 281       ADC2->TDRL &= (u8)(~(u8)((u8)0x01 << (u8)ADC2_SchmittTriggerChannel));
 939  0095 5f            	clrw	x
 940  0096 97            	ld	xl,a
 941  0097 a601          	ld	a,#1
 942  0099 5d            	tnzw	x
 943  009a 2704          	jreq	L03
 944  009c               L23:
 945  009c 48            	sll	a
 946  009d 5a            	decw	x
 947  009e 26fc          	jrne	L23
 948  00a0               L03:
 949  00a0 43            	cpl	a
 950  00a1 c45407        	and	a,21511
 951  00a4               LC002:
 952  00a4 c75407        	ld	21511,a
 954  00a7 2038          	jra	L304
 955  00a9               L704:
 956                     ; 285       ADC2->TDRL |= (u8)((u8)0x01 << (u8)ADC2_SchmittTriggerChannel);
 958  00a9 5f            	clrw	x
 959  00aa 97            	ld	xl,a
 960  00ab a601          	ld	a,#1
 961  00ad 5d            	tnzw	x
 962  00ae 2704          	jreq	L43
 963  00b0               L63:
 964  00b0 48            	sll	a
 965  00b1 5a            	decw	x
 966  00b2 26fc          	jrne	L63
 967  00b4               L43:
 968  00b4 ca5407        	or	a,21511
 969  00b7 20eb          	jp	LC002
 970  00b9               L504:
 971                     ; 290     if (ADC2_SchmittTriggerState != DISABLE)
 973  00b9 2713          	jreq	L514
 974                     ; 292       ADC2->TDRH &= (u8)(~(u8)((u8)0x01 << ((u8)ADC2_SchmittTriggerChannel - (u8)8)));
 976  00bb a008          	sub	a,#8
 977  00bd 5f            	clrw	x
 978  00be 97            	ld	xl,a
 979  00bf a601          	ld	a,#1
 980  00c1 5d            	tnzw	x
 981  00c2 2704          	jreq	L04
 982  00c4               L24:
 983  00c4 48            	sll	a
 984  00c5 5a            	decw	x

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -