user_qt.txt 12.6 KB
; generated by Component: ARM Compiler 5.06 update 6 (build 750) Tool: ArmCC [4d3637]
; commandline ArmCC [--c99 --list --split_sections --debug -c --asm --interleave -o.\flash\obj\user_qt.o --asm_dir=.\Flash\List\ --list_dir=.\Flash\List\ --depend=.\flash\obj\user_qt.d --cpu=Cortex-M4.fp --apcs=interwork -O1 --diag_suppress=9931,870 -I..\..\Libraries\CMSIS\Include -I..\..\Libraries\CMSIS\Device\ST\STM32F4xx\Include -I..\..\Libraries\STM32F4xx_StdPeriph_Driver\inc -I..\..\uCOS-III\uC-CPU -I..\..\uCOS-III\uC-LIB -I..\..\uCOS-III\uCOS-III\Ports -I..\..\uCOS-III\uCOS-III\Source -I..\..\uCOS-III\uC-CPU\ARM-Cortex-M4\RealView -I..\..\uCOS-III\uC-LIB\Ports\ARM-Cortex-M4\RealView -I..\..\uCOS-III\uCOS-III\Ports\ARM-Cortex-M4\Generic\RealView -I..\..\User -I..\..\User\bsp -I..\..\User\bsp\inc -I..\..\User\libapp -I..\..\RL-ARM\Config -I..\..\RL-ARM\Driver -I..\..\RL-ARM\RL-RTX\inc -I..\..\User\bsp\BSP -I..\..\RL-ARM\RL-CAN -I..\..\Libraries\DSP_LIB\Include -I..\..\MODBUS\modbus\rtu -I..\..\MODBUS\BARE\port -I..\..\MODBUS\modbus\include -I..\..\User\bsp\BSP -I..\..\PLC -I..\..\Avoid -I..\..\User\parameter -I..\..\User\LaserMotionCtr -I..\..\User\W5100S -I..\..\User\bsp -I.\RTE\_Flash -IC:\Users\软件部\AppData\Local\Arm\Packs\ARM\CMSIS\5.5.1\CMSIS\Core\Include -IC:\Users\软件部\AppData\Local\Arm\Packs\Keil\STM32F4xx_DFP\2.13.0\Drivers\CMSIS\Device\ST\STM32F4xx\Include -D__UVISION_VERSION=527 -D_RTE_ -DSTM32F407xx -DUSE_STDPERIPH_DRIVER -DSTM32F40_41xxx -D__RTX -D__FPU_USED=1 --omf_browse=.\flash\obj\user_qt.crf ..\..\User\parameter\user_QT.c]
                          THUMB

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

                  agvControlToPlc PROC
;;;29     
;;;30     void agvControlToPlc()
000000  b510              PUSH     {r4,lr}
;;;31     {
;;;32     //双字区
;;;33     	DataToQt[0]		=  HandlePlcData.SendPlcData.QR_X & 0XFFFF;
000002  4936              LDR      r1,|L1.220|
000004  4836              LDR      r0,|L1.224|
000006  6dca              LDR      r2,[r1,#0x5c]  ; HandlePlcData
000008  f8202c34          STRH     r2,[r0,#-0x34]
;;;34     	DataToQt[1]		=  (HandlePlcData.SendPlcData.QR_X >> 16) & 0XFFFF;
00000c  0c12              LSRS     r2,r2,#16
00000e  f8202c32          STRH     r2,[r0,#-0x32]
;;;35     	DataToQt[2]		=  HandlePlcData.SendPlcData.QR_Y & 0XFFFF;
000012  6e0a              LDR      r2,[r1,#0x60]  ; HandlePlcData
000014  f8202c30          STRH     r2,[r0,#-0x30]
;;;36     	DataToQt[3]		=  (HandlePlcData.SendPlcData.QR_Y >> 16) & 0XFFFF;	
000018  0c12              LSRS     r2,r2,#16
00001a  f8202c2e          STRH     r2,[r0,#-0x2e]
;;;37     	
;;;38     	//单字
;;;39     	DataToQt[40]		=  HandlePlcData.SendPlcData.QR_W * 100;
00001e  f8b12064          LDRH     r2,[r1,#0x64]  ; HandlePlcData
000022  eb0203c2          ADD      r3,r2,r2,LSL #3
000026  eb031202          ADD      r2,r3,r2,LSL #4
00002a  f64f73ff          MOV      r3,#0xffff
00002e  ea030282          AND      r2,r3,r2,LSL #2
000032  8382              STRH     r2,[r0,#0x1c]
;;;40     	DataToQt[41]		=  HandlePlcData.SendPlcData.CurrentID;
000034  f8b1204c          LDRH     r2,[r1,#0x4c]  ; HandlePlcData
000038  83c2              STRH     r2,[r0,#0x1e]
;;;41     	DataToQt[42]		=  HandlePlcData.SendPlcData.CurrentLandMark;
00003a  f8b1204a          LDRH     r2,[r1,#0x4a]  ; HandlePlcData
00003e  8402              STRH     r2,[r0,#0x20]
;;;42     	
;;;43     	DataToQt[43]		=  HandlePlcData.SendPlcData.FirstWheelAcSpeed;
000040  880a              LDRH     r2,[r1,#0]  ; HandlePlcData
000042  8442              STRH     r2,[r0,#0x22]
;;;44     	DataToQt[44]		=  HandlePlcData.SendPlcData.SecondWheelAcSpeed;
000044  884a              LDRH     r2,[r1,#2]  ; HandlePlcData
000046  8482              STRH     r2,[r0,#0x24]
;;;45     	
;;;46     	DataToQt[45]		=  HandlePlcData.SendPlcData.FirstWheelAcAngle * 100;
000048  ed910a0a          VLDR     s0,[r1,#0x28]
00004c  eddf0a25          VLDR     s1,|L1.228|
000050  ee200a20          VMUL.F32 s0,s0,s1
000054  eebc0ac0          VCVT.U32.F32 s0,s0
000058  ee102a10          VMOV     r2,s0
00005c  84c2              STRH     r2,[r0,#0x26]
;;;47     	DataToQt[46]		=  HandlePlcData.SendPlcData.SecondWheelAcAngle * 100;
00005e  ed910a0b          VLDR     s0,[r1,#0x2c]
000062  ee200a20          VMUL.F32 s0,s0,s1
000066  eebc0ac0          VCVT.U32.F32 s0,s0
00006a  ee102a10          VMOV     r2,s0
00006e  8502              STRH     r2,[r0,#0x28]
;;;48     	
;;;49     	DataToQt[47]		=  (short)HandlePlcData.SendPlcData.FirstWheelTarAngle * 100;
000070  ed910a0e          VLDR     s0,[r1,#0x38]
000074  eebd0ac0          VCVT.S32.F32 s0,s0
000078  ee102a10          VMOV     r2,s0
00007c  eb0204c2          ADD      r4,r2,r2,LSL #3
000080  eb041202          ADD      r2,r4,r2,LSL #4
000084  ea030282          AND      r2,r3,r2,LSL #2
000088  8542              STRH     r2,[r0,#0x2a]
;;;50     	DataToQt[48]		=  (short)HandlePlcData.SendPlcData.SecondWheelTarAngle * 100;
00008a  ed910a0f          VLDR     s0,[r1,#0x3c]
00008e  eebd0ac0          VCVT.S32.F32 s0,s0
000092  ee102a10          VMOV     r2,s0
000096  eb0204c2          ADD      r4,r2,r2,LSL #3
00009a  eb041202          ADD      r2,r4,r2,LSL #4
00009e  ea030282          AND      r2,r3,r2,LSL #2
0000a2  8582              STRH     r2,[r0,#0x2c]
;;;51     	
;;;52     	DataToQt[49]		=  HandlePlcData.SendPlcData.FirstMagneticGuidanceDataL;
0000a4  8a0a              LDRH     r2,[r1,#0x10]  ; HandlePlcData
0000a6  85c2              STRH     r2,[r0,#0x2e]
;;;53     	DataToQt[50]		=  HandlePlcData.SendPlcData.SecondMagneticGuidanceDataL;		
0000a8  8a4a              LDRH     r2,[r1,#0x12]  ; HandlePlcData
0000aa  8602              STRH     r2,[r0,#0x30]
;;;54     	DataToQt[51]		=  HandlePlcData.SendPlcData.ThirdMagneticGuidanceDataL;
0000ac  8a8a              LDRH     r2,[r1,#0x14]  ; HandlePlcData
0000ae  8642              STRH     r2,[r0,#0x32]
;;;55     	DataToQt[52]		=  HandlePlcData.SendPlcData.FourthMagneticGuidanceDataL;
0000b0  8aca              LDRH     r2,[r1,#0x16]  ; HandlePlcData
0000b2  8682              STRH     r2,[r0,#0x34]
;;;56     	
;;;57     	DataToQt[53]		=  HandlePlcData.SendPlcData.FirstMagneticGuidanceDataR;
0000b4  8b0a              LDRH     r2,[r1,#0x18]  ; HandlePlcData
0000b6  86c2              STRH     r2,[r0,#0x36]
;;;58     	DataToQt[54]		=  HandlePlcData.SendPlcData.SecondMagneticGuidanceDataR;		
0000b8  8b4a              LDRH     r2,[r1,#0x1a]  ; HandlePlcData
0000ba  8702              STRH     r2,[r0,#0x38]
;;;59     	DataToQt[55]		=  HandlePlcData.SendPlcData.ThirdMagneticGuidanceDataR;
0000bc  8b8a              LDRH     r2,[r1,#0x1c]  ; HandlePlcData
0000be  8742              STRH     r2,[r0,#0x3a]
;;;60     	DataToQt[56]		=  HandlePlcData.SendPlcData.FourthMagneticGuidanceDataR;	
0000c0  8bca              LDRH     r2,[r1,#0x1e]  ; HandlePlcData
0000c2  8782              STRH     r2,[r0,#0x3c]
;;;61     	
;;;62     	DataToQt[57]		=  (short)HandlePlcData.SendPlcData.AgvOffset * 10;
0000c4  ed910a1a          VLDR     s0,[r1,#0x68]
0000c8  eebd0ac0          VCVT.S32.F32 s0,s0
0000cc  ee101a10          VMOV     r1,s0
0000d0  eb010181          ADD      r1,r1,r1,LSL #2
0000d4  ea030141          AND      r1,r3,r1,LSL #1
0000d8  87c1              STRH     r1,[r0,#0x3e]
;;;63     	
;;;64     	//半字
;;;65     }
0000da  bd10              POP      {r4,pc}
;;;66     
                          ENDP

                  |L1.220|
                          DCD      HandlePlcData+0xa8
                  |L1.224|
                          DCD      ||.bss||+0x34
                  |L1.228|
0000e4  42c80000          DCFS     0x42c80000 ; 100

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

                  agvDriveInputData PROC
;;;66     
;;;67     void agvDriveInputData()
000000  4770              BX       lr
;;;68     {
;;;69     	
;;;70     }
;;;71     
                          ENDP


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

                  agvDriveOutputData PROC
;;;71     
;;;72     void agvDriveOutputData()
000000  4770              BX       lr
;;;73     {
;;;74     
;;;75     }
;;;76     
                          ENDP


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

                  agvPlcToControl PROC
;;;10     
;;;11     void agvPlcToControl()
000000  4915              LDR      r1,|L4.88|
;;;12     {
;;;13     	//双字区
;;;14     	DataToQt[100] = HandlePlcData.RecvPlcData.FrontWheelAcDis & 0xFFFF;
000002  4816              LDR      r0,|L4.92|
000004  6a0a              LDR      r2,[r1,#0x20]  ; HandlePlcData
000006  8002              STRH     r2,[r0,#0]
;;;15     	DataToQt[101] = (HandlePlcData.RecvPlcData.FrontWheelAcDis >> 16) & 0xFFFF;
000008  0c12              LSRS     r2,r2,#16
00000a  8042              STRH     r2,[r0,#2]
;;;16     	DataToQt[102] = HandlePlcData.RecvPlcData.BackWheelAcDis & 0xFFFF;
00000c  6a4a              LDR      r2,[r1,#0x24]  ; HandlePlcData
00000e  8082              STRH     r2,[r0,#4]
;;;17     	DataToQt[103] = (HandlePlcData.RecvPlcData.BackWheelAcDis >> 16) & 0xFFFF;
000010  0c12              LSRS     r2,r2,#16
000012  80c2              STRH     r2,[r0,#6]
;;;18     	//单字
;;;19     	DataToQt[140] = HandlePlcData.RecvPlcData.FirstWheelSetSpeed;
000014  880a              LDRH     r2,[r1,#0]  ; HandlePlcData
000016  f8a02050          STRH     r2,[r0,#0x50]
;;;20     	DataToQt[141] = HandlePlcData.RecvPlcData.SecondWheelSetSpeed;
00001a  884a              LDRH     r2,[r1,#2]  ; HandlePlcData
00001c  f8a02052          STRH     r2,[r0,#0x52]
;;;21     	
;;;22     	DataToQt[142] = (short)(HandlePlcData.RecvPlcData.FirstWheelTarAngle * 100);
000020  ed910a02          VLDR     s0,[r1,#8]
000024  eddf0a0e          VLDR     s1,|L4.96|
000028  ee200a20          VMUL.F32 s0,s0,s1
00002c  eebd0ac0          VCVT.S32.F32 s0,s0
000030  ee102a10          VMOV     r2,s0
000034  f8a02054          STRH     r2,[r0,#0x54]
;;;23     	DataToQt[143] = (short)(HandlePlcData.RecvPlcData.SecondWheelTarAngle * 100);
000038  ed910a03          VLDR     s0,[r1,#0xc]
00003c  ee200a20          VMUL.F32 s0,s0,s1
000040  eebd0ac0          VCVT.S32.F32 s0,s0
000044  ee102a10          VMOV     r2,s0
000048  f8a02056          STRH     r2,[r0,#0x56]
;;;24     	
;;;25     	//半字
;;;26     	DataToQt[180] = HandlePlcData.RecvPlcData.ManualAutomaticSignal;
00004c  f891104c          LDRB     r1,[r1,#0x4c]  ; HandlePlcData
000050  f8a010a0          STRH     r1,[r0,#0xa0]
;;;27     	
;;;28     }
000054  4770              BX       lr
;;;29     
                          ENDP

000056  0000              DCW      0x0000
                  |L4.88|
                          DCD      HandlePlcData
                  |L4.92|
                          DCD      ||.bss||+0xc8
                  |L4.96|
000060  42c80000          DCFS     0x42c80000 ; 100

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

                  agvSensorTest PROC
;;;76     
;;;77     void agvSensorTest()
000000  4770              BX       lr
;;;78     {
;;;79     
;;;80     
;;;81     }
                          ENDP


                          AREA ||.bss||, DATA, NOINIT, ALIGN=1

                  DataToQt
                          %        1000

                          AREA ||area_number.8||, DATA, NOINIT, ALIGN=2

                          EXPORTAS ||area_number.8||, ||.bss||
                  SendPlc
                          %        200

                          AREA ||area_number.9||, DATA, NOINIT, ALIGN=2

                          EXPORTAS ||area_number.9||, ||.bss||
                  RecvPlc
                          %        200

                          AREA ||area_number.10||, DATA, NOINIT, ALIGN=1

                          EXPORTAS ||area_number.10||, ||.bss||
                  DriveInput
                          %        60

                          AREA ||area_number.11||, DATA, NOINIT, ALIGN=2

                          EXPORTAS ||area_number.11||, ||.bss||
                  DriveOutput
                          %        136

;*** Start embedded assembler ***

#line 1 "..\\..\\User\\parameter\\user_QT.c"
	AREA ||.rev16_text||, CODE
	THUMB
	EXPORT |__asm___9_user_QT_c_DataToQt____REV16|
#line 129 "..\\..\\Libraries\\CMSIS\\Include\\core_cmInstr.h"
|__asm___9_user_QT_c_DataToQt____REV16| PROC
#line 130

 rev16 r0, r0
 bx lr
	ENDP
	AREA ||.revsh_text||, CODE
	THUMB
	EXPORT |__asm___9_user_QT_c_DataToQt____REVSH|
#line 144
|__asm___9_user_QT_c_DataToQt____REVSH| PROC
#line 145

 revsh r0, r0
 bx lr
	ENDP
	AREA ||.rrx_text||, CODE
	THUMB
	EXPORT |__asm___9_user_QT_c_DataToQt____RRX|
#line 300
|__asm___9_user_QT_c_DataToQt____RRX| PROC
#line 301

 rrx r0, r0
 bx lr
	ENDP

;*** End   embedded assembler ***