⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 flp.lst

📁 Library for the 8051 microcontroller. such as math routine, hexBCD, LCD, Keyboard, I2C, Remote, Ke
💻 LST
字号:

ASEM-51 V1.3                                         Copyright (c) 2002 by W.W. Heinz                                         PAGE 1





       MCS-51 Family Macro Assembler   A S E M - 5 1   V 1.3
       =====================================================



	Source File:	E:\Electronics\MiCrOConTroller\Micro Programming\M-IDE\PI\FLP.asm
	Object File:	E:\Electronics\MiCrOConTroller\Micro Programming\M-IDE\PI\FLP.hex
	List File:	E:\Electronics\MiCrOConTroller\Micro Programming\M-IDE\PI\FLP.lst



 Line  I  Addr  Code            Source

    1:
    2:				;------------------------------------------------------------------------------------
    3:				; Program square wafe osilator dengan memanfaatkan prosedur interrupt timer.
    4:				; Output berupa gelombang kotak (flip-flop Port2.0 dan Port2.1)
    5:				; Frequency 50 hz pada operasi X-tall 12Mhz
    6:				; by: Herlambang Aribowo J0D005037 D3 Instrumentasi dan Elektronika UNDIP
    7:				;------------------------------------------------------------------------------------
    8:		N      EC78	isine equ  -5000
    9:		N      0020	cntx  equ  20h
   10:		N      0021	cnty  equ  21h
   11:		B	 A0	Q     bit  p2.0
   12:		B	 A1	Qinv  bit  p2.1
   13:		N      0000	              Org          00h        ; iki routine pengorganisasian memori usage
   14:	  0000	80 1C		              sjmp         mulai      ; 00h buat operasi routine normal
   15:		N      000B	              Org          0bh        ; 0bh adalah memory alocation buat interrupt timer0

   16:	  000B	02 00 46	              Ljmp         nginterupt ; iki alamat routin interrupt
   17:		N      001B	              Org          1bh        ; 1bh adalah alamat alocation buat interrupt timer1
   18:	  001B	02 00 69	              Ljmp         nginterupt2; alamat routine interrupt timer1
   19:	  001E	C2 A0		mulai:        clr          Q
   20:	  0020	C2 A1		              clr          Qinv
   21:	  0022	75 20 02	              mov          cntx,#02h  ; counter timer0 biar 25hz
   22:	  0025	75 21 02	              mov          cnty,#02h  ; counter timer1 biar 25hz
   23:	  0028	75 89 11	InitTimer:    mov          TMOD,#11h       ; setting timer mode
   24:	  002B	75 8A FF	              mov          tl0,#0ffh        ; ngisi tl dan th timer 0 dengan ffh
   25:	  002E	75 8C FF	              mov          th0,#0ffh        ;
   26:	  0031	D2 8D		              setb         tf0             ; kondisikan overflow
   27:	  0033	D2 A9		              setb         ET0             ; aktifkan layanan interrupt timer0
   28:	  0035	75 8B 78	              mov          tl1,#low (isine)
   29:	  0038	75 8D EC	              mov          th1,#high (isine)        ;
   30:	  003B	D2 8F		              setb         tf1             ; kondisikan overflow
   31:	  003D	D2 AB		              setb         ET1             ; aktifkan layanan interrupt timer0
   32:	  003F	D2 AF		              setb         EA              ; aktifkan master layanan interrupt
   33:	  0041	D2 8C		              setb         TR0             ; layanan interrupt timer0 dijalankan
   34:	  0043	02 00 8C	              ljmp         looping
   35:
   36:				;------------------------------------------------------------------------------------------------
   37:				; Procedure Flip-flop dengan layanan interupt T0 dan T1
   38:				;------------------------------------------------------------------------------------------------
   39:
   40:	  0046	75 8A 78	nginterupt:   mov          tl0,#low (isine)
   41:	  0049	75 8C EC	              mov          th0,#high (isine)
   42:	  004C	D5 20 0B	              djnz         Cntx,rampungx   ; uwis 20ms po durung?

ASEM-51 V1.3                                         Copyright (c) 2002 by W.W. Heinz                                         PAGE 2



 Line  I  Addr  Code            Source

   43:	  004F	C2 8D		              clr          tf0             ; bersihkan flag timer 0 overflow
   44:	  0051	C2 8C		              clr          tr0             ; mateni timer internal
   45:	  0053	11 64		              acall        pulsax          ; pulsax
   46:	  0055	75 20 02	              mov          Cntx,#2         ; tiap overflow dikali2 ben 10ms dab
   47:	  0058	11 5B		              acall        resetx          ; reset boss..
   48:	  005A	32		rampungx:     reti                         ;
   49:
   50:	  005B			resetx:
   51:	  005B	75 8A 78	              mov          tl0,#low (isine)
   52:	  005E	75 8C EC	              mov          th0,#high (isine)
   53:	  0061	D2 8E		              setb         tr1        ; nyumet timer1
   54:	  0063	22		              ret                     ; balek maning
   55:
   56:	  0064	C2 A0		pulsax:       clr          Q          ; pulsa low
   57:	  0066	B2 A1		              cpl          Qinv       ; pulsa high
   58:	  0068	22		              ret
   59:
   60:
   61:	  0069	75 8B 78	nginterupt2:  mov          tl1,#low (isine)
   62:	  006C	75 8D EC	              mov          th1,#high (isine)
   63:	  006F	D5 21 0B	              djnz         Cnty,rampungy   ; uwis 20ms po durung?
   64:	  0072	C2 8F		              clr          tf1             ; bersihkan flag timer 0 overflow
   65:	  0074	C2 8E		              clr          tr1             ; mateni timer internal
   66:	  0076	11 87		              acall        pulsay          ; pulsa inverse pulsax
   67:	  0078	75 21 02	              mov          Cnty,#2         ; tiap overflow dikali2 ben 10ms dab
   68:	  007B	11 7E		              acall        resety          ; reset boss..
   69:	  007D	32		rampungy:     reti                         ;
   70:
   71:	  007E			resety:
   72:	  007E	75 8B 78	              mov          tl1,#low (isine)
   73:	  0081	75 8D EC	              mov          th1,#high (isine)
   74:	  0084	D2 8C		              setb         tr0        ; nyumet timer1
   75:	  0086	22		              ret                     ; balek maning
   76:
   77:	  0087	B2 A0		pulsay:       cpl          Q          ; pulsa high
   78:	  0089	B2 A1		              cpl          Qinv       ; pulsa low
   79:	  008B	22		              ret
   80:
   81:				;------------------------------------------------------------------------------------------------
   82:				; Routine utama buat bekerja mencari nafkah hehehehe :)
   83:				;------------------------------------------------------------------------------------------------
   84:
   85:	  008C			looping:
   86:	  008C	80 FE		              sjmp         looping
   87:
   88:				              end





                     register banks used:  ---

                     no errors



ASEM-51 V1.3                                         Copyright (c) 2002 by W.W. Heinz                                         PAGE 3





ASEM-51 V1.3                                         Copyright (c) 2002 by W.W. Heinz                                         PAGE 4





	       L I S T   O F   S Y M B O L S
	       =============================


SYMBOL				  TYPE     VALUE	LINE
------------------------------------------------------------
??ASEM_51			  NUMBER    8051
??VERSION			  NUMBER    0130
AC				  BIT	      D6
ACC				  DATA	      E0
B				  DATA	      F0
CNTX				  NUMBER    0020	   9
CNTY				  NUMBER    0021	  10
CY				  BIT	      D7
DPH				  DATA	      83
DPL				  DATA	      82
EA				  BIT	      AF
ES				  BIT	      AC
ET0				  BIT	      A9
ET1				  BIT	      AB
EX0				  BIT	      A8
EX1				  BIT	      AA
EXTI0				  CODE	    0003
EXTI1				  CODE	    0013
F0				  BIT	      D5
IE				  DATA	      A8
IE0				  BIT	      89
IE1				  BIT	      8B
INITTIMER			  CODE	    0028	  23
INT0				  BIT	      B2
INT1				  BIT	      B3
IP				  DATA	      B8
ISINE				  NUMBER    EC78	   8
IT0				  BIT	      88
IT1				  BIT	      8A
LOOPING				  CODE	    008C	  85
MULAI				  CODE	    001E	  19
NGINTERUPT			  CODE	    0046	  40
NGINTERUPT2			  CODE	    0069	  61
OV				  BIT	      D2
P				  BIT	      D0
P0				  DATA	      80
P1				  DATA	      90
P2				  DATA	      A0
P3				  DATA	      B0
PCON				  DATA	      87
PS				  BIT	      BC
PSW				  DATA	      D0
PT0				  BIT	      B9
PT1				  BIT	      BB
PULSAX				  CODE	    0064	  56
PULSAY				  CODE	    0087	  77
PX0				  BIT	      B8
PX1				  BIT	      BA
Q				  BIT	      A0	  11
QINV				  BIT	      A1	  12

ASEM-51 V1.3                                         Copyright (c) 2002 by W.W. Heinz                                         PAGE 5



SYMBOL				  TYPE     VALUE	LINE
------------------------------------------------------------
RAMPUNGX			  CODE	    005A	  48
RAMPUNGY			  CODE	    007D	  69
RB8				  BIT	      9A
RD				  BIT	      B7
REN				  BIT	      9C
RESET				  CODE	    0000
RESETX				  CODE	    005B	  50
RESETY				  CODE	    007E	  71
RI				  BIT	      98
RS0				  BIT	      D3
RS1				  BIT	      D4
RXD				  BIT	      B0
SBUF				  DATA	      99
SCON				  DATA	      98
SINT				  CODE	    0023
SM0				  BIT	      9F
SM1				  BIT	      9E
SM2				  BIT	      9D
SP				  DATA	      81
T0				  BIT	      B4
T1				  BIT	      B5
TB8				  BIT	      9B
TCON				  DATA	      88
TF0				  BIT	      8D
TF1				  BIT	      8F
TH0				  DATA	      8C
TH1				  DATA	      8D
TI				  BIT	      99
TIMER0				  CODE	    000B
TIMER1				  CODE	    001B
TL0				  DATA	      8A
TL1				  DATA	      8B
TMOD				  DATA	      89
TR0				  BIT	      8C
TR1				  BIT	      8E
TXD				  BIT	      B1
WR				  BIT	      B6

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -