   1              		.cpu cortex-m4
   2              		.eabi_attribute 27, 1
   3              		.eabi_attribute 28, 1
   4              		.eabi_attribute 20, 1
   5              		.eabi_attribute 21, 1
   6              		.eabi_attribute 23, 3
   7              		.eabi_attribute 24, 1
   8              		.eabi_attribute 25, 1
   9              		.eabi_attribute 26, 1
  10              		.eabi_attribute 30, 6
  11              		.eabi_attribute 34, 1
  12              		.eabi_attribute 18, 4
  13              		.file	"isr.c"
  14              		.text
  15              	.Ltext0:
  16              		.cfi_sections	.debug_frame
  17              		.comm	component_fun,4,4
  18              		.align	1
  19              		.global	EUSCIA3_IRQHandler
  20              		.syntax unified
  21              		.thumb
  22              		.thumb_func
  23              		.fpu fpv4-sp-d16
  25              	EUSCIA3_IRQHandler:
  26              	.LFB123:
  27              		.file 1 "srcc/isr.c"
   1:srcc/isr.c    **** //=====================================================================
   2:srcc/isr.c    **** //文件名称：isr.c（中断处理程序源文件）
   3:srcc/isr.c    **** //框架提供：SD-ARM（sumcu.suda.edu.cn）
   4:srcc/isr.c    **** //版本更新：20170801-20191020
   5:srcc/isr.c    **** //功能描述：提供中断处理程序编程框架
   6:srcc/isr.c    **** //移植规则：【固定】
   7:srcc/isr.c    **** //=====================================================================
   8:srcc/isr.c    **** #include "includes.h"
   9:srcc/isr.c    **** void User_SysFun(uint8_t ch);
  10:srcc/isr.c    **** //======================================================================
  11:srcc/isr.c    **** //程序名称：UART_User_Handler
  12:srcc/isr.c    **** //触发条件：UART_User串口收到一个字节触发
  13:srcc/isr.c    **** //备    注：进入本程序后，可使用uart_get_re_int函数可再进行中断标志判断
  14:srcc/isr.c    **** //          （1-有UART接收中断，0-没有UART接收中断）
  15:srcc/isr.c    **** //======================================================================
  16:srcc/isr.c    **** void UART_User_Handler(void)
  17:srcc/isr.c    **** {
  28              		.loc 1 17 0
  29              		.cfi_startproc
  30              		@ args = 0, pretend = 0, frame = 8
  31              		@ frame_needed = 1, uses_anonymous_args = 0
  32 0000 80B5     		push	{r7, lr}
  33              		.cfi_def_cfa_offset 8
  34              		.cfi_offset 7, -8
  35              		.cfi_offset 14, -4
  36 0002 82B0     		sub	sp, sp, #8
  37              		.cfi_def_cfa_offset 16
  38 0004 00AF     		add	r7, sp, #0
  39              		.cfi_def_cfa_register 7
  40              	.LBB6:
  41              	.LBB7:
  42              		.file 2 "E:\\16-21-BOOK\\17-19 TI-MSP432-190818\\06-User\\SD-TI-CD(V3.1)-210419\\04-Soft\\CH04-GPI
   1:E:\16-21-BOOK\17-19 TI-MSP432-190818\06-User\SD-TI-CD(V3.1)-210419\04-Soft\CH04-GPIO\GPIO-Output-Component(MSP432)-20210330\02_CPU\cmsis_gcc.h **** /**************************************************************************//**
   2:E:\16-21-BOOK\17-19 TI-MSP432-190818\06-User\SD-TI-CD(V3.1)-210419\04-Soft\CH04-GPIO\GPIO-Output-Component(MSP432)-20210330\02_CPU\cmsis_gcc.h ****  * @file     cmsis_gcc.h
   3:E:\16-21-BOOK\17-19 TI-MSP432-190818\06-User\SD-TI-CD(V3.1)-210419\04-Soft\CH04-GPIO\GPIO-Output-Component(MSP432)-20210330\02_CPU\cmsis_gcc.h ****  * @brief    CMSIS Cortex-M Core Function/Instruction Header File
   4:E:\16-21-BOOK\17-19 TI-MSP432-190818\06-User\SD-TI-CD(V3.1)-210419\04-Soft\CH04-GPIO\GPIO-Output-Component(MSP432)-20210330\02_CPU\cmsis_gcc.h ****  * @version  V4.30
   5:E:\16-21-BOOK\17-19 TI-MSP432-190818\06-User\SD-TI-CD(V3.1)-210419\04-Soft\CH04-GPIO\GPIO-Output-Component(MSP432)-20210330\02_CPU\cmsis_gcc.h ****  * @date     20. October 2015
   6:E:\16-21-BOOK\17-19 TI-MSP432-190818\06-User\SD-TI-CD(V3.1)-210419\04-Soft\CH04-GPIO\GPIO-Output-Component(MSP432)-20210330\02_CPU\cmsis_gcc.h ****  ******************************************************************************/
   7:E:\16-21-BOOK\17-19 TI-MSP432-190818\06-User\SD-TI-CD(V3.1)-210419\04-Soft\CH04-GPIO\GPIO-Output-Component(MSP432)-20210330\02_CPU\cmsis_gcc.h **** /* Copyright (c) 2009 - 2015 ARM LIMITED
   8:E:\16-21-BOOK\17-19 TI-MSP432-190818\06-User\SD-TI-CD(V3.1)-210419\04-Soft\CH04-GPIO\GPIO-Output-Component(MSP432)-20210330\02_CPU\cmsis_gcc.h **** 
   9:E:\16-21-BOOK\17-19 TI-MSP432-190818\06-User\SD-TI-CD(V3.1)-210419\04-Soft\CH04-GPIO\GPIO-Output-Component(MSP432)-20210330\02_CPU\cmsis_gcc.h ****    All rights reserved.
  10:E:\16-21-BOOK\17-19 TI-MSP432-190818\06-User\SD-TI-CD(V3.1)-210419\04-Soft\CH04-GPIO\GPIO-Output-Component(MSP432)-20210330\02_CPU\cmsis_gcc.h ****    Redistribution and use in source and binary forms, with or without
  11:E:\16-21-BOOK\17-19 TI-MSP432-190818\06-User\SD-TI-CD(V3.1)-210419\04-Soft\CH04-GPIO\GPIO-Output-Component(MSP432)-20210330\02_CPU\cmsis_gcc.h ****    modification, are permitted provided that the following conditions are met:
  12:E:\16-21-BOOK\17-19 TI-MSP432-190818\06-User\SD-TI-CD(V3.1)-210419\04-Soft\CH04-GPIO\GPIO-Output-Component(MSP432)-20210330\02_CPU\cmsis_gcc.h ****    - Redistributions of source code must retain the above copyright
  13:E:\16-21-BOOK\17-19 TI-MSP432-190818\06-User\SD-TI-CD(V3.1)-210419\04-Soft\CH04-GPIO\GPIO-Output-Component(MSP432)-20210330\02_CPU\cmsis_gcc.h ****      notice, this list of conditions and the following disclaimer.
  14:E:\16-21-BOOK\17-19 TI-MSP432-190818\06-User\SD-TI-CD(V3.1)-210419\04-Soft\CH04-GPIO\GPIO-Output-Component(MSP432)-20210330\02_CPU\cmsis_gcc.h ****    - Redistributions in binary form must reproduce the above copyright
  15:E:\16-21-BOOK\17-19 TI-MSP432-190818\06-User\SD-TI-CD(V3.1)-210419\04-Soft\CH04-GPIO\GPIO-Output-Component(MSP432)-20210330\02_CPU\cmsis_gcc.h ****      notice, this list of conditions and the following disclaimer in the
  16:E:\16-21-BOOK\17-19 TI-MSP432-190818\06-User\SD-TI-CD(V3.1)-210419\04-Soft\CH04-GPIO\GPIO-Output-Component(MSP432)-20210330\02_CPU\cmsis_gcc.h ****      documentation and/or other materials provided with the distribution.
  17:E:\16-21-BOOK\17-19 TI-MSP432-190818\06-User\SD-TI-CD(V3.1)-210419\04-Soft\CH04-GPIO\GPIO-Output-Component(MSP432)-20210330\02_CPU\cmsis_gcc.h ****    - Neither the name of ARM nor the names of its contributors may be used
  18:E:\16-21-BOOK\17-19 TI-MSP432-190818\06-User\SD-TI-CD(V3.1)-210419\04-Soft\CH04-GPIO\GPIO-Output-Component(MSP432)-20210330\02_CPU\cmsis_gcc.h ****      to endorse or promote products derived from this software without
  19:E:\16-21-BOOK\17-19 TI-MSP432-190818\06-User\SD-TI-CD(V3.1)-210419\04-Soft\CH04-GPIO\GPIO-Output-Component(MSP432)-20210330\02_CPU\cmsis_gcc.h ****      specific prior written permission.
  20:E:\16-21-BOOK\17-19 TI-MSP432-190818\06-User\SD-TI-CD(V3.1)-210419\04-Soft\CH04-GPIO\GPIO-Output-Component(MSP432)-20210330\02_CPU\cmsis_gcc.h ****    *
  21:E:\16-21-BOOK\17-19 TI-MSP432-190818\06-User\SD-TI-CD(V3.1)-210419\04-Soft\CH04-GPIO\GPIO-Output-Component(MSP432)-20210330\02_CPU\cmsis_gcc.h ****    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
  22:E:\16-21-BOOK\17-19 TI-MSP432-190818\06-User\SD-TI-CD(V3.1)-210419\04-Soft\CH04-GPIO\GPIO-Output-Component(MSP432)-20210330\02_CPU\cmsis_gcc.h ****    AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  23:E:\16-21-BOOK\17-19 TI-MSP432-190818\06-User\SD-TI-CD(V3.1)-210419\04-Soft\CH04-GPIO\GPIO-Output-Component(MSP432)-20210330\02_CPU\cmsis_gcc.h ****    IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  24:E:\16-21-BOOK\17-19 TI-MSP432-190818\06-User\SD-TI-CD(V3.1)-210419\04-Soft\CH04-GPIO\GPIO-Output-Component(MSP432)-20210330\02_CPU\cmsis_gcc.h ****    ARE DISCLAIMED. IN NO EVENT SHALL COPYRIGHT HOLDERS AND CONTRIBUTORS BE
  25:E:\16-21-BOOK\17-19 TI-MSP432-190818\06-User\SD-TI-CD(V3.1)-210419\04-Soft\CH04-GPIO\GPIO-Output-Component(MSP432)-20210330\02_CPU\cmsis_gcc.h ****    LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
  26:E:\16-21-BOOK\17-19 TI-MSP432-190818\06-User\SD-TI-CD(V3.1)-210419\04-Soft\CH04-GPIO\GPIO-Output-Component(MSP432)-20210330\02_CPU\cmsis_gcc.h ****    CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
  27:E:\16-21-BOOK\17-19 TI-MSP432-190818\06-User\SD-TI-CD(V3.1)-210419\04-Soft\CH04-GPIO\GPIO-Output-Component(MSP432)-20210330\02_CPU\cmsis_gcc.h ****    SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
  28:E:\16-21-BOOK\17-19 TI-MSP432-190818\06-User\SD-TI-CD(V3.1)-210419\04-Soft\CH04-GPIO\GPIO-Output-Component(MSP432)-20210330\02_CPU\cmsis_gcc.h ****    INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
  29:E:\16-21-BOOK\17-19 TI-MSP432-190818\06-User\SD-TI-CD(V3.1)-210419\04-Soft\CH04-GPIO\GPIO-Output-Component(MSP432)-20210330\02_CPU\cmsis_gcc.h ****    CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
  30:E:\16-21-BOOK\17-19 TI-MSP432-190818\06-User\SD-TI-CD(V3.1)-210419\04-Soft\CH04-GPIO\GPIO-Output-Component(MSP432)-20210330\02_CPU\cmsis_gcc.h ****    ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
  31:E:\16-21-BOOK\17-19 TI-MSP432-190818\06-User\SD-TI-CD(V3.1)-210419\04-Soft\CH04-GPIO\GPIO-Output-Component(MSP432)-20210330\02_CPU\cmsis_gcc.h ****    POSSIBILITY OF SUCH DAMAGE.
  32:E:\16-21-BOOK\17-19 TI-MSP432-190818\06-User\SD-TI-CD(V3.1)-210419\04-Soft\CH04-GPIO\GPIO-Output-Component(MSP432)-20210330\02_CPU\cmsis_gcc.h ****    ---------------------------------------------------------------------------*/
  33:E:\16-21-BOOK\17-19 TI-MSP432-190818\06-User\SD-TI-CD(V3.1)-210419\04-Soft\CH04-GPIO\GPIO-Output-Component(MSP432)-20210330\02_CPU\cmsis_gcc.h **** 
  34:E:\16-21-BOOK\17-19 TI-MSP432-190818\06-User\SD-TI-CD(V3.1)-210419\04-Soft\CH04-GPIO\GPIO-Output-Component(MSP432)-20210330\02_CPU\cmsis_gcc.h **** 
  35:E:\16-21-BOOK\17-19 TI-MSP432-190818\06-User\SD-TI-CD(V3.1)-210419\04-Soft\CH04-GPIO\GPIO-Output-Component(MSP432)-20210330\02_CPU\cmsis_gcc.h **** #ifndef __CMSIS_GCC_H
  36:E:\16-21-BOOK\17-19 TI-MSP432-190818\06-User\SD-TI-CD(V3.1)-210419\04-Soft\CH04-GPIO\GPIO-Output-Component(MSP432)-20210330\02_CPU\cmsis_gcc.h **** #define __CMSIS_GCC_H
  37:E:\16-21-BOOK\17-19 TI-MSP432-190818\06-User\SD-TI-CD(V3.1)-210419\04-Soft\CH04-GPIO\GPIO-Output-Component(MSP432)-20210330\02_CPU\cmsis_gcc.h **** 
  38:E:\16-21-BOOK\17-19 TI-MSP432-190818\06-User\SD-TI-CD(V3.1)-210419\04-Soft\CH04-GPIO\GPIO-Output-Component(MSP432)-20210330\02_CPU\cmsis_gcc.h **** /* ignore some GCC warnings */
  39:E:\16-21-BOOK\17-19 TI-MSP432-190818\06-User\SD-TI-CD(V3.1)-210419\04-Soft\CH04-GPIO\GPIO-Output-Component(MSP432)-20210330\02_CPU\cmsis_gcc.h **** #if defined ( __GNUC__ )
  40:E:\16-21-BOOK\17-19 TI-MSP432-190818\06-User\SD-TI-CD(V3.1)-210419\04-Soft\CH04-GPIO\GPIO-Output-Component(MSP432)-20210330\02_CPU\cmsis_gcc.h **** #pragma GCC diagnostic push
  41:E:\16-21-BOOK\17-19 TI-MSP432-190818\06-User\SD-TI-CD(V3.1)-210419\04-Soft\CH04-GPIO\GPIO-Output-Component(MSP432)-20210330\02_CPU\cmsis_gcc.h **** #pragma GCC diagnostic ignored "-Wsign-conversion"
  42:E:\16-21-BOOK\17-19 TI-MSP432-190818\06-User\SD-TI-CD(V3.1)-210419\04-Soft\CH04-GPIO\GPIO-Output-Component(MSP432)-20210330\02_CPU\cmsis_gcc.h **** #pragma GCC diagnostic ignored "-Wconversion"
  43:E:\16-21-BOOK\17-19 TI-MSP432-190818\06-User\SD-TI-CD(V3.1)-210419\04-Soft\CH04-GPIO\GPIO-Output-Component(MSP432)-20210330\02_CPU\cmsis_gcc.h **** #pragma GCC diagnostic ignored "-Wunused-parameter"
  44:E:\16-21-BOOK\17-19 TI-MSP432-190818\06-User\SD-TI-CD(V3.1)-210419\04-Soft\CH04-GPIO\GPIO-Output-Component(MSP432)-20210330\02_CPU\cmsis_gcc.h **** #endif
  45:E:\16-21-BOOK\17-19 TI-MSP432-190818\06-User\SD-TI-CD(V3.1)-210419\04-Soft\CH04-GPIO\GPIO-Output-Component(MSP432)-20210330\02_CPU\cmsis_gcc.h **** 
  46:E:\16-21-BOOK\17-19 TI-MSP432-190818\06-User\SD-TI-CD(V3.1)-210419\04-Soft\CH04-GPIO\GPIO-Output-Component(MSP432)-20210330\02_CPU\cmsis_gcc.h **** 
  47:E:\16-21-BOOK\17-19 TI-MSP432-190818\06-User\SD-TI-CD(V3.1)-210419\04-Soft\CH04-GPIO\GPIO-Output-Component(MSP432)-20210330\02_CPU\cmsis_gcc.h **** /* ###########################  Core Function Access  ########################### */
  48:E:\16-21-BOOK\17-19 TI-MSP432-190818\06-User\SD-TI-CD(V3.1)-210419\04-Soft\CH04-GPIO\GPIO-Output-Component(MSP432)-20210330\02_CPU\cmsis_gcc.h **** /** \ingroup  CMSIS_Core_FunctionInterface
  49:E:\16-21-BOOK\17-19 TI-MSP432-190818\06-User\SD-TI-CD(V3.1)-210419\04-Soft\CH04-GPIO\GPIO-Output-Component(MSP432)-20210330\02_CPU\cmsis_gcc.h ****     \defgroup CMSIS_Core_RegAccFunctions CMSIS Core Register Access Functions
  50:E:\16-21-BOOK\17-19 TI-MSP432-190818\06-User\SD-TI-CD(V3.1)-210419\04-Soft\CH04-GPIO\GPIO-Output-Component(MSP432)-20210330\02_CPU\cmsis_gcc.h ****   @{
  51:E:\16-21-BOOK\17-19 TI-MSP432-190818\06-User\SD-TI-CD(V3.1)-210419\04-Soft\CH04-GPIO\GPIO-Output-Component(MSP432)-20210330\02_CPU\cmsis_gcc.h ****  */
  52:E:\16-21-BOOK\17-19 TI-MSP432-190818\06-User\SD-TI-CD(V3.1)-210419\04-Soft\CH04-GPIO\GPIO-Output-Component(MSP432)-20210330\02_CPU\cmsis_gcc.h **** 
  53:E:\16-21-BOOK\17-19 TI-MSP432-190818\06-User\SD-TI-CD(V3.1)-210419\04-Soft\CH04-GPIO\GPIO-Output-Component(MSP432)-20210330\02_CPU\cmsis_gcc.h **** /**
  54:E:\16-21-BOOK\17-19 TI-MSP432-190818\06-User\SD-TI-CD(V3.1)-210419\04-Soft\CH04-GPIO\GPIO-Output-Component(MSP432)-20210330\02_CPU\cmsis_gcc.h ****   \brief   Enable IRQ Interrupts
  55:E:\16-21-BOOK\17-19 TI-MSP432-190818\06-User\SD-TI-CD(V3.1)-210419\04-Soft\CH04-GPIO\GPIO-Output-Component(MSP432)-20210330\02_CPU\cmsis_gcc.h ****   \details Enables IRQ interrupts by clearing the I-bit in the CPSR.
  56:E:\16-21-BOOK\17-19 TI-MSP432-190818\06-User\SD-TI-CD(V3.1)-210419\04-Soft\CH04-GPIO\GPIO-Output-Component(MSP432)-20210330\02_CPU\cmsis_gcc.h ****            Can only be executed in Privileged modes.
  57:E:\16-21-BOOK\17-19 TI-MSP432-190818\06-User\SD-TI-CD(V3.1)-210419\04-Soft\CH04-GPIO\GPIO-Output-Component(MSP432)-20210330\02_CPU\cmsis_gcc.h ****  */
  58:E:\16-21-BOOK\17-19 TI-MSP432-190818\06-User\SD-TI-CD(V3.1)-210419\04-Soft\CH04-GPIO\GPIO-Output-Component(MSP432)-20210330\02_CPU\cmsis_gcc.h **** __attribute__( ( always_inline ) ) __STATIC_INLINE void __enable_irq(void)
  59:E:\16-21-BOOK\17-19 TI-MSP432-190818\06-User\SD-TI-CD(V3.1)-210419\04-Soft\CH04-GPIO\GPIO-Output-Component(MSP432)-20210330\02_CPU\cmsis_gcc.h **** {
  60:E:\16-21-BOOK\17-19 TI-MSP432-190818\06-User\SD-TI-CD(V3.1)-210419\04-Soft\CH04-GPIO\GPIO-Output-Component(MSP432)-20210330\02_CPU\cmsis_gcc.h ****   __ASM volatile ("cpsie i" : : : "memory");
  61:E:\16-21-BOOK\17-19 TI-MSP432-190818\06-User\SD-TI-CD(V3.1)-210419\04-Soft\CH04-GPIO\GPIO-Output-Component(MSP432)-20210330\02_CPU\cmsis_gcc.h **** }
  62:E:\16-21-BOOK\17-19 TI-MSP432-190818\06-User\SD-TI-CD(V3.1)-210419\04-Soft\CH04-GPIO\GPIO-Output-Component(MSP432)-20210330\02_CPU\cmsis_gcc.h **** 
  63:E:\16-21-BOOK\17-19 TI-MSP432-190818\06-User\SD-TI-CD(V3.1)-210419\04-Soft\CH04-GPIO\GPIO-Output-Component(MSP432)-20210330\02_CPU\cmsis_gcc.h **** 
  64:E:\16-21-BOOK\17-19 TI-MSP432-190818\06-User\SD-TI-CD(V3.1)-210419\04-Soft\CH04-GPIO\GPIO-Output-Component(MSP432)-20210330\02_CPU\cmsis_gcc.h **** /**
  65:E:\16-21-BOOK\17-19 TI-MSP432-190818\06-User\SD-TI-CD(V3.1)-210419\04-Soft\CH04-GPIO\GPIO-Output-Component(MSP432)-20210330\02_CPU\cmsis_gcc.h ****   \brief   Disable IRQ Interrupts
  66:E:\16-21-BOOK\17-19 TI-MSP432-190818\06-User\SD-TI-CD(V3.1)-210419\04-Soft\CH04-GPIO\GPIO-Output-Component(MSP432)-20210330\02_CPU\cmsis_gcc.h ****   \details Disables IRQ interrupts by setting the I-bit in the CPSR.
  67:E:\16-21-BOOK\17-19 TI-MSP432-190818\06-User\SD-TI-CD(V3.1)-210419\04-Soft\CH04-GPIO\GPIO-Output-Component(MSP432)-20210330\02_CPU\cmsis_gcc.h ****   Can only be executed in Privileged modes.
  68:E:\16-21-BOOK\17-19 TI-MSP432-190818\06-User\SD-TI-CD(V3.1)-210419\04-Soft\CH04-GPIO\GPIO-Output-Component(MSP432)-20210330\02_CPU\cmsis_gcc.h ****  */
  69:E:\16-21-BOOK\17-19 TI-MSP432-190818\06-User\SD-TI-CD(V3.1)-210419\04-Soft\CH04-GPIO\GPIO-Output-Component(MSP432)-20210330\02_CPU\cmsis_gcc.h **** __attribute__( ( always_inline ) ) __STATIC_INLINE void __disable_irq(void)
  70:E:\16-21-BOOK\17-19 TI-MSP432-190818\06-User\SD-TI-CD(V3.1)-210419\04-Soft\CH04-GPIO\GPIO-Output-Component(MSP432)-20210330\02_CPU\cmsis_gcc.h **** {
  71:E:\16-21-BOOK\17-19 TI-MSP432-190818\06-User\SD-TI-CD(V3.1)-210419\04-Soft\CH04-GPIO\GPIO-Output-Component(MSP432)-20210330\02_CPU\cmsis_gcc.h ****   __ASM volatile ("cpsid i" : : : "memory");
  43              		.loc 2 71 0
  44              		.syntax unified
  45              	@ 71 "E:\16-21-BOOK\17-19 TI-MSP432-190818\06-User\SD-TI-CD(V3.1)-210419\04-Soft\CH04-GPIO\GPIO-Out
  46 0006 72B6     		cpsid i
  47              	@ 0 "" 2
  48              		.thumb
  49              		.syntax unified
  50              	.LBE7:
  51              	.LBE6:
  18:srcc/isr.c    **** 	 //（1）变量声明
  19:srcc/isr.c    ****     uint8_t flag,ch;
  20:srcc/isr.c    ****     DISABLE_INTERRUPTS;      //关总中断
  21:srcc/isr.c    ****     //（2）未触发串口接收中断，退出
  22:srcc/isr.c    ****     if(!uart_get_re_int(UART_User)) goto UART_User_Handler_EXIT;
  52              		.loc 1 22 0
  53 0008 0320     		movs	r0, #3
  54 000a FFF7FEFF 		bl	uart_get_re_int
  55 000e 0346     		mov	r3, r0
  56 0010 002B     		cmp	r3, #0
  57 0012 14D0     		beq	.L5
  23:srcc/isr.c    ****     //（3）收到一个字节，读出该字节数据
  24:srcc/isr.c    ****     ch = uart_re1(UART_User,&flag);        //调用接收一个字节的函数
  58              		.loc 1 24 0
  59 0014 BB1D     		adds	r3, r7, #6
  60 0016 1946     		mov	r1, r3
  61 0018 0320     		movs	r0, #3
  62 001a FFF7FEFF 		bl	uart_re1
  63 001e 0346     		mov	r3, r0
  64 0020 FB71     		strb	r3, [r7, #7]
  25:srcc/isr.c    ****     if(!flag) goto UART_User_Handler_EXIT; //实际未收到数据，退出
  65              		.loc 1 25 0
  66 0022 BB79     		ldrb	r3, [r7, #6]	@ zero_extendqisi2
  67 0024 002B     		cmp	r3, #0
  68 0026 0CD0     		beq	.L6
  26:srcc/isr.c    ****   //（4）以下代码根据是否使用模板提供的User串口通信帧结构，及是否利用User串口
  27:srcc/isr.c    ****     //     进行带有设备序列号的进行程序更新而选择
  28:srcc/isr.c    ****     //（4.1）【自行组帧使用（开始)】
  29:srcc/isr.c    ****         uart_send1(UART_User,ch);     //例如，收到一个字节回发一个字节
  69              		.loc 1 29 0
  70 0028 FB79     		ldrb	r3, [r7, #7]	@ zero_extendqisi2
  71 002a 1946     		mov	r1, r3
  72 002c 0320     		movs	r0, #3
  73 002e FFF7FEFF 		bl	uart_send1
  30:srcc/isr.c    ****         uart_send1(UART_UPDATE,ch);     //例如，收到一个字节回发一个字节
  74              		.loc 1 30 0
  75 0032 FB79     		ldrb	r3, [r7, #7]	@ zero_extendqisi2
  76 0034 1946     		mov	r1, r3
  77 0036 0020     		movs	r0, #0
  78 0038 FFF7FEFF 		bl	uart_send1
  79 003c 02E0     		b	.L3
  80              	.L5:
  22:srcc/isr.c    ****     //（3）收到一个字节，读出该字节数据
  81              		.loc 1 22 0
  82 003e 00BF     		nop
  83 0040 00E0     		b	.L3
  84              	.L6:
  25:srcc/isr.c    ****   //（4）以下代码根据是否使用模板提供的User串口通信帧结构，及是否利用User串口
  85              		.loc 1 25 0
  86 0042 00BF     		nop
  87              	.L3:
  88              	.LBB8:
  89              	.LBB9:
  60:E:\16-21-BOOK\17-19 TI-MSP432-190818\06-User\SD-TI-CD(V3.1)-210419\04-Soft\CH04-GPIO\GPIO-Output-Component(MSP432)-20210330\02_CPU\cmsis_gcc.h **** }
  90              		.loc 2 60 0
  91              		.syntax unified
  92              	@ 60 "E:\16-21-BOOK\17-19 TI-MSP432-190818\06-User\SD-TI-CD(V3.1)-210419\04-Soft\CH04-GPIO\GPIO-Out
  93 0044 62B6     		cpsie i
  94              	@ 0 "" 2
  95              		.thumb
  96              		.syntax unified
  97              	.LBE9:
  98              	.LBE8:
  31:srcc/isr.c    ****        //    【自行组帧使用（结束)】
  32:srcc/isr.c    ****     //（4.2）【使用模板提供的User串口通信帧结构（开始)】
  33:srcc/isr.c    ****     /*
  34:srcc/isr.c    ****        User_SysFun(ch);          //利用User串口进行程序更新
  35:srcc/isr.c    ****        if (gcRecvLen == 0) goto UART_User_Handler_EXIT; 
  36:srcc/isr.c    ****        //至此，不仅收到完整帧，且序号比较也一致，可以根据命令字节gcRecvBuf[16]进行编程
  37:srcc/isr.c    ****        switch(gcRecvBuf[16])  //帧标识
  38:srcc/isr.c    ****        {
  39:srcc/isr.c    ****            case 1:  //0之外的数据，自身命令
  40:srcc/isr.c    ****            break;
  41:srcc/isr.c    ****            default:
  42:srcc/isr.c    ****            break;
  43:srcc/isr.c    ****         }
  44:srcc/isr.c    ****         gcRecvLen = 0;   //帧已经使用完毕，下次若收到一个字节，可以继续组帧
  45:srcc/isr.c    ****         //【使用模板提供的User串口通信帧结构（结束)】
  46:srcc/isr.c    ****      */
  47:srcc/isr.c    ****     //（5）【公共退出区】
  48:srcc/isr.c    **** UART_User_Handler_EXIT:
  49:srcc/isr.c    ****     ENABLE_INTERRUPTS;//开总中断
  50:srcc/isr.c    **** }
  99              		.loc 1 50 0
 100 0046 00BF     		nop
 101 0048 0837     		adds	r7, r7, #8
 102              		.cfi_def_cfa_offset 8
 103 004a BD46     		mov	sp, r7
 104              		.cfi_def_cfa_register 13
 105              		@ sp needed
 106 004c 80BD     		pop	{r7, pc}
 107              		.cfi_endproc
 108              	.LFE123:
 110              		.align	1
 111              		.global	User_SysFun
 112              		.syntax unified
 113              		.thumb
 114              		.thumb_func
 115              		.fpu fpv4-sp-d16
 117              	User_SysFun:
 118              	.LFB124:
  51:srcc/isr.c    **** 
  52:srcc/isr.c    **** 
  53:srcc/isr.c    **** 
  54:srcc/isr.c    **** //内部函数
  55:srcc/isr.c    **** void User_SysFun(uint8_t ch)
  56:srcc/isr.c    **** {
 119              		.loc 1 56 0
 120              		.cfi_startproc
 121              		@ args = 0, pretend = 0, frame = 8
 122              		@ frame_needed = 1, uses_anonymous_args = 0
 123 004e 80B5     		push	{r7, lr}
 124              		.cfi_def_cfa_offset 8
 125              		.cfi_offset 7, -8
 126              		.cfi_offset 14, -4
 127 0050 82B0     		sub	sp, sp, #8
 128              		.cfi_def_cfa_offset 16
 129 0052 00AF     		add	r7, sp, #0
 130              		.cfi_def_cfa_register 7
 131 0054 0346     		mov	r3, r0
 132 0056 FB71     		strb	r3, [r7, #7]
  57:srcc/isr.c    ****     //（1）收到的一个字节参与组帧
  58:srcc/isr.c    ****     if(gcRecvLen == 0)  gcRecvLen =useremuart_frame(ch,(uint8_t*)gcRecvBuf);
 133              		.loc 1 58 0
 134 0058 194B     		ldr	r3, .L16
 135 005a 1B88     		ldrh	r3, [r3]	@ movhi
 136 005c 9BB2     		uxth	r3, r3
 137 005e 002B     		cmp	r3, #0
 138 0060 08D1     		bne	.L8
 139              		.loc 1 58 0 is_stmt 0
 140 0062 FB79     		ldrb	r3, [r7, #7]	@ zero_extendqisi2
 141 0064 1749     		ldr	r1, .L16+4
 142 0066 1846     		mov	r0, r3
 143 0068 FFF7FEFF 		bl	useremuart_frame
 144 006c 0346     		mov	r3, r0
 145 006e 1A46     		mov	r2, r3
 146 0070 134B     		ldr	r3, .L16
 147 0072 1A80     		strh	r2, [r3]	@ movhi
 148              	.L8:
  59:srcc/isr.c    ****     //（2）字节进入组帧后，判断gcRecvLen=0？若为0，表示组帧尚未完成，
  60:srcc/isr.c    ****     //     下次收到一个字节，再继续组帧
  61:srcc/isr.c    ****     if(gcRecvLen == 0) goto User_SysFun_Exit;
 149              		.loc 1 61 0 is_stmt 1
 150 0074 124B     		ldr	r3, .L16
 151 0076 1B88     		ldrh	r3, [r3]	@ movhi
 152 0078 9BB2     		uxth	r3, r3
 153 007a 002B     		cmp	r3, #0
 154 007c 1AD0     		beq	.L15
  62:srcc/isr.c    ****     //（3）至此，gcRecvLen≠0,表示组帧完成，gcRecvLen为帧的长度,校验序列号后（与
  63:srcc/isr.c    ****     //     根据Flash中倒数一扇区开始的16字节进行比较）
  64:srcc/isr.c    ****     //     gcRecvBuf[16]进行跳转
  65:srcc/isr.c    ****     if(strncmp((char *)(gcRecvBuf),(char *)((MCU_SECTOR_NUM-1)*MCU_SECTORSIZE+
 155              		.loc 1 65 0
 156 007e 1022     		movs	r2, #16
 157 0080 4FF47C31 		mov	r1, #258048
 158 0084 0F48     		ldr	r0, .L16+4
 159 0086 FFF7FEFF 		bl	strncmp
 160 008a 0346     		mov	r3, r0
 161 008c 002B     		cmp	r3, #0
 162 008e 03D0     		beq	.L11
  66:srcc/isr.c    ****        MCU_FLASH_ADDR_START),16) != 0)
  67:srcc/isr.c    ****     {
  68:srcc/isr.c    ****         gcRecvLen = 0;         //恢复接收状态
 163              		.loc 1 68 0
 164 0090 0B4B     		ldr	r3, .L16
 165 0092 0022     		movs	r2, #0
 166 0094 1A80     		strh	r2, [r3]	@ movhi
  69:srcc/isr.c    ****         goto User_SysFun_Exit;
 167              		.loc 1 69 0
 168 0096 0EE0     		b	.L10
 169              	.L11:
  70:srcc/isr.c    ****     }
  71:srcc/isr.c    ****     //（4）至此，不仅收到完整帧，且序号比较也一致， 根据命令字节gcRecvBuf[16]进行跳转
  72:srcc/isr.c    ****     //若为User串口程序更新命令，则进行程序更新
  73:srcc/isr.c    ****     switch(gcRecvBuf[16])  //帧标识
 170              		.loc 1 73 0
 171 0098 0A4B     		ldr	r3, .L16+4
 172 009a 1B7C     		ldrb	r3, [r3, #16]
 173 009c DBB2     		uxtb	r3, r3
 174 009e 002B     		cmp	r3, #0
 175 00a0 00D0     		beq	.L13
  74:srcc/isr.c    ****     {
  75:srcc/isr.c    ****         case 0:
  76:srcc/isr.c    ****             SYSTEM_FUNCTION((uint8_t *)(gcRecvBuf+17));
  77:srcc/isr.c    ****             gcRecvLen = 0;         //恢复接收状态
  78:srcc/isr.c    ****         break;
  79:srcc/isr.c    ****         default:
  80:srcc/isr.c    ****         break;
 176              		.loc 1 80 0
 177 00a2 08E0     		b	.L10
 178              	.L13:
  76:srcc/isr.c    ****             gcRecvLen = 0;         //恢复接收状态
 179              		.loc 1 76 0
 180 00a4 084B     		ldr	r3, .L16+8
 181 00a6 1846     		mov	r0, r3
 182 00a8 FFF7FEFF 		bl	SYSTEM_FUNCTION
  77:srcc/isr.c    ****         break;
 183              		.loc 1 77 0
 184 00ac 044B     		ldr	r3, .L16
 185 00ae 0022     		movs	r2, #0
 186 00b0 1A80     		strh	r2, [r3]	@ movhi
  78:srcc/isr.c    ****         default:
 187              		.loc 1 78 0
 188 00b2 00E0     		b	.L10
 189              	.L15:
  61:srcc/isr.c    ****     //（3）至此，gcRecvLen≠0,表示组帧完成，gcRecvLen为帧的长度,校验序列号后（与
 190              		.loc 1 61 0
 191 00b4 00BF     		nop
 192              	.L10:
  81:srcc/isr.c    ****     }
  82:srcc/isr.c    **** User_SysFun_Exit:
  83:srcc/isr.c    ****     return;
 193              		.loc 1 83 0
 194 00b6 00BF     		nop
  84:srcc/isr.c    **** }
 195              		.loc 1 84 0
 196 00b8 0837     		adds	r7, r7, #8
 197              		.cfi_def_cfa_offset 8
 198 00ba BD46     		mov	sp, r7
 199              		.cfi_def_cfa_register 13
 200              		@ sp needed
 201 00bc 80BD     		pop	{r7, pc}
 202              	.L17:
 203 00be 00BF     		.align	2
 204              	.L16:
 205 00c0 00000000 		.word	gcRecvLen
 206 00c4 00000000 		.word	gcRecvBuf
 207 00c8 11000000 		.word	gcRecvBuf+17
 208              		.cfi_endproc
 209              	.LFE124:
 211              	.Letext0:
 212              		.file 3 "d:\\ahl-gec-ide(4.26)\272\254python\\gcc\\arm-none-eabi\\include\\machine\\_default_types
 213              		.file 4 "d:\\ahl-gec-ide(4.26)\272\254python\\gcc\\arm-none-eabi\\include\\sys\\_stdint.h"
 214              		.file 5 "E:\\16-21-BOOK\\17-19 TI-MSP432-190818\\06-User\\SD-TI-CD(V3.1)-210419\\04-Soft\\CH04-GPI
 215              		.file 6 "E:\\16-21-BOOK\\17-19 TI-MSP432-190818\\06-User\\SD-TI-CD(V3.1)-210419\\04-Soft\\CH04-GPI
 216              		.file 7 "E:\\16-21-BOOK\\17-19 TI-MSP432-190818\\06-User\\SD-TI-CD(V3.1)-210419\\04-Soft\\CH04-GPI
 217              		.file 8 "d:\\ahl-gec-ide(4.26)\272\254python\\gcc\\arm-none-eabi\\include\\sys\\lock.h"
 218              		.file 9 "d:\\ahl-gec-ide(4.26)\272\254python\\gcc\\arm-none-eabi\\include\\sys\\_types.h"
 219              		.file 10 "d:\\ahl-gec-ide(4.26)\272\254python\\gcc\\lib\\gcc\\arm-none-eabi\\7.2.1\\include\\stdde
 220              		.file 11 "d:\\ahl-gec-ide(4.26)\272\254python\\gcc\\arm-none-eabi\\include\\sys\\reent.h"
 221              		.file 12 "E:\\16-21-BOOK\\17-19 TI-MSP432-190818\\06-User\\SD-TI-CD(V3.1)-210419\\04-Soft\\CH04-GP
 222              		.file 13 "E:\\16-21-BOOK\\17-19 TI-MSP432-190818\\06-User\\SD-TI-CD(V3.1)-210419\\04-Soft\\CH04-GP
DEFINED SYMBOLS
                            *ABS*:00000000 isr.c
                            *COM*:00000004 component_fun
C:\Users\sumcu\AppData\Local\Temp\ccwIyaRw.s:18     .text:00000000 $t
C:\Users\sumcu\AppData\Local\Temp\ccwIyaRw.s:25     .text:00000000 EUSCIA3_IRQHandler
C:\Users\sumcu\AppData\Local\Temp\ccwIyaRw.s:117    .text:0000004e User_SysFun
C:\Users\sumcu\AppData\Local\Temp\ccwIyaRw.s:205    .text:000000c0 $d

UNDEFINED SYMBOLS
uart_get_re_int
uart_re1
uart_send1
useremuart_frame
strncmp
SYSTEM_FUNCTION
gcRecvLen
gcRecvBuf
