From a5662eea9255049be8f6dbce72fabbdcb493d4dd Mon Sep 17 00:00:00 2001 From: database-mysql Date: Sat, 27 Dec 2025 19:04:08 +0800 Subject: [PATCH] add code --- INTRINS.h | 40 + Listings/STARTUP.lst | 253 +++++ Listings/main.lst | 115 +++ Listings/main.m51 | 226 +++++ Objects/STARTUP._ia | 1 + Objects/STARTUP.obj | Bin 0 -> 828 bytes Objects/main | Bin 0 -> 4453 bytes Objects/main.__i | 1 + Objects/main.build_log.htm | 49 + Objects/main.hex | 26 + Objects/main.lnp | 4 + Objects/main.obj | Bin 0 -> 4094 bytes REG51.h | 91 ++ STARTUP.A51 | 198 ++++ Target 1.BAT | 10 + main.c | 88 ++ main.uvgui.Administrator | 1914 ++++++++++++++++++++++++++++++++++++ main.uvopt | 221 +++++ main.uvproj | 405 ++++++++ 19 files changed, 3642 insertions(+) create mode 100644 INTRINS.h create mode 100644 Listings/STARTUP.lst create mode 100644 Listings/main.lst create mode 100644 Listings/main.m51 create mode 100644 Objects/STARTUP._ia create mode 100644 Objects/STARTUP.obj create mode 100644 Objects/main create mode 100644 Objects/main.__i create mode 100644 Objects/main.build_log.htm create mode 100644 Objects/main.hex create mode 100644 Objects/main.lnp create mode 100644 Objects/main.obj create mode 100644 REG51.h create mode 100644 STARTUP.A51 create mode 100644 Target 1.BAT create mode 100644 main.c create mode 100644 main.uvgui.Administrator create mode 100644 main.uvopt create mode 100644 main.uvproj diff --git a/INTRINS.h b/INTRINS.h new file mode 100644 index 0000000..31f7f9f --- /dev/null +++ b/INTRINS.h @@ -0,0 +1,40 @@ +/*-------------------------------------------------------------------------- +INTRINS.H + +Intrinsic functions for C51. +Copyright (c) 1988-2010 Keil Elektronik GmbH and ARM Germany GmbH +All rights reserved. +--------------------------------------------------------------------------*/ + +#ifndef __INTRINS_H__ +#define __INTRINS_H__ + +#pragma SAVE + +#if defined (__CX2__) +#pragma FUNCTIONS(STATIC) +/* intrinsic functions are reentrant, but need static attribute */ +#endif + +extern void _nop_ (void); +extern bit _testbit_ (bit); +extern unsigned char _cror_ (unsigned char, unsigned char); +extern unsigned int _iror_ (unsigned int, unsigned char); +extern unsigned long _lror_ (unsigned long, unsigned char); +extern unsigned char _crol_ (unsigned char, unsigned char); +extern unsigned int _irol_ (unsigned int, unsigned char); +extern unsigned long _lrol_ (unsigned long, unsigned char); +extern unsigned char _chkfloat_(float); +#if defined (__CX2__) +extern int abs (int); +extern void _illop_ (void); +#endif +#if !defined (__CX2__) +extern void _push_ (unsigned char _sfr); +extern void _pop_ (unsigned char _sfr); +#endif + +#pragma RESTORE + +#endif + diff --git a/Listings/STARTUP.lst b/Listings/STARTUP.lst new file mode 100644 index 0000000..d9f114b --- /dev/null +++ b/Listings/STARTUP.lst @@ -0,0 +1,253 @@ +A51 MACRO ASSEMBLER STARTUP 12/27/2025 19:02:37 PAGE 1 + + +MACRO ASSEMBLER A51 V8.2.7.0 +OBJECT MODULE PLACED IN .\Objects\STARTUP.obj +ASSEMBLER INVOKED BY: D:\keli\uv5_arm\C51\BIN\A51.EXE STARTUP.A51 SET(SMALL) DEBUG PRINT(.\Listings\STARTUP.lst) OBJECT( + .\Objects\STARTUP.obj) EP + +LOC OBJ LINE SOURCE + + 1 $nomod51 + 2 ;------------------------------------------------------------------------------ + 3 ; This file is part of the C51 Compiler package + 4 ; Copyright (c) 1988-2005 Keil Elektronik GmbH and Keil Software, Inc. + 5 ; Version 8.01 + 6 ; + 7 ; *** <<< Use Configuration Wizard in Context Menu >>> *** + 8 ;------------------------------------------------------------------------------ + 9 ; STARTUP.A51: This code is executed after processor reset. + 10 ; + 11 ; To translate this file use A51 with the following invocation: + 12 ; + 13 ; A51 STARTUP.A51 + 14 ; + 15 ; To link the modified STARTUP.OBJ file to your application use the following + 16 ; Lx51 invocation: + 17 ; + 18 ; Lx51 your object file list, STARTUP.OBJ controls + 19 ; + 20 ;------------------------------------------------------------------------------ + 21 ; + 22 ; User-defined Power-On Initialization of Memory + 23 ; + 24 ; With the following EQU statements the initialization of memory + 25 ; at processor reset can be defined: + 26 ; + 27 ; IDATALEN: IDATA memory size <0x0-0x100> + 28 ; Note: The absolute start-address of IDATA memory is always 0 + 29 ; The IDATA space overlaps physically the DATA and BIT areas. + 0080 30 IDATALEN EQU 80H + 31 ; + 32 ; XDATASTART: XDATA memory start address <0x0-0xFFFF> + 33 ; The absolute start address of XDATA memory + 0000 34 XDATASTART EQU 0 + 35 ; + 36 ; XDATALEN: XDATA memory size <0x0-0xFFFF> + 37 ; The length of XDATA memory in bytes. + 0000 38 XDATALEN EQU 0 + 39 ; + 40 ; PDATASTART: PDATA memory start address <0x0-0xFFFF> + 41 ; The absolute start address of PDATA memory + 0000 42 PDATASTART EQU 0H + 43 ; + 44 ; PDATALEN: PDATA memory size <0x0-0xFF> + 45 ; The length of PDATA memory in bytes. + 0000 46 PDATALEN EQU 0H + 47 ; + 48 ; + 49 ;------------------------------------------------------------------------------ + 50 ; + 51 ; Reentrant Stack Initialization + 52 ; + 53 ; The following EQU statements define the stack pointer for reentrant + 54 ; functions and initialized it: + 55 ; + 56 ; Stack Space for reentrant functions in the SMALL model. + 57 ; IBPSTACK: Enable SMALL model reentrant stack + A51 MACRO ASSEMBLER STARTUP 12/27/2025 19:02:37 PAGE 2 + + 58 ; Stack space for reentrant functions in the SMALL model. + 0000 59 IBPSTACK EQU 0 ; set to 1 if small reentrant is used. + 60 ; IBPSTACKTOP: End address of SMALL model stack <0x0-0xFF> + 61 ; Set the top of the stack to the highest location. + 0100 62 IBPSTACKTOP EQU 0xFF +1 ; default 0FFH+1 + 63 ; + 64 ; + 65 ; Stack Space for reentrant functions in the LARGE model. + 66 ; XBPSTACK: Enable LARGE model reentrant stack + 67 ; Stack space for reentrant functions in the LARGE model. + 0000 68 XBPSTACK EQU 0 ; set to 1 if large reentrant is used. + 69 ; XBPSTACKTOP: End address of LARGE model stack <0x0-0xFFFF> + 70 ; Set the top of the stack to the highest location. + 0000 71 XBPSTACKTOP EQU 0xFFFF +1 ; default 0FFFFH+1 + 72 ; + 73 ; + 74 ; Stack Space for reentrant functions in the COMPACT model. + 75 ; PBPSTACK: Enable COMPACT model reentrant stack + 76 ; Stack space for reentrant functions in the COMPACT model. + 0000 77 PBPSTACK EQU 0 ; set to 1 if compact reentrant is used. + 78 ; + 79 ; PBPSTACKTOP: End address of COMPACT model stack <0x0-0xFFFF> + 80 ; Set the top of the stack to the highest location. + 0100 81 PBPSTACKTOP EQU 0xFF +1 ; default 0FFH+1 + 82 ; + 83 ; + 84 ;------------------------------------------------------------------------------ + 85 ; + 86 ; Memory Page for Using the Compact Model with 64 KByte xdata RAM + 87 ; Compact Model Page Definition + 88 ; + 89 ; Define the XDATA page used for PDATA variables. + 90 ; PPAGE must conform with the PPAGE set in the linker invocation. + 91 ; + 92 ; Enable pdata memory page initalization + 0000 93 PPAGEENABLE EQU 0 ; set to 1 if pdata object are used. + 94 ; + 95 ; PPAGE number <0x0-0xFF> + 96 ; uppermost 256-byte address of the page used for PDATA variables. + 0000 97 PPAGE EQU 0 + 98 ; + 99 ; SFR address which supplies uppermost address byte <0x0-0xFF> + 100 ; most 8051 variants use P2 as uppermost address byte + 00A0 101 PPAGE_SFR DATA 0A0H + 102 ; + 103 ; + 104 ;------------------------------------------------------------------------------ + 105 + 106 ; Standard SFR Symbols + 00E0 107 ACC DATA 0E0H + 00F0 108 B DATA 0F0H + 0081 109 SP DATA 81H + 0082 110 DPL DATA 82H + 0083 111 DPH DATA 83H + 112 + 113 NAME ?C_STARTUP + 114 + 115 + 116 ?C_C51STARTUP SEGMENT CODE + 117 ?STACK SEGMENT IDATA + 118 +---- 119 RSEG ?STACK +0000 120 DS 1 + 121 + 122 EXTRN CODE (?C_START) + 123 PUBLIC ?C_STARTUP + A51 MACRO ASSEMBLER STARTUP 12/27/2025 19:02:37 PAGE 3 + + 124 +---- 125 CSEG AT 0 +0000 020000 F 126 ?C_STARTUP: LJMP STARTUP1 + 127 +---- 128 RSEG ?C_C51STARTUP + 129 +0000 130 STARTUP1: + 131 + 132 IF IDATALEN <> 0 +0000 787F 133 MOV R0,#IDATALEN - 1 +0002 E4 134 CLR A +0003 F6 135 IDATALOOP: MOV @R0,A +0004 D8FD 136 DJNZ R0,IDATALOOP + 137 ENDIF + 138 + 139 IF XDATALEN <> 0 + MOV DPTR,#XDATASTART + MOV R7,#LOW (XDATALEN) + IF (LOW (XDATALEN)) <> 0 + MOV R6,#(HIGH (XDATALEN)) +1 + ELSE + MOV R6,#HIGH (XDATALEN) + ENDIF + CLR A + XDATALOOP: MOVX @DPTR,A + INC DPTR + DJNZ R7,XDATALOOP + DJNZ R6,XDATALOOP + ENDIF + 153 + 154 IF PPAGEENABLE <> 0 + MOV PPAGE_SFR,#PPAGE + ENDIF + 157 + 158 IF PDATALEN <> 0 + MOV R0,#LOW (PDATASTART) + MOV R7,#LOW (PDATALEN) + CLR A + PDATALOOP: MOVX @R0,A + INC R0 + DJNZ R7,PDATALOOP + ENDIF + 166 + 167 IF IBPSTACK <> 0 + EXTRN DATA (?C_IBP) + + MOV ?C_IBP,#LOW IBPSTACKTOP + ENDIF + 172 + 173 IF XBPSTACK <> 0 + EXTRN DATA (?C_XBP) + + MOV ?C_XBP,#HIGH XBPSTACKTOP + MOV ?C_XBP+1,#LOW XBPSTACKTOP + ENDIF + 179 + 180 IF PBPSTACK <> 0 + EXTRN DATA (?C_PBP) + MOV ?C_PBP,#LOW PBPSTACKTOP + ENDIF + 184 +0006 758100 F 185 MOV SP,#?STACK-1 + 186 + 187 ; This code is required if you use L51_BANK.A51 with Banking Mode 4 + 188 ; Code Banking + 189 ; Select Bank 0 for L51_BANK.A51 Mode 4 + A51 MACRO ASSEMBLER STARTUP 12/27/2025 19:02:37 PAGE 4 + + 190 + + + + + 195 ; +0009 020000 F 196 LJMP ?C_START + 197 + 198 END + A51 MACRO ASSEMBLER STARTUP 12/27/2025 19:02:37 PAGE 5 + +SYMBOL TABLE LISTING +------ ----- ------- + + +N A M E T Y P E V A L U E ATTRIBUTES + +?C_C51STARTUP. . . C SEG 000CH REL=UNIT +?C_START . . . . . C ADDR ----- EXT +?C_STARTUP . . . . C ADDR 0000H A +?STACK . . . . . . I SEG 0001H REL=UNIT +ACC. . . . . . . . D ADDR 00E0H A +B. . . . . . . . . D ADDR 00F0H A +DPH. . . . . . . . D ADDR 0083H A +DPL. . . . . . . . D ADDR 0082H A +IBPSTACK . . . . . N NUMB 0000H A +IBPSTACKTOP. . . . N NUMB 0100H A +IDATALEN . . . . . N NUMB 0080H A +IDATALOOP. . . . . C ADDR 0003H R SEG=?C_C51STARTUP +PBPSTACK . . . . . N NUMB 0000H A +PBPSTACKTOP. . . . N NUMB 0100H A +PDATALEN . . . . . N NUMB 0000H A +PDATASTART . . . . N NUMB 0000H A +PPAGE. . . . . . . N NUMB 0000H A +PPAGEENABLE. . . . N NUMB 0000H A +PPAGE_SFR. . . . . D ADDR 00A0H A +SP . . . . . . . . D ADDR 0081H A +STARTUP1 . . . . . C ADDR 0000H R SEG=?C_C51STARTUP +XBPSTACK . . . . . N NUMB 0000H A +XBPSTACKTOP. . . . N NUMB 0000H A +XDATALEN . . . . . N NUMB 0000H A +XDATASTART . . . . N NUMB 0000H A + + +REGISTER BANK(S) USED: 0 + + +ASSEMBLY COMPLETE. 0 WARNING(S), 0 ERROR(S) diff --git a/Listings/main.lst b/Listings/main.lst new file mode 100644 index 0000000..902d902 --- /dev/null +++ b/Listings/main.lst @@ -0,0 +1,115 @@ +C51 COMPILER V9.60.0.0 MAIN 12/27/2025 19:02:38 PAGE 1 + + +C51 COMPILER V9.60.0.0, COMPILATION OF MODULE MAIN +OBJECT MODULE PLACED IN .\Objects\main.obj +COMPILER INVOKED BY: D:\keli\uv5_arm\C51\BIN\C51.EXE main.c OPTIMIZE(8,SPEED) BROWSE DEBUG OBJECTEXTEND PRINT(.\Listings + -\main.lst) TABS(2) OBJECT(.\Objects\main.obj) + +line level source + + 1 #include "REG51.h" + 2 #include "INTRINS.h" + 3 + 4 sbit K1 =P1^4 ; //增加键 + 5 sbit K2 =P1^5 ; //减少键 + 6 sbit P00 =P0^1; + 7 unsigned char PWM=0xe7; //赋初值 + 8 + 9 + 10 void delayms(unsigned char ms); + 11 void delay(unsigned char t); + 12 + 13 /*********************************************************/ + 14 void main() + 15 { + 16 1 + 17 1 P1=0xff; + 18 1 TMOD=0x21 ; + 19 1 TH0=0xff ; //50us延时常数 + 20 1 TL0=0xce ; //频率调节 + 21 1 + 22 1 TH1=PWM ; //脉宽调节 + 23 1 TL1=0 ; + 24 1 + 25 1 EA=1; + 26 1 ET0=1; + 27 1 ET1=1; + 28 1 + 29 1 TR0=1 ; + 30 1 + 31 1 while(1) + 32 1 { + 33 2 do{ + 34 3 if(PWM!=0xff) + 35 3 {PWM++ ;delayms(10);} + 36 3 else Beep() ; +*** WARNING C206 IN LINE 36 OF main.c: 'Beep': missing function-prototype + 37 3 } + 38 2 while(K1==0); + 39 2 + 40 2 do{ + 41 3 if(PWM!=0xce) + 42 3 {PWM-- ;delayms(10);} + 43 3 else Beep() ; + 44 3 } + 45 2 while(K2==0); + 46 2 } + 47 1 } + 48 + 49 void timer0() interrupt 1 + 50 { + 51 1 TR1=0 ; + 52 1 TH0=0xff ; + 53 1 TL0=0xce ; + C51 COMPILER V9.60.0.0 MAIN 12/27/2025 19:02:38 PAGE 2 + + 54 1 TH1=PWM ; + 55 1 TR1=1 ; + 56 1 P00=0 ; //启动输出 + 57 1 } + 58 + 59 + 60 void timer1() interrupt 3 + 61 { + 62 1 TR1=0 ; + 63 1 P00=1 ; //结束输出 + 64 1 } + 65 + 66 + 67 /*********************************************************/ + 68 // 延时子程序 + 69 /*********************************************************/ + 70 void delay(unsigned char t) + 71 { + 72 1 while(t--) ; + 73 1 } + 74 + 75 /*********************************************************/ + 76 // 延时子程序 + 77 /*********************************************************/ + 78 void delayms(unsigned char ms) + 79 + 80 { + 81 1 unsigned char i ; + 82 1 while(ms--) + 83 1 { + 84 2 for(i = 0 ; i < 120 ; i++) ; + 85 2 } + 86 1 } + 87 + 88 /*********************************************************/ + + +MODULE INFORMATION: STATIC OVERLAYABLE + CODE SIZE = 119 ---- + CONSTANT SIZE = ---- ---- + XDATA SIZE = ---- ---- + PDATA SIZE = ---- ---- + DATA SIZE = 1 ---- + IDATA SIZE = ---- ---- + BIT SIZE = ---- ---- +END OF MODULE INFORMATION. + + +C51 COMPILATION COMPLETE. 1 WARNING(S), 0 ERROR(S) diff --git a/Listings/main.m51 b/Listings/main.m51 new file mode 100644 index 0000000..0a64b8e --- /dev/null +++ b/Listings/main.m51 @@ -0,0 +1,226 @@ +BL51 BANKED LINKER/LOCATER V6.22.2.0 12/27/2025 19:02:38 PAGE 1 + + +BL51 BANKED LINKER/LOCATER V6.22.2.0, INVOKED BY: +D:\KELI\UV5_ARM\C51\BIN\BL51.EXE .\Objects\STARTUP.obj, .\Objects\main.obj TO .\Objects\main PRINT (.\Listings\main.m51) +>> RAMSIZE (256) + + +MEMORY MODEL: SMALL + + +INPUT MODULES INCLUDED: + .\Objects\STARTUP.obj (?C_STARTUP) + .\Objects\main.obj (MAIN) + D:\KELI\UV5_ARM\C51\LIB\C51S.LIB (?C_INIT) + + +LINK MAP OF MODULE: .\Objects\main (?C_STARTUP) + + + TYPE BASE LENGTH RELOCATION SEGMENT NAME + ----------------------------------------------------- + + * * * * * * * D A T A M E M O R Y * * * * * * * + REG 0000H 0008H ABSOLUTE "REG BANK 0" + DATA 0008H 0001H UNIT ?DT?MAIN + IDATA 0009H 0001H UNIT ?STACK + + * * * * * * * C O D E M E M O R Y * * * * * * * + CODE 0000H 0003H ABSOLUTE + 0003H 0008H *** GAP *** + CODE 000BH 0003H ABSOLUTE + 000EH 000DH *** GAP *** + CODE 001BH 0003H ABSOLUTE + 001EH 07E2H *** GAP *** + CODE 0800H 008CH UNIT ?C_C51STARTUP + CODE 088CH 0045H UNIT ?PR?MAIN?MAIN + CODE 08D1H 0016H UNIT ?PR?_DELAYMS?MAIN + CODE 08E7H 0010H UNIT ?PR?TIMER0?MAIN + CODE 08F7H 0007H UNIT ?PR?_DELAY?MAIN + CODE 08FEH 0005H UNIT ?PR?TIMER1?MAIN + CODE 0903H 0004H UNIT ?C_INITSEG + + + +OVERLAY MAP OF MODULE: .\Objects\main (?C_STARTUP) + + +SEGMENT + +--> CALLED SEGMENT +--------------------- +?C_C51STARTUP + +--> ?PR?MAIN?MAIN + +--> ?C_INITSEG + +?PR?MAIN?MAIN + +--> ?PR?_DELAYMS?MAIN + + + +UNRESOLVED EXTERNAL SYMBOLS: + BL51 BANKED LINKER/LOCATER V6.22.2.0 12/27/2025 19:02:38 PAGE 2 + + + BEEP + + + +SYMBOL TABLE OF MODULE: .\Objects\main (?C_STARTUP) + + VALUE TYPE NAME + ---------------------------------- + + ------- MODULE ?C_STARTUP + C:0800H SEGMENT ?C_C51STARTUP + I:0009H SEGMENT ?STACK + C:0000H PUBLIC ?C_STARTUP + D:00E0H SYMBOL ACC + D:00F0H SYMBOL B + D:0083H SYMBOL DPH + D:0082H SYMBOL DPL + N:0000H SYMBOL IBPSTACK + N:0100H SYMBOL IBPSTACKTOP + N:0080H SYMBOL IDATALEN + C:0803H SYMBOL IDATALOOP + N:0000H SYMBOL PBPSTACK + N:0100H SYMBOL PBPSTACKTOP + N:0000H SYMBOL PDATALEN + N:0000H SYMBOL PDATASTART + N:0000H SYMBOL PPAGE + N:0000H SYMBOL PPAGEENABLE + D:00A0H SYMBOL PPAGE_SFR + D:0081H SYMBOL SP + C:0800H SYMBOL STARTUP1 + N:0000H SYMBOL XBPSTACK + N:0000H SYMBOL XBPSTACKTOP + N:0000H SYMBOL XDATALEN + N:0000H SYMBOL XDATASTART + C:0000H LINE# 126 + C:0800H LINE# 133 + C:0802H LINE# 134 + C:0803H LINE# 135 + C:0804H LINE# 136 + C:0806H LINE# 185 + C:0809H LINE# 196 + ------- ENDMOD ?C_STARTUP + + ------- MODULE MAIN + C:0000H SYMBOL _ICE_DUMMY_ + D:0080H PUBLIC P0 + D:0090H PUBLIC P1 + B:00A8H.7 PUBLIC EA + C:08F7H PUBLIC _delay + C:088CH PUBLIC main + B:0080H.1 PUBLIC P00 + D:0089H PUBLIC TMOD + B:00A8H.1 PUBLIC ET0 + B:00A8H.3 PUBLIC ET1 + D:008CH PUBLIC TH0 + D:008DH PUBLIC TH1 + D:008AH PUBLIC TL0 + BL51 BANKED LINKER/LOCATER V6.22.2.0 12/27/2025 19:02:38 PAGE 3 + + + D:008BH PUBLIC TL1 + C:08E7H PUBLIC timer0 + C:08FEH PUBLIC timer1 + B:0088H.4 PUBLIC TR0 + B:0088H.6 PUBLIC TR1 + C:08D1H PUBLIC _delayms + D:0008H PUBLIC PWM + B:0090H.4 PUBLIC K1 + B:0090H.5 PUBLIC K2 + ------- PROC MAIN + C:088CH LINE# 14 + C:088CH LINE# 15 + C:088CH LINE# 17 + C:088FH LINE# 18 + C:0892H LINE# 19 + C:0895H LINE# 20 + C:0898H LINE# 22 + C:089BH LINE# 23 + C:089EH LINE# 25 + C:08A0H LINE# 26 + C:08A2H LINE# 27 + C:08A4H LINE# 29 + C:08A6H LINE# 31 + C:08A6H LINE# 32 + C:08A6H LINE# 33 + C:08A6H LINE# 34 + C:08ABH LINE# 35 + C:08B4H LINE# 36 + C:08B7H LINE# 37 + C:08B7H LINE# 38 + C:08BAH LINE# 40 + C:08BAH LINE# 41 + C:08C0H LINE# 42 + C:08C9H LINE# 43 + C:08CCH LINE# 44 + C:08CCH LINE# 45 + C:08CFH LINE# 46 + ------- ENDPROC MAIN + ------- PROC TIMER0 + C:08E7H LINE# 49 + C:08E7H LINE# 51 + C:08E9H LINE# 52 + C:08ECH LINE# 53 + C:08EFH LINE# 54 + C:08F2H LINE# 55 + C:08F4H LINE# 56 + C:08F6H LINE# 57 + ------- ENDPROC TIMER0 + ------- PROC TIMER1 + C:08FEH LINE# 60 + C:08FEH LINE# 62 + C:0900H LINE# 63 + C:0902H LINE# 64 + ------- ENDPROC TIMER1 + ------- PROC _DELAY + D:0007H SYMBOL t + C:08F7H LINE# 70 + BL51 BANKED LINKER/LOCATER V6.22.2.0 12/27/2025 19:02:38 PAGE 4 + + + C:08F7H LINE# 71 + C:08F7H LINE# 72 + C:08FDH LINE# 73 + ------- ENDPROC _DELAY + ------- PROC _DELAYMS + D:0007H SYMBOL ms + ------- DO + D:0006H SYMBOL i + ------- ENDDO + C:08D1H LINE# 78 + C:08D1H LINE# 80 + C:08D1H LINE# 82 + C:08D7H LINE# 83 + C:08D7H LINE# 84 + C:08E6H LINE# 85 + C:08E6H LINE# 86 + ------- ENDPROC _DELAYMS + ------- ENDMOD MAIN + +*** WARNING L16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS + SEGMENT: ?PR?_DELAY?MAIN + +*** WARNING L1: UNRESOLVED EXTERNAL SYMBOL + SYMBOL: BEEP + MODULE: .\Objects\main.obj (MAIN) + +*** WARNING L2: REFERENCE MADE TO UNRESOLVED EXTERNAL + SYMBOL: BEEP + MODULE: .\Objects\main.obj (MAIN) + ADDRESS: 08B5H + +*** WARNING L2: REFERENCE MADE TO UNRESOLVED EXTERNAL + SYMBOL: BEEP + MODULE: .\Objects\main.obj (MAIN) + ADDRESS: 08CAH + +****************************************************************************** +* RESTRICTED VERSION WITH 0800H BYTE CODE SIZE LIMIT; USED: 008FH BYTE ( 6%) * +****************************************************************************** + +Program Size: data=10.0 xdata=0 code=272 +LINK/LOCATE RUN COMPLETE. 4 WARNING(S), 0 ERROR(S) diff --git a/Objects/STARTUP._ia b/Objects/STARTUP._ia new file mode 100644 index 0000000..7893e97 --- /dev/null +++ b/Objects/STARTUP._ia @@ -0,0 +1 @@ +"STARTUP.A51" SET (SMALL) DEBUG PRINT(.\Listings\STARTUP.lst) OBJECT(.\Objects\STARTUP.obj) EP \ No newline at end of file diff --git a/Objects/STARTUP.obj b/Objects/STARTUP.obj new file mode 100644 index 0000000000000000000000000000000000000000..797113f35f0f071dd17a6315c347adce76690a57 GIT binary patch literal 828 zcmZuvO=}ZT6g~5ic9OIvsffCfp(D~D7PIKO%uL1_9W#&21iB~$TSQVy6%xUfTE&lr zJGU+bm;Qo)E74__g6;$bm%4IS;(2do=tO+Xym{x`k8|hVclQ;hH{G?Cy&NZQFX@X_ zf@M1nl9l*|8-`809eDi>Tl6~JWMy?L9FE4r{oA9h+L*ZH_XinwgwM4qvSk3@YiFQAK3Kpa{rt67 z=Bm{i&|yfEhPidJ{`GTbYvj1BJmui@lEhpEl}UYZ27fwVmmbwZVH3xJE_34_SxS=2 z^e#CkRc&Mn>EAh*Wu*QMFkIi~={IZi_Z301#@8mc)=BDS;i zNIJCL#0`Tk^HRQ?!bq8AyqJy8VH&R-viMZ5A|zCQn-V1<+>IbTSJgS_x?V^|e?vLN z4B{(2;sd_1kpD;BtYNJ*(%LMP!FJ~GxQxx&G89xfe$HDeBZv2^EGK5l!CG%Mn3~kO z=vb=ncz|TSp?ZG*;g3IGj_w`Efp^LcSY&lfrxloFcnzHk>Fs!`49~b5c+TC#3+{86 Xa4+K{ro0VCVSFFVdU2ZadL8}+&vu{z literal 0 HcmV?d00001 diff --git a/Objects/main b/Objects/main new file mode 100644 index 0000000000000000000000000000000000000000..e93b8c0ac38f63d03d2123b2bcf9d3eeb78fbbc6 GIT binary patch literal 4453 zcmaJ^eM}t36@R;Xcg%4HV;nn*-IQYi3mk`XxU_cC77kbg_5oM!AS6XPI74eJW1|3- zt5nWm>NFpOTD2`zOls_Ik%QyRyKQrA>z1O2_( zo4q^ZFoM~6^XC2D$GmwnH+X`UdxBK~zZr=J+oJ8^auB9JVns_M&B0Kp%wKQSwm100 zZA~rF((ze;273ArmhUzFt>I`>bJGJ>>5grYuw~Vk`D@!+?~7PT z^K1jG&ZyN=ztUC-A`OiOYa^wVw=h^PVQYyl!qohfsfwe~^I&*vgLK*tBCE}6s0x(t z)2Sbn7ZE~~BIWyr2VbD&J8DC4pyno^0|y8Fwu;Dpt3n!4IMs$#*m<}QS^E7VlW-$*$Icj~#6U0oMT27j6Uke5U0Gv|x*2+fzaJFl9B zq+?D{4kQ`LP8>44M4oC;b$d)RpEMRs$9l=!j5+;1A|qH=NBT!ZS}o~gpzFhpq#u=o z5V;{Hnrg!m36w@YMMYb~yTMbkXpE>1U=m#!DYz_rFi%5|1ME;#HU^ z&e317heq12p3MWYt2x-zGFj|n9UdN+*Hy7b!>ft;MRPsR6S;k{raCKD-`?DOe=O)P zB)>*5MjI~j`HOsH|Jif;z)+E|WZt}h{m~O-=-~>|kMlP`u2)FYtsv2&DD=d7`wsMc zhiF`wEo8vX@ z&6Cfo#AE+ekxZXMAN1Y~|F5cX5zHliPijYLn0+lhWE z?jU+bY$AGAY$p1dxRdAwQNW#_yF%_vqSK;?=vShc=+~lzyDdboiBj%R!Y0L5qTh?V zh~5_4xVxL^k|?Kcc<7cMp5e{+Ar$kAd0x^zsIFF9MY#vY%!{)Vj?Xg_XGbgFH@Cut zc_Bl-ooGRPk?5+ZBKlB#iRfeTWuoh12hk0&lRAOtPU79gS~f$=(z_`wfxA7Z6id)D zGg`UP+z99;@fDu=8dA_(jm-Ae&@WOjfvr+FR&RxZ_pdV{OuEd()miBfn2_7<9m?x{oNjH#aUj=(wW@9i1xaUYibAoniW?LE}n=kAlU`?$Z< zlPhl}jgt4$y*+E?&7_mMn=bXNled$OGO6yTg}4`<;_%}T{A6zq{BXf~P0o$=j^N0{ z7*PD>wv5JHB&l4ZXyjoAjg$mVYCSSBgO8-l;3Ib&{*HLI9LpNDLxK`Y|O8Y=ScjlSgfwIG8U_WUe?Er zzZ1Px(qIj}(rY_!$gSdaiuN;s#`LDRkn$*o`GC}Ad^y5IW4$Hv`qa^9LTYfA<8DKA zs69eioJwM_8H{l(4dbhzx!GoD#BM2!&!;c~zgq?4UWt&xK;dyP3gSMg(=E&R5ujvl zjO`6?6V9S+yfM5{IEN1X1!W1!@|jgEsZ7c!Z&3XlOSYsi0fAByN~763=Bsn3_=;verw2-**7~pibh{g>SGDE4`o@NZKmH<=hX`4Bq45f)^^?m z!AYPpr$`wwT)4sryNIyU>Wr|`^fSUV8-*LoG3sq6-y18=JD949C`|pPLZlHM6^>Pm ziJK)wr!WKOR>9!0c*4=aOUt4E zp$cDZU*F(*fZA1uH;U*`^7>^Vb-iL5R3^=3K=E0Q`Rcmm^~_f^^A9Sev7v81IG6N< z9}vt;on3 + +
+

礦ision Build Log

+

Tool Versions:

+IDE-Version: μVision V5.27.1.0 +Copyright (C) 2019 ARM Ltd and ARM Germany GmbH. All rights reserved. +License Information: root Administrator, root, LIC=---- + +Tool Versions: +Toolchain: PK51 Prof. Develpers Kit Version: 9.60.0.0 +Toolchain Path: D:\keli\uv5_arm\C51\BIN +C Compiler: C51.exe V9.60.0.0 +Assembler: A51.exe V8.2.7.0 +Linker/Locator: BL51.exe V6.22.2.0 +Library Manager: LIB51.exe V4.30.1.0 +Hex Converter: OH51.exe V2.7.0.0 +CPU DLL: S8051.DLL V3.122.0.0 +Dialog DLL: DP51.DLL V2.67.0.0 +

Project:

+G:\Project\C\stc51\C51-PWM\main.uvproj +Project File Date: 12/27/2025 + +

Output:

+Rebuild target 'Target 1' +assembling STARTUP.A51... +compiling main.c... +main.c(36): warning C206: 'Beep': missing function-prototype +linking... +*** WARNING L16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS + SEGMENT: ?PR?_DELAY?MAIN +*** WARNING L1: UNRESOLVED EXTERNAL SYMBOL + SYMBOL: BEEP + MODULE: .\Objects\main.obj (MAIN) +*** WARNING L2: REFERENCE MADE TO UNRESOLVED EXTERNAL + SYMBOL: BEEP + MODULE: .\Objects\main.obj (MAIN) + ADDRESS: 08B5H +*** WARNING L2: REFERENCE MADE TO UNRESOLVED EXTERNAL + SYMBOL: BEEP + MODULE: .\Objects\main.obj (MAIN) + ADDRESS: 08CAH +Program Size: data=10.0 xdata=0 code=272 +creating hex file from ".\Objects\main"... +".\Objects\main" - 0 Error(s), 5 Warning(s). +Build Time Elapsed: 00:00:01 +
+ + diff --git a/Objects/main.hex b/Objects/main.hex new file mode 100644 index 0000000..78f45d7 --- /dev/null +++ b/Objects/main.hex @@ -0,0 +1,26 @@ +:03000000020800F3 +:0C080000787FE4F6D8FD758108020847F7 +:030903000108E701 +:10088C007590FF758921758CFF758ACE85088DE46E +:10089C00F58BD2AFD2A9D2ABD28CE508F4600905A6 +:1008AC00087F0A1208D180031200003094ECE5088E +:1008BC0064CE600915087F0A1208D180031200006B +:0508CC003095EB80D522 +:03000B000208E701 +:1008E700C28E758CFF758ACE85088DD28EC28132F5 +:03001B000208FEDA +:0508FE00C28ED2813220 +:0708F700AE071FEE70FA22AC +:1008D100AD071FED600FE4FEEEC394787480948041 +:0508E10050EE0E80F353 +:0108E60022EF +:10080C0002088CE493A3F8E493A34003F68001F26E +:10081C0008DFF48029E493A3F85407240CC8C333ED +:10082C00C4540F4420C8834004F456800146F6DFBC +:10083C00E4800B0102040810204080900903E47E40 +:10084C00019360BCA3FF543F30E509541FFEE493B1 +:10085C00A360010ECF54C025E060A840B8E493A378 +:10086C00FAE493A3F8E493A3C8C582C8CAC583CAA3 +:10087C00F0A3C8C582C8CAC583CADFE9DEE780BE5B +:0109060000F0 +:00000001FF diff --git a/Objects/main.lnp b/Objects/main.lnp new file mode 100644 index 0000000..141cb1a --- /dev/null +++ b/Objects/main.lnp @@ -0,0 +1,4 @@ +".\Objects\STARTUP.obj", +".\Objects\main.obj" +TO ".\Objects\main" +PRINT(".\Listings\main.m51") RAMSIZE(256) diff --git a/Objects/main.obj b/Objects/main.obj new file mode 100644 index 0000000000000000000000000000000000000000..51c860dbc798ca0e1efd3b7bfadb728c6674eabf GIT binary patch literal 4094 zcmaJ^Yiv|S6h8OfeYW&Lp{*3P+iq!E9(A`^r9LQqTvr)SFI~3E5(^F88jVJa zMk87qe_&!X{t|x>Uq6f?5jBV!`C-5``p@`CKztI7nix&2-#K$<_qNqe;M_Uq%=zY< zGc#wl6YtXey}cdrNaOfuZhzaJ#>j9oofu5qX18qFIFhvOzSc-jYWU_6JJM(O?Ajg~ z?%84YrtMqO_E29WnMw?$TiWgz$W7*R`|qB-LqP7C%(q6;-8~~M?XB*3j2X`C8{3n2 zhaAZ4Yb84K&Ty`3smGv~;Rq-~Chda~OxfEz;%$3P%0UZbR?Ixowl{Bv$T!%X82ZOJ zQ&CDp+lWfZB6?11Ygv1u;wTwJhL6amvaV#Ri(^EXw2jS`RKaE}-A={CVJU~-7D;Y{T21mpdfD7y_D(UKV5<`jfh`l{XCff`Ob@ioXRL7dN zWWq$g9@|cem&cE!yHn|1$-}h+n3Vli^5#KIh8EJZfDl?hsaP>9vY5C4x=M^E1U#?) z)ykmTJK4mUqX1jmdOLz40$uRBV1=vj@mYupy#!$(f?A@hc{G~8)JgQ(PT#JADNiuYgD9G+AachR!qGiG#))WSDlhETSRcWXJ9q zy_D)RSi(qo>dP@zmTKbI0ahnVUIJzwZwF>EV(pqG<~vcI2n? zls&UMTwY8dw~2fPGi)WFZ1okcy~F)>y8f-M|JUeI>=6RW zg(kZU<-;WSCY%uAmyo3aW*yqBW4KsSdJ+K!Prz%OLBhUL@$C-ypIPvYw)l zEz|_Lf!2v^hHQh4Wh>;Bv>x($_zl`d8%1t{?1ld$WYRC0Jb?qrw;HQE7Y@VilS^=+ zGEAmA2(7h^~SxrK=&! zXbWTob<%N6;&&(6AUx!Te&+Jvqw{T%M|@MTgv$+`nw>k;UK_2$X@hp1*tSBN)CK9o zV&5tP$JYyjy1FZ)C5RwX?oleZ0)vTO57u9t_^a^+24wvPv2GXH4;i2Y%?O|ZDX&Df z3Z-Ej7tw{pH9S{oA%#D=(*$r7a(4#nkOZRFg7rV|t~mG4#Sf0$m!Cc|oxE5+{hN*P zKKecwz>sQcJRaRh77rehkfg{IWPnCQrXj0om&luF6`1%7O!i?$FN{gWH|F~cA39ZaU))oMZ1}K=hS(m>PNC$1 z3^e|7n@3}B4f-6X^~Obd6gnRd?Z<<-VEp<;{;NFxEtwJ-E9LPAkP0E;e2IC&i7cmI zkt)ZR+at|MA%pkcl**ibdBPq7%EFCNtKn^u zJBdi%7(P8WC{WR_&`j_QomhrRyBnjKT;^fYT*QdKy#&KXj#XCi&Pmf4o5fzt(AA6d ztseaWeG2(KzTKU~a?|eJx-~LI5fqPIVe58e_}rqvJC6LwbNU^p4p?mC#^2d&wS4&) zNPUEj2|t)wA$IpAzXo9o^R2@SRDIPr-?uFYi+3&)cAY0|Sf78{-0{ihm&A>s3^HS* zz>=q9UEe#_eIA`x$9{e9v|sD&=i@Qt;jtsbPc-hRgP)S}Lzr{6`G0eUU!86==j?$@ zP@;|8MntH~rn3Ba;i4FHqbGv-rJ?I$^{KwEc6XTz@n3hXa}fj|0)1bjnnb=~2?ty(zouC{KMd*Je?3JCka|B(6le~_-Y;M-T{;&#ZW@Ds z$7@1uq7e8(qvle}g*{hejGhXXLEIlXub51o4(F~Q3H|v81i1wOg zAo#W8rXe<=uOV!`68!n_%@T}a#`)%Q(->RO*DK-dbb0jebm8k68=F`KP*rt!qlgZ; z&o2k*=M`pX3w167+Rt(9*Uv4FXTR3jzh6)4Ox|_yyt@)U1MDo`T?;?LRpXVII3fBtdU>3;zY53U~o literal 0 HcmV?d00001 diff --git a/REG51.h b/REG51.h new file mode 100644 index 0000000..b8ce9f6 --- /dev/null +++ b/REG51.h @@ -0,0 +1,91 @@ +/*-------------------------------------------------------------------------- +REG51.H + +Header file for generic 80C51 and 80C31 microcontroller. +Copyright (c) 1988-2002 Keil Elektronik GmbH and Keil Software, Inc. +All rights reserved. +--------------------------------------------------------------------------*/ + +#ifndef __REG51_H__ +#define __REG51_H__ + +/* BYTE Register */ +sfr P0 = 0x80; +sfr P1 = 0x90; +sfr P2 = 0xA0; +sfr P3 = 0xB0; +sfr PSW = 0xD0; +sfr ACC = 0xE0; +sfr B = 0xF0; +sfr SP = 0x81; +sfr DPL = 0x82; +sfr DPH = 0x83; +sfr PCON = 0x87; +sfr TCON = 0x88; +sfr TMOD = 0x89; +sfr TL0 = 0x8A; +sfr TL1 = 0x8B; +sfr TH0 = 0x8C; +sfr TH1 = 0x8D; +sfr IE = 0xA8; +sfr IP = 0xB8; +sfr SCON = 0x98; +sfr SBUF = 0x99; + + +/* BIT Register */ +/* PSW */ +sbit CY = 0xD7; +sbit AC = 0xD6; +sbit F0 = 0xD5; +sbit RS1 = 0xD4; +sbit RS0 = 0xD3; +sbit OV = 0xD2; +sbit P = 0xD0; + +/* TCON */ +sbit TF1 = 0x8F; +sbit TR1 = 0x8E; +sbit TF0 = 0x8D; +sbit TR0 = 0x8C; +sbit IE1 = 0x8B; +sbit IT1 = 0x8A; +sbit IE0 = 0x89; +sbit IT0 = 0x88; + +/* IE */ +sbit EA = 0xAF; +sbit ES = 0xAC; +sbit ET1 = 0xAB; +sbit EX1 = 0xAA; +sbit ET0 = 0xA9; +sbit EX0 = 0xA8; + +/* IP */ +sbit PS = 0xBC; +sbit PT1 = 0xBB; +sbit PX1 = 0xBA; +sbit PT0 = 0xB9; +sbit PX0 = 0xB8; + +/* P3 */ +sbit RD = 0xB7; +sbit WR = 0xB6; +sbit T1 = 0xB5; +sbit T0 = 0xB4; +sbit INT1 = 0xB3; +sbit INT0 = 0xB2; +sbit TXD = 0xB1; +sbit RXD = 0xB0; + +/* SCON */ +sbit SM0 = 0x9F; +sbit SM1 = 0x9E; +sbit SM2 = 0x9D; +sbit REN = 0x9C; +sbit TB8 = 0x9B; +sbit RB8 = 0x9A; +sbit TI = 0x99; +sbit RI = 0x98; + +#endif diff --git a/STARTUP.A51 b/STARTUP.A51 new file mode 100644 index 0000000..ec99b9e --- /dev/null +++ b/STARTUP.A51 @@ -0,0 +1,198 @@ +$NOMOD51 +;------------------------------------------------------------------------------ +; This file is part of the C51 Compiler package +; Copyright (c) 1988-2005 Keil Elektronik GmbH and Keil Software, Inc. +; Version 8.01 +; +; *** <<< Use Configuration Wizard in Context Menu >>> *** +;------------------------------------------------------------------------------ +; STARTUP.A51: This code is executed after processor reset. +; +; To translate this file use A51 with the following invocation: +; +; A51 STARTUP.A51 +; +; To link the modified STARTUP.OBJ file to your application use the following +; Lx51 invocation: +; +; Lx51 your object file list, STARTUP.OBJ controls +; +;------------------------------------------------------------------------------ +; +; User-defined Power-On Initialization of Memory +; +; With the following EQU statements the initialization of memory +; at processor reset can be defined: +; +; IDATALEN: IDATA memory size <0x0-0x100> +; Note: The absolute start-address of IDATA memory is always 0 +; The IDATA space overlaps physically the DATA and BIT areas. +IDATALEN EQU 80H +; +; XDATASTART: XDATA memory start address <0x0-0xFFFF> +; The absolute start address of XDATA memory +XDATASTART EQU 0 +; +; XDATALEN: XDATA memory size <0x0-0xFFFF> +; The length of XDATA memory in bytes. +XDATALEN EQU 0 +; +; PDATASTART: PDATA memory start address <0x0-0xFFFF> +; The absolute start address of PDATA memory +PDATASTART EQU 0H +; +; PDATALEN: PDATA memory size <0x0-0xFF> +; The length of PDATA memory in bytes. +PDATALEN EQU 0H +; +; +;------------------------------------------------------------------------------ +; +; Reentrant Stack Initialization +; +; The following EQU statements define the stack pointer for reentrant +; functions and initialized it: +; +; Stack Space for reentrant functions in the SMALL model. +; IBPSTACK: Enable SMALL model reentrant stack +; Stack space for reentrant functions in the SMALL model. +IBPSTACK EQU 0 ; set to 1 if small reentrant is used. +; IBPSTACKTOP: End address of SMALL model stack <0x0-0xFF> +; Set the top of the stack to the highest location. +IBPSTACKTOP EQU 0xFF +1 ; default 0FFH+1 +; +; +; Stack Space for reentrant functions in the LARGE model. +; XBPSTACK: Enable LARGE model reentrant stack +; Stack space for reentrant functions in the LARGE model. +XBPSTACK EQU 0 ; set to 1 if large reentrant is used. +; XBPSTACKTOP: End address of LARGE model stack <0x0-0xFFFF> +; Set the top of the stack to the highest location. +XBPSTACKTOP EQU 0xFFFF +1 ; default 0FFFFH+1 +; +; +; Stack Space for reentrant functions in the COMPACT model. +; PBPSTACK: Enable COMPACT model reentrant stack +; Stack space for reentrant functions in the COMPACT model. +PBPSTACK EQU 0 ; set to 1 if compact reentrant is used. +; +; PBPSTACKTOP: End address of COMPACT model stack <0x0-0xFFFF> +; Set the top of the stack to the highest location. +PBPSTACKTOP EQU 0xFF +1 ; default 0FFH+1 +; +; +;------------------------------------------------------------------------------ +; +; Memory Page for Using the Compact Model with 64 KByte xdata RAM +; Compact Model Page Definition +; +; Define the XDATA page used for PDATA variables. +; PPAGE must conform with the PPAGE set in the linker invocation. +; +; Enable pdata memory page initalization +PPAGEENABLE EQU 0 ; set to 1 if pdata object are used. +; +; PPAGE number <0x0-0xFF> +; uppermost 256-byte address of the page used for PDATA variables. +PPAGE EQU 0 +; +; SFR address which supplies uppermost address byte <0x0-0xFF> +; most 8051 variants use P2 as uppermost address byte +PPAGE_SFR DATA 0A0H +; +; +;------------------------------------------------------------------------------ + +; Standard SFR Symbols +ACC DATA 0E0H +B DATA 0F0H +SP DATA 81H +DPL DATA 82H +DPH DATA 83H + + NAME ?C_STARTUP + + +?C_C51STARTUP SEGMENT CODE +?STACK SEGMENT IDATA + + RSEG ?STACK + DS 1 + + EXTRN CODE (?C_START) + PUBLIC ?C_STARTUP + + CSEG AT 0 +?C_STARTUP: LJMP STARTUP1 + + RSEG ?C_C51STARTUP + +STARTUP1: + +IF IDATALEN <> 0 + MOV R0,#IDATALEN - 1 + CLR A +IDATALOOP: MOV @R0,A + DJNZ R0,IDATALOOP +ENDIF + +IF XDATALEN <> 0 + MOV DPTR,#XDATASTART + MOV R7,#LOW (XDATALEN) + IF (LOW (XDATALEN)) <> 0 + MOV R6,#(HIGH (XDATALEN)) +1 + ELSE + MOV R6,#HIGH (XDATALEN) + ENDIF + CLR A +XDATALOOP: MOVX @DPTR,A + INC DPTR + DJNZ R7,XDATALOOP + DJNZ R6,XDATALOOP +ENDIF + +IF PPAGEENABLE <> 0 + MOV PPAGE_SFR,#PPAGE +ENDIF + +IF PDATALEN <> 0 + MOV R0,#LOW (PDATASTART) + MOV R7,#LOW (PDATALEN) + CLR A +PDATALOOP: MOVX @R0,A + INC R0 + DJNZ R7,PDATALOOP +ENDIF + +IF IBPSTACK <> 0 +EXTRN DATA (?C_IBP) + + MOV ?C_IBP,#LOW IBPSTACKTOP +ENDIF + +IF XBPSTACK <> 0 +EXTRN DATA (?C_XBP) + + MOV ?C_XBP,#HIGH XBPSTACKTOP + MOV ?C_XBP+1,#LOW XBPSTACKTOP +ENDIF + +IF PBPSTACK <> 0 +EXTRN DATA (?C_PBP) + MOV ?C_PBP,#LOW PBPSTACKTOP +ENDIF + + MOV SP,#?STACK-1 + +; This code is required if you use L51_BANK.A51 with Banking Mode 4 +; Code Banking +; Select Bank 0 for L51_BANK.A51 Mode 4 +#if 0 +; Initialize bank mechanism to code bank 0 when using L51_BANK.A51 with Banking Mode 4. +EXTRN CODE (?B_SWITCH0) + CALL ?B_SWITCH0 ; init bank mechanism to code bank 0 +#endif +; + LJMP ?C_START + + END diff --git a/Target 1.BAT b/Target 1.BAT new file mode 100644 index 0000000..33a5d42 --- /dev/null +++ b/Target 1.BAT @@ -0,0 +1,10 @@ +SET C51INC=D:\keli\uv5_arm\C51\Inc;D:\keli\uv5_arm\C51\Inc\STC +SET C51LIB=D:\keli\uv5_arm\C51\Lib +SET CPU_TYPE=STC89C52RC Series +SET CPU_VENDOR=STC +SET UV2_TARGET=Target 1 +SET CPU_XTAL=0x00B71B00 +"D:\keli\uv5_arm\C51\BIN\A51.EXE" @".\Objects\STARTUP._ia" +"D:\keli\uv5_arm\C51\BIN\C51.EXE" @".\Objects\main.__i" +"D:\keli\uv5_arm\C51\BIN\BL51.EXE" @".\Objects\main.lnp" +"D:\keli\uv5_arm\C51\BIN\OH51.EXE" ".\Objects\main" diff --git a/main.c b/main.c new file mode 100644 index 0000000..81fcbc4 --- /dev/null +++ b/main.c @@ -0,0 +1,88 @@ +#include "REG51.h" +#include "INTRINS.h" + +sbit K1 =P1^4 ; //增加键 +sbit K2 =P1^5 ; //减少键 +sbit P00 =P0^1; +unsigned char PWM=0xe7; //赋初值 + + +void delayms(unsigned char ms); +void delay(unsigned char t); + +/*********************************************************/ +void main() +{ + + P1=0xff; + TMOD=0x21 ; + TH0=0xff ; //50us延时常数 + TL0=0xce ; //频率调节 + + TH1=PWM ; //脉宽调节 + TL1=0 ; + + EA=1; + ET0=1; + ET1=1; + + TR0=1 ; + + while(1) + { + do{ + if(PWM!=0xff) + {PWM++ ;delayms(10);} + else Beep() ; + } + while(K1==0); + + do{ + if(PWM!=0xce) + {PWM-- ;delayms(10);} + else Beep() ; + } + while(K2==0); + } +} + +void timer0() interrupt 1 +{ + TR1=0 ; + TH0=0xff ; + TL0=0xce ; + TH1=PWM ; + TR1=1 ; + P00=0 ; //启动输出 +} + + +void timer1() interrupt 3 +{ + TR1=0 ; + P00=1 ; //结束输出 +} + + +/*********************************************************/ +// 延时子程序 +/*********************************************************/ +void delay(unsigned char t) + { + while(t--) ; + } + +/*********************************************************/ +// 延时子程序 +/*********************************************************/ +void delayms(unsigned char ms) + +{ + unsigned char i ; + while(ms--) + { + for(i = 0 ; i < 120 ; i++) ; + } +} + +/*********************************************************/ diff --git a/main.uvgui.Administrator b/main.uvgui.Administrator new file mode 100644 index 0000000..b4b2679 --- /dev/null +++ b/main.uvgui.Administrator @@ -0,0 +1,1914 @@ + + + + -6.1 + +
### uVision Project, (C) Keil Software
+ + + + + + + + + + 38003 + Registers + 140 90 + + + 346 + Code Coverage + 1010 160 + + + 204 + Performance Analyzer + 1170 + + + + + + 35141 + Event Statistics + + 200 50 700 + + + 1506 + Symbols + + 80 80 80 + + + 1936 + Watch 1 + + 200 133 133 + + + 1937 + Watch 2 + + 200 133 133 + + + 1935 + Call Stack + Locals + + 200 133 133 + + + 2506 + Trace Data + + 75 135 130 95 70 230 200 150 + + + 466 + Source Browser + 300 + 0 + + + + + + + + 1 + 1 + 0 + 0 + -1 + + + + + + + 44 + 2 + 3 + + -1 + -1 + + + -1 + -1 + + + 4 + -8 + 1432 + 763 + + + + 0 + + 467 + 01000000040000000100000001000000010000000100000000000000020000000000000001000000010000000000000028000000280000000100000005000000000000000100000021473A5C50726F6A6563745C435C73746335315C4335312D50574D5C6D61696E2E6300000000066D61696E2E6300000000C5D4F200FFFFFFFF21443A5C6B656C695C7576355F61726D5C4335315C496E635C696E7472696E732E680000000009696E7472696E732E6800000000FFDC7800FFFFFFFF1F443A5C6B656C695C7576355F61726D5C4335315C496E635C72656735312E68000000000772656735312E6800000000BECEA100FFFFFFFF24473A5C50726F6A6563745C435C73746335315C4335312D50574D5C494E5452494E532E680000000009494E5452494E532E6800000000F0A0A100FFFFFFFF22473A5C50726F6A6563745C435C73746335315C4335312D50574D5C52454735312E68000000000752454735312E6800000000BCA8E100FFFFFFFF0100000010000000C5D4F200FFDC7800BECEA100F0A0A100BCA8E1009CC1B600F7B88600D9ADC200A5C2D700B3A6BE00EAD6A300F6FA7D00B5E99D005FC3CF00C1838300CACAD500010000000000000002000000F4000000660000008007000026030000 + + + + 0 + Build + + -1 + -1 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + F40000004F00000090050000DF000000 + + + 16 + 2200000039000000EA020000C9000000 + + + + 1005 + 1005 + 1 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + 0300000066000000ED000000F6020000 + + + 16 + 22000000390000001201000004010000 + + + + 109 + 109 + 1 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + 0300000066000000ED000000F6020000 + + + 16 + 22000000390000003E01000079020000 + + + + 1465 + 1465 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + 000000002D02000090050000BD020000 + + + 16 + 2200000039000000EA020000C9000000 + + + + 1466 + 1466 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + 03000000300200008D05000090020000 + + + 16 + 2200000039000000EA020000C9000000 + + + + 1467 + 1467 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + 03000000300200008D05000090020000 + + + 16 + 2200000039000000EA020000C9000000 + + + + 1468 + 1468 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + 03000000300200008D05000090020000 + + + 16 + 2200000039000000EA020000C9000000 + + + + 1506 + 1506 + 0 + 0 + 0 + 0 + 32767 + 0 + 16384 + 0 + + 16 + A3040000660000008D05000001010000 + + + 16 + 22000000390000001201000004010000 + + + + 1913 + 1913 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + F7000000660000008D050000C6000000 + + + 16 + 2200000039000000EA020000C9000000 + + + + 1935 + 1935 + 0 + 0 + 0 + 0 + 32767 + 0 + 32768 + 0 + + 16 + 03000000300200008D050000A4020000 + + + 16 + 22000000390000001201000004010000 + + + + 1936 + 1936 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + 03000000300200008D05000090020000 + + + 16 + 22000000390000001201000004010000 + + + + 1937 + 1937 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + 03000000300200008D05000090020000 + + + 16 + 22000000390000001201000004010000 + + + + 1939 + 1939 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + 03000000300200008D05000090020000 + + + 16 + 2200000039000000EA020000C9000000 + + + + 1940 + 1940 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + 03000000300200008D05000090020000 + + + 16 + 2200000039000000EA020000C9000000 + + + + 1941 + 1941 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + 03000000300200008D05000090020000 + + + 16 + 2200000039000000EA020000C9000000 + + + + 1942 + 1942 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + 03000000300200008D05000090020000 + + + 16 + 2200000039000000EA020000C9000000 + + + + 195 + 195 + 1 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + 0300000066000000ED000000F6020000 + + + 16 + 22000000390000003E01000079020000 + + + + 196 + 196 + 1 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + 0300000066000000ED000000F6020000 + + + 16 + 22000000390000003E01000079020000 + + + + 197 + 197 + 1 + 0 + 0 + 0 + 32767 + 0 + 32768 + 0 + + 16 + 000000002703000080070000E6030000 + + + 16 + 2200000039000000EA020000C9000000 + + + + 198 + 198 + 0 + 0 + 0 + 0 + 32767 + 0 + 32768 + 0 + + 16 + 000000001902000090050000BD020000 + + + 16 + 2200000039000000EA020000C9000000 + + + + 199 + 199 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + 030000002A0300008D0500008A030000 + + + 16 + 2200000039000000EA020000C9000000 + + + + 203 + 203 + 0 + 0 + 0 + 0 + 32767 + 0 + 8192 + 0 + + 16 + F40000006300000090050000DF000000 + + + 16 + 2200000039000000EA020000C9000000 + + + + 204 + 204 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + F7000000660000008D050000C6000000 + + + 16 + 2200000039000000EA020000C9000000 + + + + 221 + 221 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + 00000000000000000000000000000000 + + + 16 + 0A0000000A0000006E0000006E000000 + + + + 2506 + 2506 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + A0040000630000009005000029020000 + + + 16 + 22000000390000001201000004010000 + + + + 2507 + 2507 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + 000000002D02000090050000A9020000 + + + 16 + 2200000039000000EA020000C9000000 + + + + 343 + 343 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + F7000000660000008D050000C6000000 + + + 16 + 2200000039000000EA020000C9000000 + + + + 346 + 346 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + F7000000660000008D050000C6000000 + + + 16 + 2200000039000000EA020000C9000000 + + + + 35141 + 35141 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + F40000006300000090050000DF000000 + + + 16 + 22000000390000001201000004010000 + + + + 35824 + 35824 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + F7000000660000008D050000C6000000 + + + 16 + 2200000039000000EA020000C9000000 + + + + 35885 + 35885 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + A3040000660000008D0500007C010000 + + + 16 + 22000000390000001201000004010000 + + + + 35886 + 35886 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + A3040000660000008D0500007C010000 + + + 16 + 22000000390000001201000004010000 + + + + 35887 + 35887 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + A3040000660000008D0500007C010000 + + + 16 + 22000000390000001201000004010000 + + + + 35888 + 35888 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + A3040000660000008D0500007C010000 + + + 16 + 22000000390000001201000004010000 + + + + 35889 + 35889 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + A3040000660000008D0500007C010000 + + + 16 + 22000000390000001201000004010000 + + + + 35890 + 35890 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + A3040000660000008D0500007C010000 + + + 16 + 22000000390000001201000004010000 + + + + 35891 + 35891 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + A3040000660000008D0500007C010000 + + + 16 + 22000000390000001201000004010000 + + + + 35892 + 35892 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + A3040000660000008D0500007C010000 + + + 16 + 22000000390000001201000004010000 + + + + 35893 + 35893 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + A3040000660000008D0500007C010000 + + + 16 + 22000000390000001201000004010000 + + + + 35894 + 35894 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + A3040000660000008D0500007C010000 + + + 16 + 22000000390000001201000004010000 + + + + 35895 + 35895 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + A3040000660000008D0500007C010000 + + + 16 + 22000000390000001201000004010000 + + + + 35896 + 35896 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + A3040000660000008D0500007C010000 + + + 16 + 22000000390000001201000004010000 + + + + 35897 + 35897 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + A3040000660000008D0500007C010000 + + + 16 + 22000000390000001201000004010000 + + + + 35898 + 35898 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + A3040000660000008D0500007C010000 + + + 16 + 22000000390000001201000004010000 + + + + 35899 + 35899 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + A3040000660000008D0500007C010000 + + + 16 + 22000000390000001201000004010000 + + + + 35900 + 35900 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + A3040000660000008D0500007C010000 + + + 16 + 22000000390000001201000004010000 + + + + 35901 + 35901 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + A3040000660000008D0500007C010000 + + + 16 + 22000000390000001201000004010000 + + + + 35902 + 35902 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + A3040000660000008D0500007C010000 + + + 16 + 22000000390000001201000004010000 + + + + 35903 + 35903 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + A3040000660000008D0500007C010000 + + + 16 + 22000000390000001201000004010000 + + + + 35904 + 35904 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + A3040000660000008D0500007C010000 + + + 16 + 22000000390000001201000004010000 + + + + 35905 + 35905 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + A3040000660000008D0500007C010000 + + + 16 + 22000000390000001201000004010000 + + + + 38003 + 38003 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + 0300000066000000ED000000A4020000 + + + 16 + 22000000390000003E01000079020000 + + + + 38007 + 38007 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + 000000002703000090050000A3030000 + + + 16 + 2200000039000000EA020000C9000000 + + + + 436 + 436 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + 030000002A0300008D0500008A030000 + + + 16 + 22000000390000003E01000079020000 + + + + 437 + 437 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + 03000000300200008D05000090020000 + + + 16 + 22000000390000001201000004010000 + + + + 440 + 440 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + 03000000300200008D05000090020000 + + + 16 + 22000000390000001201000004010000 + + + + 463 + 463 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + 030000002A0300008D0500008A030000 + + + 16 + 22000000390000003E01000079020000 + + + + 466 + 466 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + 030000002A0300008D0500008A030000 + + + 16 + 22000000390000003E01000079020000 + + + + 470 + 470 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + F7000000660000008D050000C6000000 + + + 16 + 2200000039000000EA020000C9000000 + + + + 50000 + 50000 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + A3040000660000008D0500007C010000 + + + 16 + 22000000390000001201000004010000 + + + + 50001 + 50001 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + A3040000660000008D0500007C010000 + + + 16 + 22000000390000001201000004010000 + + + + 50002 + 50002 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + A3040000660000008D0500007C010000 + + + 16 + 22000000390000001201000004010000 + + + + 50003 + 50003 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + A3040000660000008D0500007C010000 + + + 16 + 22000000390000001201000004010000 + + + + 50004 + 50004 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + A3040000660000008D0500007C010000 + + + 16 + 22000000390000001201000004010000 + + + + 50005 + 50005 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + A3040000660000008D0500007C010000 + + + 16 + 22000000390000001201000004010000 + + + + 50006 + 50006 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + A3040000660000008D0500007C010000 + + + 16 + 22000000390000001201000004010000 + + + + 50007 + 50007 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + A3040000660000008D0500007C010000 + + + 16 + 22000000390000001201000004010000 + + + + 50008 + 50008 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + A3040000660000008D0500007C010000 + + + 16 + 22000000390000001201000004010000 + + + + 50009 + 50009 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + A3040000660000008D0500007C010000 + + + 16 + 22000000390000001201000004010000 + + + + 50010 + 50010 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + A3040000660000008D0500007C010000 + + + 16 + 22000000390000001201000004010000 + + + + 50011 + 50011 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + A3040000660000008D0500007C010000 + + + 16 + 22000000390000001201000004010000 + + + + 50012 + 50012 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + A3040000660000008D0500007C010000 + + + 16 + 22000000390000001201000004010000 + + + + 50013 + 50013 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + A3040000660000008D0500007C010000 + + + 16 + 22000000390000001201000004010000 + + + + 50014 + 50014 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + A3040000660000008D0500007C010000 + + + 16 + 22000000390000001201000004010000 + + + + 50015 + 50015 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + A3040000660000008D0500007C010000 + + + 16 + 22000000390000001201000004010000 + + + + 50016 + 50016 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + A3040000660000008D0500007C010000 + + + 16 + 22000000390000001201000004010000 + + + + 50017 + 50017 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + A3040000660000008D0500007C010000 + + + 16 + 22000000390000001201000004010000 + + + + 50018 + 50018 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + A3040000660000008D0500007C010000 + + + 16 + 22000000390000001201000004010000 + + + + 50019 + 50019 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + A3040000660000008D0500007C010000 + + + 16 + 22000000390000001201000004010000 + + + + 59392 + 59392 + 1 + 0 + 0 + 0 + 32767 + 0 + 8192 + 0 + + 16 + 0000000000000000D10300001C000000 + + + 16 + 0A0000000A0000006E0000006E000000 + + + + 59393 + 0 + 1 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + 00000000E603000080070000F9030000 + + + 16 + 0A0000000A0000006E0000006E000000 + + + + 59399 + 59399 + 1 + 0 + 0 + 0 + 32767 + 0 + 8192 + 1 + + 16 + 000000001C000000E701000038000000 + + + 16 + 0A0000000A0000006E0000006E000000 + + + + 59400 + 59400 + 0 + 0 + 0 + 0 + 32767 + 0 + 8192 + 2 + + 16 + 00000000380000006F02000054000000 + + + 16 + 0A0000000A0000006E0000006E000000 + + + + 824 + 824 + 0 + 0 + 0 + 0 + 32767 + 0 + 4096 + 0 + + 16 + 03000000300200008D05000090020000 + + + 16 + 22000000390000001201000004010000 + + + + 3312 + 000000000B000000000000000020000000000000FFFFFFFFFFFFFFFFF4000000DF00000090050000E3000000000000000100001004000000010000000000000000000000FFFFFFFF08000000CB00000057010000CC000000F08B00005A01000079070000D601000045890000FFFF02000B004354616262656450616E6500200000000000002200000039000000EA020000C9000000F40000004F00000090050000DF0000000000000040280046080000000B446973617373656D626C7900000000CB00000001000000FFFFFFFFFFFFFFFF14506572666F726D616E636520416E616C797A6572000000005701000001000000FFFFFFFFFFFFFFFF14506572666F726D616E636520416E616C797A657200000000CC00000001000000FFFFFFFFFFFFFFFF0E4C6F67696320416E616C797A657200000000F08B000001000000FFFFFFFFFFFFFFFF0D436F646520436F766572616765000000005A01000001000000FFFFFFFFFFFFFFFF11496E737472756374696F6E205472616365000000007907000001000000FFFFFFFFFFFFFFFF0F53797374656D20416E616C797A657200000000D601000001000000FFFFFFFFFFFFFFFF104576656E742053746174697374696373000000004589000001000000FFFFFFFFFFFFFFFFFFFFFFFF000000000000000000000000000000000000000001000000FFFFFFFFCB00000001000000FFFFFFFFCB000000000000000040000000000000FFFFFFFFFFFFFFFF9C0400004F000000A004000029020000000000000200001004000000010000000000000000000000FFFFFFFF2B000000E2050000CA0900002D8C00002E8C00002F8C0000308C0000318C0000328C0000338C0000348C0000358C0000368C0000378C0000388C0000398C00003A8C00003B8C00003C8C00003D8C00003E8C00003F8C0000408C0000418C000050C3000051C3000052C3000053C3000054C3000055C3000056C3000057C3000058C3000059C300005AC300005BC300005CC300005DC300005EC300005FC3000060C3000061C3000062C3000063C300000180004000000000000022000000390000001201000004010000A00400004F000000900500002902000000000000404100462B0000000753796D626F6C7300000000E205000001000000FFFFFFFFFFFFFFFF0A5472616365204461746100000000CA09000001000000FFFFFFFFFFFFFFFF00000000002D8C000001000000FFFFFFFFFFFFFFFF00000000002E8C000001000000FFFFFFFFFFFFFFFF00000000002F8C000001000000FFFFFFFFFFFFFFFF0000000000308C000001000000FFFFFFFFFFFFFFFF0000000000318C000001000000FFFFFFFFFFFFFFFF0000000000328C000001000000FFFFFFFFFFFFFFFF0000000000338C000001000000FFFFFFFFFFFFFFFF0000000000348C000001000000FFFFFFFFFFFFFFFF0000000000358C000001000000FFFFFFFFFFFFFFFF0000000000368C000001000000FFFFFFFFFFFFFFFF0000000000378C000001000000FFFFFFFFFFFFFFFF0000000000388C000001000000FFFFFFFFFFFFFFFF0000000000398C000001000000FFFFFFFFFFFFFFFF00000000003A8C000001000000FFFFFFFFFFFFFFFF00000000003B8C000001000000FFFFFFFFFFFFFFFF00000000003C8C000001000000FFFFFFFFFFFFFFFF00000000003D8C000001000000FFFFFFFFFFFFFFFF00000000003E8C000001000000FFFFFFFFFFFFFFFF00000000003F8C000001000000FFFFFFFFFFFFFFFF0000000000408C000001000000FFFFFFFFFFFFFFFF0000000000418C000001000000FFFFFFFFFFFFFFFF000000000050C3000001000000FFFFFFFFFFFFFFFF000000000051C3000001000000FFFFFFFFFFFFFFFF000000000052C3000001000000FFFFFFFFFFFFFFFF000000000053C3000001000000FFFFFFFFFFFFFFFF000000000054C3000001000000FFFFFFFFFFFFFFFF000000000055C3000001000000FFFFFFFFFFFFFFFF000000000056C3000001000000FFFFFFFFFFFFFFFF000000000057C3000001000000FFFFFFFFFFFFFFFF000000000058C3000001000000FFFFFFFFFFFFFFFF000000000059C3000001000000FFFFFFFFFFFFFFFF00000000005AC3000001000000FFFFFFFFFFFFFFFF00000000005BC3000001000000FFFFFFFFFFFFFFFF00000000005CC3000001000000FFFFFFFFFFFFFFFF00000000005DC3000001000000FFFFFFFFFFFFFFFF00000000005EC3000001000000FFFFFFFFFFFFFFFF00000000005FC3000001000000FFFFFFFFFFFFFFFF000000000060C3000001000000FFFFFFFFFFFFFFFF000000000061C3000001000000FFFFFFFFFFFFFFFF000000000062C3000001000000FFFFFFFFFFFFFFFF000000000063C3000001000000FFFFFFFFFFFFFFFFFFFFFFFF000000000000000000000000000000000000000001000000FFFFFFFFE205000001000000FFFFFFFFE2050000000000000010000001000000FFFFFFFFFFFFFFFFF00000004F000000F40000000F030000010000000200001004000000010000000000000000000000FFFFFFFF05000000ED0300006D000000C3000000C4000000739400000180001000000100000022000000390000001201000004010000000000004F000000F00000000F0300000000000040410056050000000750726F6A65637401000000ED03000001000000FFFFFFFFFFFFFFFF05426F6F6B73010000006D00000001000000FFFFFFFFFFFFFFFF0946756E6374696F6E7301000000C300000001000000FFFFFFFFFFFFFFFF0954656D706C6174657301000000C400000001000000FFFFFFFFFFFFFFFF09526567697374657273000000007394000001000000FFFFFFFFFFFFFFFF00000000000000000000000000000000000000000000000001000000FFFFFFFFED03000001000000FFFFFFFFED030000000000000080000000000000FFFFFFFFFFFFFFFF0000000015020000900500001902000000000000010000100400000001000000000000000000000000000000000000000000000001000000C6000000FFFFFFFF0F0000008F070000930700009407000095070000960700009007000091070000B5010000B801000038030000B9050000BA050000BB050000BC050000CB0900000180008000000000000022000000390000001201000004010000000000001902000090050000BD02000000000000404100460F0000001343616C6C20537461636B202B204C6F63616C73000000008F07000001000000FFFFFFFFFFFFFFFF0755415254202331000000009307000001000000FFFFFFFFFFFFFFFF0755415254202332000000009407000001000000FFFFFFFFFFFFFFFF0755415254202333000000009507000001000000FFFFFFFFFFFFFFFF15446562756720287072696E74662920566965776572000000009607000001000000FFFFFFFFFFFFFFFF0757617463682031000000009007000001000000FFFFFFFFFFFFFFFF0757617463682032000000009107000001000000FFFFFFFFFFFFFFFF10547261636520457863657074696F6E7300000000B501000001000000FFFFFFFFFFFFFFFF0E4576656E7420436F756E7465727300000000B801000001000000FFFFFFFFFFFFFFFF09554C494E4B706C7573000000003803000001000000FFFFFFFFFFFFFFFF084D656D6F7279203100000000B905000001000000FFFFFFFFFFFFFFFF084D656D6F7279203200000000BA05000001000000FFFFFFFFFFFFFFFF084D656D6F7279203300000000BB05000001000000FFFFFFFFFFFFFFFF084D656D6F7279203400000000BC05000001000000FFFFFFFFFFFFFFFF105472616365204E617669676174696F6E00000000CB09000001000000FFFFFFFFFFFFFFFFFFFFFFFF0000000001000000000000000000000001000000FFFFFFFFC802000019020000CC020000BD02000000000000020000000400000000000000000000000000000000000000000000000000000002000000C6000000FFFFFFFF8F07000001000000FFFFFFFF8F07000001000000C6000000000000000080000001000000FFFFFFFFFFFFFFFF000000000F03000080070000130300000100000001000010040000000100000002FDFFFF8E000000FFFFFFFF06000000C5000000C7000000B4010000D2010000CF01000077940000018000800000010000002200000039000000EA020000C9000000000000001303000080070000E60300000000000040820056060000000C4275696C64204F757470757401000000C500000001000000FFFFFFFFFFFFFFFF0D46696E6420496E2046696C657300000000C700000001000000FFFFFFFFFFFFFFFF0A4572726F72204C69737400000000B401000001000000FFFFFFFFFFFFFFFF0E536F757263652042726F7773657200000000D201000001000000FFFFFFFFFFFFFFFF0E416C6C205265666572656E63657300000000CF01000001000000FFFFFFFFFFFFFFFF0742726F77736572000000007794000001000000FFFFFFFFFFFFFFFF00000000000000000000000000000000000000000000000001000000FFFFFFFFC500000001000000FFFFFFFFC5000000000000000000000000000000 + + + 59392 + File + + 2564 + 00200000010000002800FFFF01001100434D4643546F6F6C426172427574746F6E00E100000000000000000000000000000000000000000000000100000001000000018001E100000000000001000000000000000000000000000000000100000001000000018003E1000000000000020000000000000000000000000000000001000000010000000180CD7F0000000000000300000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018023E100000000040004000000000000000000000000000000000100000001000000018022E100000000040005000000000000000000000000000000000100000001000000018025E10000000000000600000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001802BE10000000000000700000000000000000000000000000000010000000100000001802CE10000000004000800000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001807A8A0000000000000900000000000000000000000000000000010000000100000001807B8A0000000004000A00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180D3B00000000000000B000000000000000000000000000000000100000001000000018015B10000000004000C0000000000000000000000000000000001000000010000000180F4B00000000004000D000000000000000000000000000000000100000001000000018036B10000000004000E00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180FF88000000000400460000000000000000000000000000000001000000010000000180FE880000000004004500000000000000000000000000000000010000000100000001800B810000000004001300000000000000000000000000000000010000000100000001800C810000000004001400000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180F0880000020000000F000000000000000000000000000000000100000001000000FFFF0100120043555646696E64436F6D626F427574746F6EE803000000000000000000000000000000000000000000000001000000010000009600000002002050000000000B63757272656E7454696D65960000000000000001000B63757272656E7454696D6500000000018024E10000000000001100000000000000000000000000000000010000000100000001800A810000000000001200000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000FFFF01001500434D4643546F6F6C4261724D656E75427574746F6E2280000002000000150000002153746172742F53746F70202644656275672053657373696F6E094374726C2B46350000000000000000000000000100000001000000000000000000000001000000020021802280000000000000150000002153746172742F53746F70202644656275672053657373696F6E094374726C2B4635000000000000000000000000010000000100000000000000000000000100000000002180E0010000000000007500000021456E65726779204D6561737572656D656E742026776974686F75742044656275670000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180C488000000000000160000000000000000000000000000000001000000010000000180C988000000000400180000000000000000000000000000000001000000010000000180C788000000000000190000000000000000000000000000000001000000010000002180C8880000000000001700000027264B696C6C20416C6C20427265616B706F696E747320696E2043757272656E7420546172676574000000000000000000000000010000000100000000000000000000000100000003002180C8880000000000001700000027264B696C6C20416C6C20427265616B706F696E747320696E2043757272656E7420546172676574000000000000000000000000010000000100000000000000000000000100000000002180E50100000000000078000000264B696C6C20416C6C20427265616B706F696E747320696E204163746976652050726F6A656374000000000000000000000000010000000100000000000000000000000100000000002180E601000000000000790000002F4B696C6C20416C6C20427265616B706F696E747320696E204D756C74692D50726F6A65637420576F726B73706163650000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000021804C010000020001001A0000000F2650726F6A6563742057696E646F77000000000000000000000000010000000100000000000000000000000100000008002180DD880000000000001A0000000750726F6A656374000000000000000000000000010000000100000000000000000000000100000000002180DC8B0000000000003A00000005426F6F6B73000000000000000000000000010000000100000000000000000000000100000000002180E18B0000000000003B0000000946756E6374696F6E73000000000000000000000000010000000100000000000000000000000100000000002180E28B000000000000400000000954656D706C6174657300000000000000000000000001000000010000000000000000000000010000000000218018890000000000003D0000000E536F757263652042726F777365720000000000000000000000000100000001000000000000000000000001000000000021800000000000000400FFFFFFFF00000000000000000000000000010000000100000000000000000000000100000000002180D988000000000000390000000C4275696C64204F7574707574000000000000000000000000010000000100000000000000000000000100000000002180E38B000000000000410000000B46696E64204F75747075740000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180FB7F0000000000001B000000000000000000000000000000000100000001000000000000000446696C65FF7F0000 + + + 1423 + 2800FFFF01001100434D4643546F6F6C426172427574746F6E00E1000000000000FFFFFFFF000100000000000000010000000000000001000000018001E1000000000000FFFFFFFF000100000000000000010000000000000001000000018003E1000000000000FFFFFFFF0001000000000000000100000000000000010000000180CD7F000000000000FFFFFFFF00010000000000000001000000000000000100000001800000000000000000FFFFFFFF000000000000000000010000000000000001000000018023E1000000000000FFFFFFFF000100000000000000010000000000000001000000018022E1000000000000FFFFFFFF000100000000000000010000000000000001000000018025E1000000000000FFFFFFFF00010000000000000001000000000000000100000001800000000000000000FFFFFFFF00000000000000000001000000000000000100000001802BE1000000000000FFFFFFFF00010000000000000001000000000000000100000001802CE1000000000000FFFFFFFF00010000000000000001000000000000000100000001800000000000000000FFFFFFFF00000000000000000001000000000000000100000001807A8A000000000000FFFFFFFF00010000000000000001000000000000000100000001807B8A000000000000FFFFFFFF00010000000000000001000000000000000100000001800000000000000000FFFFFFFF0000000000000000000100000000000000010000000180D3B0000000000000FFFFFFFF000100000000000000010000000000000001000000018015B1000000000000FFFFFFFF0001000000000000000100000000000000010000000180F4B0000000000000FFFFFFFF000100000000000000010000000000000001000000018036B1000000000000FFFFFFFF00010000000000000001000000000000000100000001800000000000000000FFFFFFFF0000000000000000000100000000000000010000000180FF88000000000000FFFFFFFF0001000000000000000100000000000000010000000180FE88000000000000FFFFFFFF00010000000000000001000000000000000100000001800B81000000000000FFFFFFFF00010000000000000001000000000000000100000001800C81000000000000FFFFFFFF00010000000000000001000000000000000100000001800000000000000000FFFFFFFF0000000000000000000100000000000000010000000180F088000000000000FFFFFFFF0001000000000000000100000000000000010000000180EE7F000000000000FFFFFFFF000100000000000000010000000000000001000000018024E1000000000000FFFFFFFF00010000000000000001000000000000000100000001800A81000000000000FFFFFFFF00010000000000000001000000000000000100000001800000000000000000FFFFFFFF00000000000000000001000000000000000100000001802280000000000000FFFFFFFF00010000000000000001000000000000000100000001800000000000000000FFFFFFFF0000000000000000000100000000000000010000000180C488000000000000FFFFFFFF0001000000000000000100000000000000010000000180C988000000000000FFFFFFFF0001000000000000000100000000000000010000000180C788000000000000FFFFFFFF0001000000000000000100000000000000010000000180C888000000000000FFFFFFFF00010000000000000001000000000000000100000001800000000000000000FFFFFFFF0000000000000000000100000000000000010000000180DD88000000000000FFFFFFFF00010000000000000001000000000000000100000001800000000000000000FFFFFFFF0000000000000000000100000000000000010000000180FB7F000000000000FFFFFFFF000100000000000000010000000000000001000000 + + + 1423 + 2800FFFF01001100434D4643546F6F6C426172427574746F6E00E100000000000000000000000000000000000000000000000100000001000000018001E100000000000001000000000000000000000000000000000100000001000000018003E1000000000000020000000000000000000000000000000001000000010000000180CD7F0000000000000300000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018023E100000000000004000000000000000000000000000000000100000001000000018022E100000000000005000000000000000000000000000000000100000001000000018025E10000000000000600000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001802BE10000000000000700000000000000000000000000000000010000000100000001802CE10000000000000800000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001807A8A0000000000000900000000000000000000000000000000010000000100000001807B8A0000000000000A00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180D3B00000000000000B000000000000000000000000000000000100000001000000018015B10000000000000C0000000000000000000000000000000001000000010000000180F4B00000000000000D000000000000000000000000000000000100000001000000018036B10000000000000E00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180FF880000000000000F0000000000000000000000000000000001000000010000000180FE880000000000001000000000000000000000000000000000010000000100000001800B810000000000001100000000000000000000000000000000010000000100000001800C810000000000001200000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180F088000000000000130000000000000000000000000000000001000000010000000180EE7F00000000000014000000000000000000000000000000000100000001000000018024E10000000000001500000000000000000000000000000000010000000100000001800A810000000000001600000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018022800000000000001700000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180C488000000000000180000000000000000000000000000000001000000010000000180C988000000000000190000000000000000000000000000000001000000010000000180C7880000000000001A0000000000000000000000000000000001000000010000000180C8880000000000001B00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180DD880000000000001C00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180FB7F0000000000001D000000000000000000000000000000000100000001000000 + + + + 59399 + Build + + 976 + 00200000010000001000FFFF01001100434D4643546F6F6C426172427574746F6ECF7F0000000000001C0000000000000000000000000000000001000000010000000180D07F0000000000001D000000000000000000000000000000000100000001000000018030800000000002001E000000000000000000000000000000000100000001000000FFFF01001500434D4643546F6F6C4261724D656E75427574746F6EC7040000000000006A0000000C4261746368204275696C2664000000000000000000000000010000000100000000000000000000000100000004000580C7040000000000006A0000000C4261746368204275696C266400000000000000000000000001000000010000000000000000000000010000000000058046070000000000006B0000000D42617463682052656275696C640000000000000000000000000100000001000000000000000000000001000000000005804707000000000000FFFFFFFF0B426174636820436C65616E0100000000000000000000000100000001000000000000000000000001000000000005809E8A0000000000001F0000000F4261746326682053657475702E2E2E000000000000000000000000010000000100000000000000000000000100000000000180D17F0000000004002000000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001804C8A0000000004002100000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000FFFF01001900434D4643546F6F6C426172436F6D626F426F78427574746F6EBA000000000000000000000000000000000000000000000000010000000100000096000000030020500000000008546172676574203196000000000000000100085461726765742031000000000180EB880000000000002200000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180C07F000000000000230000000000000000000000000000000001000000010000000180B08A000000000400240000000000000000000000000000000001000000010000000180A8010000000004004E00000000000000000000000000000000010000000100000001807202000000000400530000000000000000000000000000000001000000010000000180BE010000000004005000000000000000000000000000000000010000000100000000000000054275696C64FF7F0000 + + + 583 + 1000FFFF01001100434D4643546F6F6C426172427574746F6ECF7F000000000000FFFFFFFF0001000000000000000100000000000000010000000180D07F000000000000FFFFFFFF00010000000000000001000000000000000100000001803080000000000000FFFFFFFF00010000000000000001000000000000000100000001809E8A000000000000FFFFFFFF0001000000000000000100000000000000010000000180D17F000000000000FFFFFFFF00010000000000000001000000000000000100000001800000000000000000FFFFFFFF00000000000000000001000000000000000100000001804C8A000000000000FFFFFFFF00010000000000000001000000000000000100000001800000000000000000FFFFFFFF00000000000000000001000000000000000100000001806680000000000000FFFFFFFF0001000000000000000100000000000000010000000180EB88000000000000FFFFFFFF00010000000000000001000000000000000100000001800000000000000000FFFFFFFF0000000000000000000100000000000000010000000180C07F000000000000FFFFFFFF0001000000000000000100000000000000010000000180B08A000000000000FFFFFFFF0001000000000000000100000000000000010000000180A801000000000000FFFFFFFF00010000000000000001000000000000000100000001807202000000000000FFFFFFFF0001000000000000000100000000000000010000000180BE01000000000000FFFFFFFF000100000000000000010000000000000001000000 + + + 583 + 1000FFFF01001100434D4643546F6F6C426172427574746F6ECF7F000000000000000000000000000000000000000000000001000000010000000180D07F00000000000001000000000000000000000000000000000100000001000000018030800000000000000200000000000000000000000000000000010000000100000001809E8A000000000000030000000000000000000000000000000001000000010000000180D17F0000000000000400000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001804C8A0000000000000500000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001806680000000000000060000000000000000000000000000000001000000010000000180EB880000000000000700000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180C07F000000000000080000000000000000000000000000000001000000010000000180B08A000000000000090000000000000000000000000000000001000000010000000180A8010000000000000A000000000000000000000000000000000100000001000000018072020000000000000B0000000000000000000000000000000001000000010000000180BE010000000000000C000000000000000000000000000000000100000001000000 + + + + 59400 + Debug + + 2373 + 00200000000000001900FFFF01001100434D4643546F6F6C426172427574746F6ECC880000000000002500000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018017800000000000002600000000000000000000000000000000010000000100000001801D800000000000002700000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001801A800000000000002800000000000000000000000000000000010000000100000001801B80000000000000290000000000000000000000000000000001000000010000000180E57F0000000000002A00000000000000000000000000000000010000000100000001801C800000000000002B00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018000890000000000002C00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180E48B0000000000002D0000000000000000000000000000000001000000010000000180F07F0000000000002E0000000000000000000000000000000001000000010000000180E8880000000000003700000000000000000000000000000000010000000100000001803B010000000000002F0000000000000000000000000000000001000000010000000180BB8A00000000000030000000000000000000000000000000000100000001000000FFFF01001500434D4643546F6F6C4261724D656E75427574746F6E0E01000000000000310000000D57617463682057696E646F7773000000000000000000000000010000000100000000000000000000000100000003001380D88B00000000000031000000085761746368202631000000000000000000000000010000000100000000000000000000000100000000001380D98B00000000000031000000085761746368202632000000000000000000000000010000000100000000000000000000000100000000001380CE01000000000000FFFFFFFF0C576174636820416E63686F720100000000000000000000000100000001000000000000000000000001000000000013800F01000000000000320000000E4D656D6F72792057696E646F7773000000000000000000000000010000000100000000000000000000000100000004001380D28B00000000000032000000094D656D6F7279202631000000000000000000000000010000000100000000000000000000000100000000001380D38B00000000000032000000094D656D6F7279202632000000000000000000000000010000000100000000000000000000000100000000001380D48B00000000000032000000094D656D6F7279202633000000000000000000000000010000000100000000000000000000000100000000001380D58B00000000000032000000094D656D6F72792026340000000000000000000000000100000001000000000000000000000001000000000013801001000000000000330000000E53657269616C2057696E646F77730000000000000000000000000100000001000000000000000000000001000000040013809307000000000000330000000855415254202326310000000000000000000000000100000001000000000000000000000001000000000013809407000000000000330000000855415254202326320000000000000000000000000100000001000000000000000000000001000000000013809507000000000000330000000855415254202326330000000000000000000000000100000001000000000000000000000001000000000013809607000000000000330000001626446562756720287072696E746629205669657765720000000000000000000000000100000001000000000000000000000001000000000013803C010000000000003400000010416E616C797369732057696E646F7773000000000000000000000000010000000100000000000000000000000100000004001380658A000000000000340000000F264C6F67696320416E616C797A6572000000000000000000000000010000000100000000000000000000000100000000001380DC7F0000000000003E0000001526506572666F726D616E636520416E616C797A6572000000000000000000000000010000000100000000000000000000000100000000001380E788000000000000380000000E26436F646520436F766572616765000000000000000000000000010000000100000000000000000000000100000000001380CD01000000000000FFFFFFFF0F416E616C7973697320416E63686F7201000000000000000000000001000000010000000000000000000000010000000000138053010000000000003F0000000D54726163652057696E646F77730000000000000000000000000100000001000000000000000000000001000000010013805401000000000000FFFFFFFF115472616365204D656E7520416E63686F720100000000000000000000000100000001000000000000000000000001000000000013802901000000000000350000001553797374656D205669657765722057696E646F77730000000000000000000000000100000001000000000000000000000001000000010013804B01000000000000FFFFFFFF1453797374656D2056696577657220416E63686F720100000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000013800189000000000000360000000F26546F6F6C626F782057696E646F7700000000000000000000000001000000010000000000000000000000010000000300138044C5000000000000FFFFFFFF0E5570646174652057696E646F77730100000000000000000000000100000001000000000000000000000001000000000013800000000000000400FFFFFFFF000000000000000000000000000100000001000000000000000000000001000000000013805B01000000000000FFFFFFFF12546F6F6C626F78204D656E75416E63686F720100000000000000000000000100000001000000000000000000000001000000000000000000054465627567FF7F0000 + + + 898 + 1900FFFF01001100434D4643546F6F6C426172427574746F6ECC88000000000000FFFFFFFF00010000000000000001000000000000000100000001800000000000000000FFFFFFFF00000000000000000001000000000000000100000001801780000000000000FFFFFFFF00010000000000000001000000000000000100000001801D80000000000000FFFFFFFF00010000000000000001000000000000000100000001800000000000000000FFFFFFFF00000000000000000001000000000000000100000001801A80000000000000FFFFFFFF00010000000000000001000000000000000100000001801B80000000000000FFFFFFFF0001000000000000000100000000000000010000000180E57F000000000000FFFFFFFF00010000000000000001000000000000000100000001801C80000000000000FFFFFFFF00010000000000000001000000000000000100000001800000000000000000FFFFFFFF00000000000000000001000000000000000100000001800089000000000000FFFFFFFF00010000000000000001000000000000000100000001800000000000000000FFFFFFFF0000000000000000000100000000000000010000000180E48B000000000000FFFFFFFF0001000000000000000100000000000000010000000180F07F000000000000FFFFFFFF0001000000000000000100000000000000010000000180E888000000000000FFFFFFFF00010000000000000001000000000000000100000001803B01000000000000FFFFFFFF0001000000000000000100000000000000010000000180BB8A000000000000FFFFFFFF0001000000000000000100000000000000010000000180D88B000000000000FFFFFFFF0001000000000000000100000000000000010000000180D28B000000000000FFFFFFFF00010000000000000001000000000000000100000001809307000000000000FFFFFFFF0001000000000000000100000000000000010000000180658A000000000000FFFFFFFF0001000000000000000100000000000000010000000180C18A000000000000FFFFFFFF0001000000000000000100000000000000010000000180EE8B000000000000FFFFFFFF00010000000000000001000000000000000100000001800000000000000000FFFFFFFF00000000000000000001000000000000000100000001800189000000000000FFFFFFFF000100000000000000010000000000000001000000 + + + 898 + 1900FFFF01001100434D4643546F6F6C426172427574746F6ECC880000000000000000000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018017800000000000000100000000000000000000000000000000010000000100000001801D800000000000000200000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001801A800000000000000300000000000000000000000000000000010000000100000001801B80000000000000040000000000000000000000000000000001000000010000000180E57F0000000000000500000000000000000000000000000000010000000100000001801C800000000000000600000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018000890000000000000700000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180E48B000000000000080000000000000000000000000000000001000000010000000180F07F000000000000090000000000000000000000000000000001000000010000000180E8880000000000000A00000000000000000000000000000000010000000100000001803B010000000000000B0000000000000000000000000000000001000000010000000180BB8A0000000000000C0000000000000000000000000000000001000000010000000180D88B0000000000000D0000000000000000000000000000000001000000010000000180D28B0000000000000E000000000000000000000000000000000100000001000000018093070000000000000F0000000000000000000000000000000001000000010000000180658A000000000000100000000000000000000000000000000001000000010000000180C18A000000000000110000000000000000000000000000000001000000010000000180EE8B0000000000001200000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180018900000000000013000000000000000000000000000000000100000001000000 + + + + 0 + 1920 + 1080 + + + + + + 1 + 0 + + 100 + 0 + + .\main.c + 19 + 1 + 2 + 1 + + 0 + + + D:\keli\uv5_arm\C51\Inc\intrins.h + 0 + 1 + 1 + 1 + + 0 + + + D:\keli\uv5_arm\C51\Inc\reg51.h + 0 + 1 + 1 + 1 + + 0 + + + .\INTRINS.h + 0 + 1 + 13 + 1 + + 0 + + + .\REG51.h + 0 + 48 + 92 + 1 + + 0 + + + + +
diff --git a/main.uvopt b/main.uvopt new file mode 100644 index 0000000..ed3f8c9 --- /dev/null +++ b/main.uvopt @@ -0,0 +1,221 @@ + + + + 1.0 + +
### uVision Project, (C) Keil Software
+ + + *.c + *.s*; *.src; *.a* + *.obj; *.o + *.lib + *.txt; *.h; *.inc + *.plm + *.cpp + 0 + + + + 0 + 0 + + + + Target 1 + 0x0 + MCS-51 + + 12000000 + + 1 + 1 + 1 + 0 + 0 + + + 0 + 65535 + 0 + 0 + 0 + + + 120 + 65 + 8 + .\Listings\ + + + 1 + 1 + 1 + 0 + 1 + 1 + 0 + 1 + 0 + 0 + 0 + 0 + + + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 0 + 0 + + + 1 + 0 + 1 + + 255 + + 1 + 0 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 0 + 1 + 1 + 1 + 0 + 1 + 1 + 1 + 1 + 0 + 0 + 1 + 0 + 0 + -1 + + + + + + + + + + + + + + + 0 + + + 0 + 1 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + + + + 0 + 0 + 0 + + + + + + + + + + + + + Source Group 1 + 1 + 0 + 0 + 0 + + 1 + 1 + 2 + 0 + 0 + 0 + .\STARTUP.A51 + STARTUP.A51 + 0 + 0 + + + 1 + 2 + 1 + 1 + 0 + 0 + .\main.c + main.c + 0 + 0 + + + 1 + 3 + 5 + 0 + 0 + 0 + .\INTRINS.h + INTRINS.h + 0 + 0 + + + 1 + 4 + 5 + 0 + 0 + 0 + .\REG51.h + REG51.h + 0 + 0 + + + +
diff --git a/main.uvproj b/main.uvproj new file mode 100644 index 0000000..71db822 --- /dev/null +++ b/main.uvproj @@ -0,0 +1,405 @@ + + + + 1.1 + +
### uVision Project, (C) Keil Software
+ + + + Target 1 + 0x0 + MCS-51 + 0 + + + STC89C52RC Series + STC + IRAM(0-0xFF) XRAM(0-0xFF) IROM(0-0x1FFF) CLOCK(45000000) MODP2 + + "LIB\STARTUP.A51" ("Standard 8051 Startup Code") + + 61442 + STC89C5xRC.H + + + + + + + + + + + 0 + 0 + + + + STC\ + STC\ + + 0 + 0 + 0 + 0 + 1 + + .\Objects\ + main + 1 + 0 + 1 + 1 + 1 + .\Listings\ + 0 + 0 + 1 + + 0 + 0 + + + 0 + 0 + 0 + 0 + + + 0 + 0 + + + 0 + 0 + 0 + 0 + + + 0 + 0 + + + 0 + 0 + 0 + 0 + + 0 + + + + 0 + 0 + 0 + 0 + 0 + 1 + 0 + 0 + 0 + 0 + 3 + + + 1 + 65535 + + + S8051.DLL + + DP51.DLL + -p51 + S8051.DLL + + TP51.DLL + -p51 + + + + 0 + 0 + 0 + 0 + 16 + + + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 0 + 1 + + + 0 + 1 + 0 + 1 + 1 + 1 + 0 + 1 + 1 + 1 + + 0 + -1 + + + + + + + + + + + + + + + + + + + 0 + 0 + 0 + 0 + 0 + -1 + + 0 + + + + + + + 0 + + + + 0 + 0 + 2 + 0 + 0 + 0 + 0 + 0 + 0 + 1 + 1 + 1 + 0 + 0 + 1 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + + + 0 + 0x0 + 0x10000 + + + 0 + 0x0 + 0x0 + + + 0 + 0x0 + 0x0 + + + 0 + 0x0 + 0x0 + + + 0 + 0x0 + 0x0 + + + 0 + 0x0 + 0x0 + + + 0 + 0x0 + 0x0 + + + 0 + 0x0 + 0x0 + + + 1 + 0x0 + 0x2000 + + + 0 + 0x0 + 0x100 + + + 0 + 0x0 + 0x100 + + + 0 + 0x0 + 0x0 + + + 0 + 0x0 + 0x0 + + + 0 + 0x0 + 0x0 + + + 0 + 0x0 + 0x0 + + + + + 0 + 0 + 1 + 0 + 1 + 3 + 8 + 2 + 1 + 1 + 0 + 0 + + + + + + + + + 0 + 1 + 0 + 0 + + + + + + + + + 0 + 0 + 1 + 0 + 2 + 1 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Source Group 1 + + + STARTUP.A51 + 2 + .\STARTUP.A51 + + + main.c + 1 + .\main.c + + + INTRINS.h + 5 + .\INTRINS.h + + + REG51.h + 5 + .\REG51.h + + + + + + + +