📄 isr.s
字号:
///////////////////////////////////////////////////////////////////////////////
// /
// IAR ANSI C/C++ Compiler V6.40.1.53790/W32 for ARM 09/Aug/2012 09:36:30 /
// Copyright 1999-2012 IAR Systems AB. /
// /
// Cpu mode = thumb /
// Endian = little /
// Source file = C:\Users\305030973\Desktop\M4 /
// example\03_uart_int\src\Sources\C\isr.c /
// Command line = "C:\Users\305030973\Desktop\M4 /
// example\03_uart_int\src\Sources\C\isr.c" -D IAR -D /
// TWR_K60N512 -lCN "C:\Users\305030973\Desktop\M4 /
// example\03_uart_int\bin\Flash\List\" -lB /
// "C:\Users\305030973\Desktop\M4 /
// example\03_uart_int\bin\Flash\List\" -o /
// "C:\Users\305030973\Desktop\M4 /
// example\03_uart_int\bin\Flash\Obj\" --no_cse /
// --no_unroll --no_inline --no_code_motion --no_tbaa /
// --no_clustering --no_scheduling --debug /
// --endian=little --cpu=Cortex-M4 -e --fpu=None /
// --dlib_config "C:\Program Files\IAR Systems\Embedded /
// Workbench 6.4_2\arm\INC\c\DLib_Config_Normal.h" -I /
// "C:\Users\305030973\Desktop\M4 /
// example\03_uart_int\src\Sources\H\" -I /
// "C:\Users\305030973\Desktop\M4 /
// example\03_uart_int\src\Sources\H\Component_H\" -I /
// "C:\Users\305030973\Desktop\M4 /
// example\03_uart_int\src\Sources\H\Frame_H\" -Ol /
// --use_c++_inline /
// List file = C:\Users\305030973\Desktop\M4 /
// example\03_uart_int\bin\Flash\List\isr.s /
// /
// /
///////////////////////////////////////////////////////////////////////////////
NAME isr
#define SHT_PROGBITS 0x1
EXTERN uart_re1
EXTERN uart_send1
PUBLIC uart3_isr
// C:\Users\305030973\Desktop\M4 example\03_uart_int\src\Sources\C\isr.c
// 1 //-------------------------------------------------------------------------*
// 2 // 文件名: isr.c *
// 3 // 说 明: 中断处理例程 *
// 4 //---------------苏州大学飞思卡尔嵌入式系统实验室2011年--------------------*
// 5
// 6 #include "includes.h"
// 7
// 8 //-------------------------------------------------------------------------*
// 9 //函数名: uart3_isr *
// 10 //功 能: 串口3数据接收中断例程 *
// 11 //说 明: 无 *
// 12 //-------------------------------------------------------------------------*
SECTION `.text`:CODE:NOROOT(2)
THUMB
// 13 void uart3_isr(void)
// 14 {
uart3_isr:
PUSH {R7,LR}
// 15 uint8 ch;
// 16 DisableInterrupts; //关总中断
CPSID i
// 17 //接收一个字节数据并回发
// 18 if(uart_re1 (UART3,&ch))
ADD R1,SP,#+0
LDR.N R0,??uart3_isr_0 ;; 0x4006d000
BL uart_re1
CMP R0,#+0
BEQ.N ??uart3_isr_1
// 19 uart_send1(UART3,ch);
LDRB R1,[SP, #+0]
LDR.N R0,??uart3_isr_0 ;; 0x4006d000
BL uart_send1
// 20 EnableInterrupts; //开总中断
??uart3_isr_1:
CPSIE i
// 21 }
POP {R0,PC} ;; return
Nop
DATA
??uart3_isr_0:
DC32 0x4006d000
SECTION `.iar_vfe_header`:DATA:REORDER:NOALLOC:NOROOT(2)
SECTION_TYPE SHT_PROGBITS, 0
DATA
DC32 0
SECTION __DLIB_PERTHREAD:DATA:REORDER:NOROOT(0)
SECTION_TYPE SHT_PROGBITS, 0
SECTION __DLIB_PERTHREAD_init:DATA:REORDER:NOROOT(0)
SECTION_TYPE SHT_PROGBITS, 0
END
//
// 36 bytes in section .text
//
// 36 bytes of CODE memory
//
//Errors: none
//Warnings: none
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -