; generated by Component: ARM Compiler 5.06 update 7 (build 960) Tool: ArmCC [4d365d]
; commandline ArmCC [--c99 --list --split_sections --debug -c --asm --interleave -o..\output\sc32f1xxx_btm.o --asm_dir=..\List\ --list_dir=..\List\ --depend=..\output\sc32f1xxx_btm.d --cpu=Cortex-M0+ --apcs=interwork --diag_suppress=9931 -I..\FWLib\SC32F1XXX_Lib\inc -I..\User\HeadFiles -I..\User -I..\Drivers -I..\Apps -I..\CMSIS -IF:\Users\SOC\AppData\Local\Arm\Packs\ARM\CMSIS\5.8.0\Device\ARM\ARMCM0plus\Include -D__UVISION_VERSION=536 -DARMCM0P -DSC32f10xx --omf_browse=..\output\sc32f1xxx_btm.crf ..\FWLib\SC32F1XXX_Lib\src\sc32f1xxx_btm.c]
                          THUMB

                          AREA ||i.BTM_ClearFlag||, CODE, READONLY, ALIGN=1

                  BTM_ClearFlag PROC
;;;201     */
;;;202    void BTM_ClearFlag ( BTM_TypeDef* BTMx, BTM_FLAG_TypeDef BTM_FLAG )
000000  6041              STR      r1,[r0,#4]
;;;203    {
;;;204        /* Check the parameters */
;;;205        assert_param ( IS_BTM_ALL_PERIPH ( BTMx ) );
;;;206        assert_param ( IS_BTM_FLAG ( BTM_FLAG ) );
;;;207    
;;;208        /* Clear the flags */
;;;209        BTMx->BTM_STS = ( uint16_t ) BTM_FLAG;
;;;210    }
000002  4770              BX       lr
;;;211    
                          ENDP


                          AREA ||i.BTM_Cmd||, CODE, READONLY, ALIGN=2

                  BTM_Cmd PROC
;;;106     */
;;;107    void BTM_Cmd ( BTM_TypeDef* BTMx, FunctionalState NewState )
000000  2900              CMP      r1,#0
;;;108    {
;;;109        /* Check the parameters */
;;;110        assert_param ( IS_BTM_ALL_PERIPH ( BTMx ) );
;;;111        assert_param ( IS_FUNCTIONAL_STATE ( NewState ) );
;;;112    
;;;113        if ( NewState != DISABLE )
;;;114        {
;;;115            /* Enable the BTM Function */
;;;116            BTMx->BTM_CON |= BTM_CON_BTMEN;
;;;117        }
;;;118        else
;;;119        {
;;;120            /* Disable the BTM Function */
;;;121            BTMx->BTM_CON &= ( uint16_t ) ~BTM_CON_BTMEN;
000002  6801              LDR      r1,[r0,#0]
000004  d002              BEQ      |L2.12|
000006  2280              MOVS     r2,#0x80              ;116
000008  4311              ORRS     r1,r1,r2              ;116
00000a  e001              B        |L2.16|
                  |L2.12|
00000c  4a01              LDR      r2,|L2.20|
00000e  4011              ANDS     r1,r1,r2
                  |L2.16|
000010  6001              STR      r1,[r0,#0]            ;116
;;;122        }
;;;123    }
000012  4770              BX       lr
;;;124    
                          ENDP

                  |L2.20|
                          DCD      0x0000ff7f

                          AREA ||i.BTM_DeInit||, CODE, READONLY, ALIGN=2

                  BTM_DeInit PROC
;;;45      */
;;;46     void BTM_DeInit ( BTM_TypeDef* BTMx )
000000  4903              LDR      r1,|L3.16|
;;;47     {
;;;48         /* Check the parameters */
;;;49         assert_param ( IS_BTM_ALL_PERIPH ( BTMx ) );
;;;50     
;;;51         if ( BTMx == BTM )
000002  4288              CMP      r0,r1
000004  d103              BNE      |L3.14|
;;;52         {
;;;53             /* Enable BTM0 reset state */
;;;54             BTMx->BTM_CON = 0x0000;
000006  2100              MOVS     r1,#0
000008  6001              STR      r1,[r0,#0]
;;;55             BTMx->BTM_STS = 0xFFFF;
00000a  4902              LDR      r1,|L3.20|
00000c  6041              STR      r1,[r0,#4]
                  |L3.14|
;;;56         }
;;;57     }
00000e  4770              BX       lr
;;;58     
                          ENDP

                  |L3.16|
                          DCD      0x40022100
                  |L3.20|
                          DCD      0x0000ffff

                          AREA ||i.BTM_FSConfig||, CODE, READONLY, ALIGN=1

                  BTM_FSConfig PROC
;;;77      */
;;;78     void BTM_FSConfig ( BTM_TypeDef* BTMx, BTM_FreqSelect_TypeDef BTM_FreqSelect )
000000  6802              LDR      r2,[r0,#0]
;;;79     {
;;;80         uint32_t tmpreg;
;;;81         /* Check the parameters */
;;;82         assert_param ( IS_BTM_ALL_PERIPH ( BTMx ) );
;;;83         assert_param ( IS_BTM_FREQSELECT ( BTM_FreqSelect ) );
;;;84     
;;;85         /*---------------------------- BTMx BTM_CON Configuration ------------------------*/
;;;86         /* Get the BTMx BTM_CON value */
;;;87         tmpreg = BTMx->BTM_CON;
;;;88         /* Clear BTMFS bits */
;;;89         tmpreg &= ( uint32_t ) ~ BTM_CON_BTMFS ;
000002  0912              LSRS     r2,r2,#4
000004  0112              LSLS     r2,r2,#4
;;;90     
;;;91         /* Configure BTMx: Freq Select */
;;;92         /* Set BTMFS bit to BTM_FreqSelect value */
;;;93         tmpreg |= ( uint32_t ) ( BTM_FreqSelect );
000006  430a              ORRS     r2,r2,r1
;;;94         /* Write to BTMx BTM_CON */
;;;95         BTMx->BTM_CON = tmpreg;
000008  6002              STR      r2,[r0,#0]
;;;96     }
00000a  4770              BX       lr
;;;97     
                          ENDP


                          AREA ||i.BTM_GetFlagStatus||, CODE, READONLY, ALIGN=1

                  BTM_GetFlagStatus PROC
;;;175     */
;;;176    FlagStatus BTM_GetFlagStatus ( BTM_TypeDef* BTMx, BTM_FLAG_TypeDef BTM_FLAG )
000000  4602              MOV      r2,r0
;;;177    {
;;;178        ITStatus bitstatus = RESET;
;;;179        /* Check the parameters */
;;;180        assert_param ( IS_BTM_ALL_PERIPH ( BTMx ) );
;;;181        assert_param ( IS_GET_BTM_FLAG ( BTM_FLAG ) );
;;;182    
;;;183        if ( ( BTMx->BTM_STS & BTM_FLAG ) != ( uint16_t ) RESET )
000002  6852              LDR      r2,[r2,#4]
000004  2000              MOVS     r0,#0                 ;178
000006  420a              TST      r2,r1
000008  d000              BEQ      |L5.12|
;;;184        {
;;;185            bitstatus = SET;
00000a  2001              MOVS     r0,#1
                  |L5.12|
;;;186        }
;;;187        else
;;;188        {
;;;189            bitstatus = RESET;
;;;190        }
;;;191        return bitstatus;
;;;192    }
00000c  4770              BX       lr
;;;193    
                          ENDP


                          AREA ||i.BTM_ITConfig||, CODE, READONLY, ALIGN=1

                  BTM_ITConfig PROC
;;;146     */
;;;147    void BTM_ITConfig ( BTM_TypeDef* BTMx, uint16_t BTM_IT, FunctionalState NewState )
000000  2a00              CMP      r2,#0
;;;148    {
;;;149        /* Check the parameters */
;;;150        assert_param ( IS_BTM_ALL_PERIPH ( BTMx ) );
;;;151        assert_param ( IS_BTM_IT ( BTM_IT ) );
;;;152        assert_param ( IS_FUNCTIONAL_STATE ( NewState ) );
;;;153    
;;;154        if ( NewState != DISABLE )
;;;155        {
;;;156            /* Enable the Interrupt sources */
;;;157            BTMx->BTM_CON |= BTM_IT;
;;;158        }
;;;159        else
;;;160        {
;;;161            /* Disable the Interrupt sources */
;;;162            BTMx->BTM_CON &= ( uint16_t ) ~BTM_IT;
000002  6802              LDR      r2,[r0,#0]
000004  d001              BEQ      |L6.10|
000006  430a              ORRS     r2,r2,r1              ;157
000008  e002              B        |L6.16|
                  |L6.10|
00000a  43c9              MVNS     r1,r1
00000c  b289              UXTH     r1,r1
00000e  400a              ANDS     r2,r2,r1
                  |L6.16|
000010  6002              STR      r2,[r0,#0]            ;157
;;;163        }
;;;164    }
000012  4770              BX       lr
;;;165    
                          ENDP


;*** Start embedded assembler ***

#line 1 "..\\FWLib\\SC32F1XXX_Lib\\src\\sc32f1xxx_btm.c"
	AREA ||.rev16_text||, CODE
	THUMB
	EXPORT |__asm___15_sc32f1xxx_btm_c_b367c5e2____REV16|
#line 463 "..\\CMSIS\\cmsis_armcc.h"
|__asm___15_sc32f1xxx_btm_c_b367c5e2____REV16| PROC
#line 464

 rev16 r0, r0
 bx lr
	ENDP
	AREA ||.revsh_text||, CODE
	THUMB
	EXPORT |__asm___15_sc32f1xxx_btm_c_b367c5e2____REVSH|
#line 478
|__asm___15_sc32f1xxx_btm_c_b367c5e2____REVSH| PROC
#line 479

 revsh r0, r0
 bx lr
	ENDP

;*** End   embedded assembler ***
