?? main.s79
字號:
//////////////////////////////////////////////////////////////////////////////
// /
// IAR ARM ANSI C/C++ Compiler V4.40A/W32 17/Jan/2007 16:16:24 /
// Copyright 1999-2005 IAR Systems. All rights reserved. /
// /
// Cpu mode = arm /
// Endian = little /
// Stack alignment = 4 /
// Source file = D:\lilian\STR71X\application note\IAP using /
// UART\an2078_IAR(forum)\an2078\IAP_V2.0\user\main.c /
// Command line = "D:\lilian\STR71X\application note\IAP using /
// UART\an2078_IAR(forum)\an2078\IAP_V2.0\user\main.c" /
// -lC "D:\lilian\STR71X\application note\IAP using /
// UART\an2078_IAR(forum)\an2078\IAP_V2.0\user\Debug\L /
// ist\" -lA "D:\lilian\STR71X\application note\IAP /
// using UART\an2078_IAR(forum)\an2078\IAP_V2.0\user\D /
// ebug\List\" -o "D:\lilian\STR71X\application /
// note\IAP using UART\an2078_IAR(forum)\an2078\IAP_V2 /
// .0\user\Debug\Obj\" -z2 --no_cse --no_unroll /
// --no_inline --no_code_motion --no_tbaa /
// --no_clustering --no_scheduling --debug --cpu_mode /
// arm --endian little --cpu ARM7TDMI --stack_align 4 /
// -e --fpu None --dlib_config "C:\Program Files\IAR /
// Systems\Embedded Workbench /
// 4.0\arm\LIB\dl4tpannl8n.h" -I /
// "D:\lilian\STR71X\application note\IAP using /
// UART\an2078_IAR(forum)\an2078\IAP_V2.0\user\..\incl /
// ude\" -I "D:\lilian\STR71X\application note\IAP /
// using UART\an2078_IAR(forum)\an2078\IAP_V2.0\user\. /
// .\common\" -I ROJ_DIR$\ -I "C:\Program Files\IAR /
// Systems\Embedded Workbench 4.0\arm\INC\" /
// List file = D:\lilian\STR71X\application note\IAP using /
// UART\an2078_IAR(forum)\an2078\IAP_V2.0\user\Debug\L /
// ist\main.s79 /
// /
// /
//////////////////////////////////////////////////////////////////////////////
NAME main
RTMODEL "StackAlign4", "USED"
RTMODEL "__cpu_mode", "__pcs__arm"
RTMODEL "__data_model", "absolute"
RTMODEL "__dlib_file_descriptor", "0"
RTMODEL "__endian", "little"
RTMODEL "__rt_version", "6"
RSEG CSTACK:DATA:NOROOT(2)
MULTWEAK ??GPIO_Config??rA
MULTWEAK ??Main_Menu??rA
MULTWEAK ??RCCU_Div2Config??rA
MULTWEAK ??RCCU_FlagStatus??rA
MULTWEAK ??RCCU_PLL1Config??rA
MULTWEAK ??RCCU_RCLKSourceConfig??rA
MULTWEAK ??SerialPutString??rA
MULTWEAK ??UART_Config??rA
MULTWEAK ??UART_FifoConfig??rA
MULTWEAK ??UART_FifoReset??rA
MULTWEAK ??UART_LoopBackConfig??rA
MULTWEAK ??UART_OnOffConfig??rA
MULTWEAK ??UART_RxConfig??rA
FUNCTION IAP_Init,0203H
LOCFRAME CSTACK, 8, STACK
PUBWEAK RCCU_Div2Config
FUNCTION RCCU_Div2Config,0203H
PUBWEAK RCCU_FlagStatus
FUNCTION RCCU_FlagStatus,0203H
PUBLIC main
FUNCTION main,0a03H
LOCFRAME CSTACK, 4, STACK
CFI Names cfiNames0
CFI StackFrame CFA R13 HUGEDATA
CFI Resource R0:32, R1:32, R2:32, R3:32, R4:32, R5:32, R6:32, R7:32
CFI Resource R8:32, R9:32, R10:32, R11:32, R12:32, CPSR:32, R13:32
CFI Resource R14:32, SPSR:32
CFI VirtualResource ?RET:32
CFI EndNames cfiNames0
CFI Common cfiCommon0 Using cfiNames0
CFI CodeAlign 4
CFI DataAlign 4
CFI ReturnAddress ?RET CODE
CFI CFA R13+0
CFI R0 Undefined
CFI R1 Undefined
CFI R2 Undefined
CFI R3 Undefined
CFI R4 SameValue
CFI R5 SameValue
CFI R6 SameValue
CFI R7 SameValue
CFI R8 SameValue
CFI R9 SameValue
CFI R10 SameValue
CFI R11 SameValue
CFI R12 Undefined
CFI CPSR SameValue
CFI R14 Undefined
CFI SPSR SameValue
CFI ?RET R14
CFI EndCommon cfiCommon0
GPIO_Config SYMBOL "GPIO_Config"
Main_Menu SYMBOL "Main_Menu"
RCCU_PLL1Config SYMBOL "RCCU_PLL1Config"
RCCU_RCLKSourceConfig SYMBOL "RCCU_RCLKSourceConfig"
SerialPutString SYMBOL "SerialPutString"
UART_Config SYMBOL "UART_Config"
UART_FifoConfig SYMBOL "UART_FifoConfig"
UART_FifoReset SYMBOL "UART_FifoReset"
UART_LoopBackConfig SYMBOL "UART_LoopBackConfig"
UART_OnOffConfig SYMBOL "UART_OnOffConfig"
UART_RxConfig SYMBOL "UART_RxConfig"
??GPIO_Config??rA SYMBOL "??rA", GPIO_Config
??Main_Menu??rA SYMBOL "??rA", Main_Menu
RCCU_Div2Config SYMBOL "RCCU_Div2Config"
??RCCU_Div2Config??rA SYMBOL "??rA", RCCU_Div2Config
RCCU_FlagStatus SYMBOL "RCCU_FlagStatus"
??RCCU_FlagStatus??rA SYMBOL "??rA", RCCU_FlagStatus
??RCCU_PLL1Config??rA SYMBOL "??rA", RCCU_PLL1Config
??RCCU_RCLKSourceConfig??rA SYMBOL "??rA", RCCU_RCLKSourceConfig
??SerialPutString??rA SYMBOL "??rA", SerialPutString
??UART_Config??rA SYMBOL "??rA", UART_Config
??UART_FifoConfig??rA SYMBOL "??rA", UART_FifoConfig
??UART_FifoReset??rA SYMBOL "??rA", UART_FifoReset
??UART_LoopBackConfig??rA SYMBOL "??rA", UART_LoopBackConfig
??UART_OnOffConfig??rA SYMBOL "??rA", UART_OnOffConfig
??UART_RxConfig??rA SYMBOL "??rA", UART_RxConfig
EXTERN GPIO_Config
FUNCTION GPIO_Config,0202H
EXTERN Main_Menu
FUNCTION Main_Menu,0202H
EXTERN RCCU_PLL1Config
FUNCTION RCCU_PLL1Config,0202H
EXTERN RCCU_RCLKSourceConfig
FUNCTION RCCU_RCLKSourceConfig,0202H
EXTERN SerialPutString
FUNCTION SerialPutString,0202H
EXTERN UART_Config
FUNCTION UART_Config,0202H
EXTERN UART_FifoConfig
FUNCTION UART_FifoConfig,0202H
EXTERN UART_FifoReset
FUNCTION UART_FifoReset,0202H
EXTERN UART_LoopBackConfig
FUNCTION UART_LoopBackConfig,0202H
EXTERN UART_OnOffConfig
FUNCTION UART_OnOffConfig,0202H
EXTERN UART_RxConfig
FUNCTION UART_RxConfig,0202H
// D:\lilian\STR71X\application note\IAP using UART\an2078_IAR(forum)\an2078\IAP_V2.0\user\main.c
// 1 /******************** (C) COPYRIGHT 2006 STMicroelectronics ********************
// 2 * File Name : main.c
// 3 * Author : MCD Application Team
// 4 * Date First Issued : 10/25/2004
// 5 * Description : The main program
// 6 ********************************************************************************
// 7 * History:
// 8 * 02/01/2006 : IAP Version 2.0
// 9 * 11/24/2004 : IAP Version 1.0
// 10 ********************************************************************************
// 11 THE PRESENT SOFTWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS WITH
// 12 CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE TIME. AS A
// 13 RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY DIRECT, INDIRECT OR
// 14 CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING FROM THE CONTENT OF SUCH
// 15 SOFTWARE AND/OR THE USE MADE BY CUSTOMERS OF THE CODING INFORMATION CONTAINED HEREIN
// 16 IN CONNECTION WITH THEIR PRODUCTS.
// 17 ********************************************************************************/
// 18 #include "common.h"
RSEG CODE:CODE:NOROOT(2)
CFI Block cfiBlock0 Using cfiCommon0
CFI Function RCCU_Div2Config
ARM
// __??Code32?? __code __arm __atpcs void RCCU_Div2Config(enum <unnamed>)
RCCU_Div2Config:
CMP R0,#+1
BNE ??RCCU_Div2Config_0
MOV R1,#-1610612728
MOV R2,#-1610612728
LDR R2,[R2, #+0]
ORRS R2,R2,#0x8000
STR R2,[R1, #+0]
B ??RCCU_Div2Config_1
??RCCU_Div2Config_0:
MOV R1,#-1610612728
MOV R2,#-1610612728
LDR R2,[R2, #+0]
BICS R2,R2,#0x8000
STR R2,[R1, #+0]
??RCCU_Div2Config_1:
MOV PC,LR ;; return
CFI EndBlock cfiBlock0
RSEG CODE:CODE:NOROOT(2)
CFI Block cfiBlock1 Using cfiCommon0
CFI Function RCCU_FlagStatus
ARM
// __??Code32?? __code __arm __atpcs FlagStatus RCCU_FlagStatus(RCCU_Flags)
RCCU_FlagStatus:
MOV R1,#-1610612728
LDR R1,[R1, #+0]
TST R0,R1
BNE ??RCCU_FlagStatus_0
MOV R0,#+0
B ??RCCU_FlagStatus_1
??RCCU_FlagStatus_0:
MOV R0,#+1
??RCCU_FlagStatus_1:
MOV PC,LR ;; return
CFI EndBlock cfiBlock1
// 19 #include "rccu.h"
// 20
// 21
// 22 #define UART0_Rx_Pin (0x0001<<8) /* TQFP 64: pin N?63 , TQFP 144 pin N?143 */
// 23 #define UART0_Tx_Pin (0x0001<<9) /* TQFP 64: pin N?64 , TQFP 144 pin N?144 */
// 24
// 25 /*******************************************************************************
// 26 * Function Name : IAP_Init
// 27 * Description : Initilize the IAP
// 28 * Input : None
// 29 * Return : None
// 30 *******************************************************************************/
RSEG CODE:CODE:NOROOT(2)
CFI Block cfiBlock2 Using cfiCommon0
CFI Function IAP_Init
ARM
// 31 static void IAP_Init(void)
// 32 {
IAP_Init:
PUSH {LR}
CFI ?RET Frame(CFA, -4)
CFI CFA R13+4
// 33 /* Set Main Freq to 32MHz */
// 34 RCCU_Div2Config(ENABLE);
MOV R0,#+1
_BLF RCCU_Div2Config,??RCCU_Div2Config??rA
// 35 RCCU_PLL1Config(RCCU_PLL1_Mul_12,RCCU_Div_3);
MOV R1,#+2
MOV R0,#+1
_BLF RCCU_PLL1Config,??RCCU_PLL1Config??rA
// 36 /* Wait PLL to lock */
// 37 while(RCCU_FlagStatus(RCCU_PLL1_LOCK)==RESET);
??IAP_Init_0:
MOV R0,#+2
_BLF RCCU_FlagStatus,??RCCU_FlagStatus??rA
CMP R0,#+0
BEQ ??IAP_Init_0
// 38 /* Select the PLL1 as clock source */
// 39 RCCU_RCLKSourceConfig(RCCU_PLL1_Output);
MOV R0,#+0
_BLF RCCU_RCLKSourceConfig,??RCCU_RCLKSourceConfig??rA
// 40 /* Configure the GPIO0 pins */
// 41 GPIO_Config(GPIO0, UART0_Rx_Pin, GPIO_IN_TRI_CMOS);
MOV R2,#+2
MOV R1,#+256
MOV R0,#-536870912
ORR R0,R0,#0x3000
_BLF GPIO_Config,??GPIO_Config??rA
// 42 GPIO_Config(GPIO0, UART0_Tx_Pin, GPIO_AF_PP);
MOV R2,#+7
MOV R1,#+512
MOV R0,#-536870912
ORR R0,R0,#0x3000
_BLF GPIO_Config,??GPIO_Config??rA
// 43 /* Configure the UART 0 */
// 44 UART_OnOffConfig(UART0, ENABLE); /* Turn the UART0 baud generator on */
MOV R1,#+1
MOV R0,#-1073741824
ORR R0,R0,#0x4000
_BLF UART_OnOffConfig,??UART_OnOffConfig??rA
// 45 UART_FifoConfig (UART0, DISABLE); /* Disable the FIFOs */
MOV R1,#+0
MOV R0,#-1073741824
ORR R0,R0,#0x4000
_BLF UART_FifoConfig,??UART_FifoConfig??rA
// 46 UART_FifoReset(UART0 , UART_RxFIFO); /* Reset the UART_RxFIFO */
MOV R1,#+0
MOV R0,#-1073741824
ORR R0,R0,#0x4000
_BLF UART_FifoReset,??UART_FifoReset??rA
// 47 UART_FifoReset(UART0 , UART_TxFIFO); /* Reset the UART_TxFIFO */
MOV R1,#+1
MOV R0,#-1073741824
ORR R0,R0,#0x4000
_BLF UART_FifoReset,??UART_FifoReset??rA
// 48 UART_LoopBackConfig(UART0 , DISABLE); /* Disable the Loop Back */
MOV R1,#+0
MOV R0,#-1073741824
ORR R0,R0,#0x4000
_BLF UART_LoopBackConfig,??UART_LoopBackConfig??rA
// 49
// 50 /* Configure the UART0 as following: */
// 51 /* - Baudrate = 115200Bps */
// 52 /* - No parity */
// 53 /* - 8 data bits */
// 54 /* - 1 stop bit */
// 55 UART_Config(UART0,115200,UART_NO_PARITY,UART_1_StopBits,UARTM_8D);
MOV R0,#+1
PUSH {R0}
CFI CFA R13+8
MOV R3,#+8
MOV R2,#+33
MOV R1,#+65536
ORR R1,R1,#0xC200
MOV R0,#-1073741824
ORR R0,R0,#0x4000
_BLF UART_Config,??UART_Config??rA
ADD SP,SP,#+4 ;; stack cleaning
CFI CFA R13+4
// 56 UART_RxConfig(UART0 ,ENABLE);
MOV R1,#+1
MOV R0,#-1073741824
ORR R0,R0,#0x4000
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -