📄 stddef75.inc
字号:
save
listing off ; kein Listing 乥er diesen File
;****************************************************************************
;* *
;* AS 1.40 - Datei STDDEF75.INC *
;* *
;* Sinn : enth刲t SFR-Definitionen f乺 die 鍼D75K0-Familie *
;* *
;* letzte 巒derungen : 2.12.1994 *
;* *
;****************************************************************************
ifndef stddef75inc ; verhindert Mehrfacheinbindung
stddef75inc equ 1
;----------------------------------------------------------------------------
; Bequemlichkeit
__message macro msg,{NoExpand}
if MOMPASS=1
message msg
endif
endm
__message "鍼D75K0-Registerdefinitionen, (C) 1994 Alfred Arnold"
;----------------------------------------------------------------------------
; Die Prozessoren zu Gruppen zusammenfassen
switch MOMCPU
case 480258
__message "Binde 鍼D75402-Register ein"
__family equ 400
case 479236,479238,479240
__message "Binde 鍼D750xx-Register ein"
__family equ 000
case 479848
__message "Binde 鍼D75268-Register ein"
__family equ 260
case 480004,480006,480008,480018,480022
__message "Binde 鍼D753xx-Register ein"
__family equ 300
case 480040
__message "Binde 鍼D75328-Register ein"
__family equ 320
case 479492,479494,479496,479506,479510
__message "Binde 鍼D751xx-Register ein"
__family equ 100
case 479750,479752,479762,479766
__message "Binde 鍼D752xx-Register ein"
__family equ 200
case 480530,480534
__message "Binde 鍼D755xx-Register ein"
__family equ 500
elsecase
fatal "Fehler: Keine CPU aus der 鍼D75xxx-Familie definiert"
endcase
;----------------------------------------------------------------------------
; da alle Interrupt-Register gleich sind, daf乺 ein Makro bauen
__defint macro NAME,base,{NoExpand}
__tmpnam set "NAME"
I{__tmpnam} sfr base
IE{__tmpnam} bit base.1
IRQ{__tmpnam} bit base.0
endm
;----------------------------------------------------------------------------
; gemeinsame Register:
SP sfr 0f80h ; [8W] Stack-Pointer
BTM sfr 0f85h ; [4W] Modus Basis-Timer
BT sfr 0f86h ; [8R] Z刪lwert Basis-Timer
IM0 sfr 0fb4h ; [4W] INT0 Modusregister
__defint BT,0fb8h ; [4] Freigabe/Anzeige Interrupt BT
PORT0 sfr 0ff0h ; [4R] Datenregister Port 0
PORT1 sfr 0ff1h ; [4R] Datenregister Port 1
PORT2 sfr 0ff2h ; [4] Datenregister Port 2
PORT3 sfr 0ff3h ; [4] Datenregister Port 3
PORT5 sfr 0ff5h ; [4] Datenregister Port 5
PORT6 sfr 0ff6h ; [4] Datenregister Port 6
RESET label 0000h ; Resetvektor
VIBT label 0002h ; Interruptvektoradresse INTBT
; z.T. auch INT4
VI0 label 0004h ; Interruptvektoradresse INT0
; z.T. auch INT1
;----------------------------------------------------------------------------
if __family=400
IME bit 0fb2h.3 ; [8] Interruptsperre (mit EI/DI ansprechen)
PCC sfr 0fb3h ; [4W] Steuerung Prozessortakt
__defint CSI,0fbdh ; [4] Freigabe/Anzeige Interrupt CSI
__defint 0,0fbeh ; [4] Freigabe/Anzeige Interrupt 0
__defint 2,0fbeh ; [4] Freigabe/Anzeige Interrupt 2
CLOM sfr 0fd0h ; [4W] Taktausgabe Modusregister
POGA sfr 0fdch ; [8W] Steuerung Pull-Ups Port A
CSIM sfr 0fe0h ; [8W] Betriebsart serielle Schnittstelle
CSIE bit CSIM+1.3
COI bit CSIM+1.2
WUP bit CSIM+1.1
SBIC sfr 0fe2h ; [1] Steuerung SBI
CMDD bit SBIC.3
RELD bit SBIC.2
CMDT bit SBIC.1
RELT bit SBIC.0
BSYE bit SBIC+1.3
ACKD bit SBIC+1.2
ACKE bit SBIC+1.1
ACKT bit SBIC+1.0
SIO sfr 0fe4h ; [8] Datenregister SIO
SVA sfr 0fe6h ; [8W] Knotenadresse auf seriellem Bus
PMGA sfr 0fe8h ; [8W] Betriebsart Ports
PMGB sfr 0fech ; [8W] " "
VICSI label 0008h ; Interruptvektoradresse INTCSI
RAMEnd sfr 64 ; RAM-Gr斸e
endif
;- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
if __family=000
WM sfr 0f98h ; [8] Modus Watchdog
TM0 sfr 0fa0h ; [8] Modus Timer 0
TOE0 bit 0fa2h.3 ; [1W] Freigabe Ausgabe Timer 0
T0 sfr 0fa4h ; [8R] Z刪lwert Timer 0
TMOD0 sfr 0fa6h ; [8W] Moduloregister Timer 0
PSW sfr 0fb0h ; [4] Programmstatus
IST0 bit PSW.2
MBE bit PSW.1
IME bit 0fb2h.3 ; [8] Interruptsperre (mit EI/DI ansprechen)
PCC sfr 0fb3h ; [4W] Steuerung Prozessortakt
IM1 sfr 0fb5h ; [4W] INT1 Modusregister
IM2 sfr 0fb6h ; [4W] INT2 Modusregister
SCC sfr 0fb7h ; [1W] Steuerung Systemtakt
IE4 bit IBT.3 ; Freigabe/Anzeige Interrupt 4
IRQ4 bit IBT.2
__defint W,0fbah ; [4] Freigabe/Anzeige Interrupt W
__defint T0,0fbch ; [4] Freigabe/Anzeige Interrupt T0
__defint CSI,0fbdh ; [4] Freigabe/Anzeige Interrupt CSI
__defint 0,0fbeh ; [4] Freigabe/Anzeige Interrupt 0
IE1 bit I0.3 ; Freigabe/Anzeige Interrupt 1
IRQ1 bit I0.2
__defint 2,0fbfh ; [4] Freigabe/Anzeige Interrupt 2
BSB0 sfr 0fc0h ; [4] bitsequentielle Puffer
BSB1 sfr 0fc1h
BSB2 sfr 0fc2h
BSB3 sfr 0fc3h
CLOM sfr 0fd0h ; [4W] Taktausgabe Modusregister
POGA sfr 0fdch ; [8W] Steuerung Pull-Ups Port A
POGB sfr 0fdeh ; [8W] Steuerung Pull-Ups Port B
CSIM sfr 0fe0h ; [8W] Betriebsart serielle Schnittstelle
CSIE bit CSIM+1.3
COI bit CSIM+1.2
WUP bit CSIM+1.1
SBIC sfr 0fe2h ; [1] Steuerung SBI
CMDD bit SBIC.3
RELD bit SBIC.2
CMDT bit SBIC.1
RELT bit SBIC.0
BSYE bit SBIC+1.3
ACKD bit SBIC+1.2
ACKE bit SBIC+1.1
ACKT bit SBIC+1.0
SIO sfr 0fe4h ; [8] Datenregister SIO
SVA sfr 0fe6h ; [8W] Knotenadresse auf seriellem Bus
PMGA sfr 0fe8h ; [8W] Betriebsart Ports
PM33 bit PMGA.3
PM32 bit PMGA.2
PM31 bit PMGA.1
PM30 bit PMGA.0
PM63 bit PMGA+1.3
PM62 bit PMGA+1.2
PM61 bit PMGA+1.1
PM60 bit PMGA+1.0
PMGB sfr 0fech ; [8W] " "
PM2 bit PMGB.2
PM4 bit PMGB+1.0
PM5 bit PMGB+1.1
PM7 bit PMGB+1.3
PMGC sfr 0feeh ; [8W] " "
PM8 bit PMGC.0
PORT4 sfr 0ff4h ; [4] Datenregister Port 4
KR0 sfr PORT6.0
KR1 sfr PORT6.1
KR2 sfr PORT6.2
KR3 sfr PORT6.3
PORT7 sfr 0ff7h ; [4] Datenregister Port 7
KR4 sfr PORT7.0
KR5 sfr PORT7.1
KR6 sfr PORT7.2
KR7 sfr PORT7.3
PORT8 sfr 0ff8h ; [4] Datenregister Port 8
VI1 label 0006h ; Interruptvektoradresse INT1
VICSI label 0008h ; Interruptvektoradresse INTCSI
VIT0 label 000ah ; Interruptvektoradresse INTT0
RAMEnd sfr 512 ; RAM-Gr斸e
endif
;- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
if __family=260
DSPM sfr 0f88h ; [4W] Modus Display
DIMS sfr 0f89h ; [4W] Dimmereinstellung Display
DIGS sfr 0f8ah ; [4] Stellenauswahl Display
KSF bit DIGS.3
WM sfr 0f98h ; [8] Modus Watchdog
TM0 sfr 0fa0h ; [8] Modus Timer 0
T0 sfr 0fa4h ; [8R] Z刪lwert Timer 0
TMOD0 sfr 0fa6h ; [8W] Moduloregister Timer 0
PSW sfr 0fb0h ; [4] Programmstatus
IST0 bit PSW.2
MBE bit PSW.1
IME bit 0fb2h.3 ; [8] Interruptsperre (mit EI/DI ansprechen)
PCC sfr 0fb3h ; [4W] Steuerung Prozessortakt
IM1 sfr 0fb5h ; [4W] INT1 Modusregister
SCC sfr 0fb7h ; [1W] Steuerung Systemtakt
IE4 bit IBT.3 ; Freigabe/Anzeige Interrupt 4
IRQ4 bit IBT.2
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -