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

📄 reg166.inc

📁 万能汇编工具
💻 INC
📖 第 1 页 / 共 4 页
字号:
C1MCFG7		 equ	0ef76h
C1MCFG8		 equ	0ef86h
C1MCFG9		 equ	0ef96h
C1MCFG10	 equ	0efa6h		
C1MCFG11	 equ	0efb6h
C1MCFG12	 equ	0efc6h
C1MCFG13	 equ	0efd6h
C1MCFG14	 equ	0efe6h
C1MCFG15	 equ	0eff6h
C1MCR1		 equ	0ef10h		; CAN1 Message Control Register 
C1MCR2		 equ	0ef20h
C1MCR3		 equ	0ef30h
C1MCR4		 equ	0ef40h
C1MCR5		 equ	0ef50h
C1MCR6		 equ	0ef60h
C1MCR7		 equ	0ef70h
C1MCR8		 equ	0ef80h
C1MCR9		 equ	0ef90h
C1MCR10		 equ	0efa0h
C1MCR11		 equ	0efb0h
C1MCR12		 equ	0efc0h
C1MCR13		 equ	0efd0h
C1MCR14		 equ	0efe0h
C1MCR15		 equ	0eff0h
C1PCIR		 equ	0ef02h		; CAN1 Port Control and Interrupt Register 
C1UAR1		 equ	0ef12h		; CAN1 Upper Arbitration Register
C1UAR2		 equ	0ef22h
C1UAR3		 equ	0ef32h
C1UAR4		 equ	0ef42h
C1UAR5		 equ	0ef52h
C1UAR6		 equ	0ef62h
C1UAR7		 equ	0ef72h
C1UAR8		 equ	0ef82h
C1UAR9		 equ	0ef92h
C1UAR10		 equ	0efa2h
C1UAR11		 equ	0efb2h
C1UAR12		 equ	0efc2h
C1UAR13		 equ	0efd2h
C1UAR14		 equ	0efe2h
C1UAR15		 equ	0eff2h
C1UGML		 equ	0ef08h		; CAN1 Upper Global Mask Long
C1UMLM		 equ	0ef0ch		; CAN1 Upper Mask Of Last Message
		endif
		if	_n>=168

;bitram;	 DefIntBits C2, 0ee02h	; CAN2 Interrupt Kontroll-Register 
C2BTR		 equ	0ee04h		; CAN2 Bit Timing Register
C2CSR		 equ	0ee00h		; CAN2 Control Status Register
C2GMS		 equ	0ee06h		; CAN2 Global Mask Support
C2LAR1		 equ	0ee14h		; CAN2 Lower Arbitration Register
C2LAR2		 equ	0ee24h
C2LAR3		 equ	0ee34h
C2LAR4		 equ	0ee44h
C2LAR5		 equ	0ee54h
C2LAR6		 equ	0ee64h
C2LAR7		 equ	0ee74h
C2LAR8		 equ	0ee84h
C2LAR9		 equ	0ee94h
C2LAR10		 equ	0eea4h
C2LAR11		 equ	0eeb4h
C2LAR12		 equ	0eec4h
C2LAR13		 equ	0eed4h
C2LAR14		 equ	0eee4h
C2LAR15		 equ	0eef4h
C2LGML		 equ	0ee0ah		; CAN2 Lower Global Mask Support
C2LMLM		 equ	0ee0eh		; CAN2 Lower Mask Of Last Message
C2MCFG1		 equ	0ee16h		; CAN2 Message Configuration Register
C2MCFG2		 equ	0ee26h
C2MCFG3		 equ	0ee36h
C2MCFG4		 equ	0ee46h
C2MCFG5		 equ	0ee56h
C2MCFG6		 equ	0ee66h
C2MCFG7		 equ	0ee76h
C2MCFG8		 equ	0ee86h
C2MCFG9		 equ	0ee96h
C2MCFG10	 equ	0eea6h
C2MCFG11	 equ	0eeb6h
C2MCFG12	 equ	0eec6h
C2MCFG13	 equ	0eed6h
C2MCFG14	 equ	0eee6h
C2MCFG15	 equ	0eef6h
C2MCR1		 equ	0ee10h		; CAN2 Message Control Register
C2MCR2		 equ	0ee20h
C2MCR3		 equ	0ee30h
C2MCR4		 equ	0ee40h
C2MCR5		 equ	0ee50h
C2MCR6		 equ	0ee60h
C2MCR7		 equ	0ee70h
C2MCR8		 equ	0ee80h
C2MCR9		 equ	0ee90h
C2MCR10		 equ	0eea0h
C2MCR11		 equ	0eeb0h
C2MCR12		 equ	0eec0h
C2MCR13		 equ	0eed0h
C2MCR14		 equ	0eee0h
C2MCR15		 equ	0eef0h
C2PCIR		 equ	0ee02h		; CAN2 Port Control And Interrupt Register
C2UAR1		 equ	0ee12h		; CAN2 Upper Arbitration Register
C2UAR2		 equ	0ee22h
C2UAR3		 equ	0ee32h
C2UAR4		 equ	0ee42h
C2UAR5		 equ	0ee52h
C2UAR6		 equ	0ee62h
C2UAR7		 equ	0ee72h
C2UAR8		 equ	0ee82h
C2UAR9		 equ	0ee92h
C2UAR10		 equ	0eea2h
C2UAR11		 equ	0eeb2h
C2UAR12		 equ	0eec2h
C2UAR13		 equ	0eed2h
C2UAR14		 equ	0eee2h
C2UAR15		 equ	0eef2h
C2UGML		 equ	0ee08h		; CAN2 Upper Global Mask Support
C2UMLM		 equ	0ee0ch		; CAN2 Upper Mask Of Last Message
		endif


;----------------------------------------------------------------------------
; Vektoren/Sonderadressen

RESET           equ     000h            ; Reseteinsprung
NMITRAP         equ     008h            ; NMI-Einsprung
STOTRAP         equ     010h            ; Einsprung Stackueberlauf
STUTRAP         equ     018h            ; Einsprung Stackunterlauf
BTRAP           equ     028h            ; undef. Opcode, Protection Fault,
                                        ; unerlaubter Wortzugriff, ungueltige Instruktionsadresse,
                                        ; ungueltiger Buszugriff
CC0INT          equ     040h            ; Interrupteinspruenge CAPCOM
CC1INT          equ     044h
CC2INT          equ     048h
CC3INT          equ     04ch
CC4INT          equ     050h
CC5INT          equ     054h
CC6INT          equ     058h
CC7INT          equ     05ch
CC8INT          equ     060h
CC9INT          equ     064h
CC10INT         equ     068h
CC11INT         equ     06ch
CC12INT         equ     070h
CC13INT         equ     074h
CC14INT         equ     078h
CC15INT         equ     07ch
                if      _n>=167
CC16INT          equ     0c0h
CC17INT          equ     0c4h
CC18INT          equ     0c8h
CC19INT          equ     0cch
CC20INT          equ     0d0h
CC21INT          equ     0d4h
CC22INT          equ     0d8h
CC23INT          equ     0dch
CC24INT          equ     0e0h
CC25INT          equ     0e4h
CC26INT          equ     0e8h
CC27INT          equ     0ech
CC28INT          equ     0f0h
CC29INT          equ    0110h
CC30INT          equ    0114h
CC31INT          equ    0118h
		endif


T0INT           equ     080h            ; Interrupteinsprung Timer 0
T1INT           equ     084h            ; Interrupteinsprung Timer 1
T2INT           equ     088h            ; Interrupteinsprung Timer 2
T3INT           equ     08ch            ; Interrupteinsprung Timer 3
T4INT           equ     090h            ; Interrupteinsprung Timer 4
T5INT           equ     094h            ; Interrupteinsprung Timer 5
T6INT           equ     098h            ; Interrupteinsprung Timer 6
                if      _n>=167
T7INT            equ	 0f4h            ; Interrupteinsprung Timer 7
T8INT            equ	 0f8h            ; Interrupteinsprung Timer 8
		endif


CRINT           equ     09ch            ; Interrupteinsprung CAPREL
ADCINT          equ     0a0h            ; Interrupteinsprung A/D-Wandlung fertig
ADEINT          equ     0a4h            ; Interrupteinsprung A/D-Wandler-Ueberlauf
S0TINT          equ     0a8h            ; Interrupteinsprung SIO0 wieder sendebereit
S0RINT          equ     0ach            ; Interrupteinsprung SIO0 hat Zeichen empfangen
S0EINT          equ     0b0h            ; Interrupteinsprung SIO0 hat Fehler erkannt
S1TINT          equ     0b4h            ; Interrupteinsprung SIO1 wieder sendebereit
S1RINT          equ     0b8h            ; Interrupteinsprung SIO1 hat Zeichen empfangen
S1EINT          equ     0bch            ; Interrupteinsprung SIO1 hat Fehler erkannt
                if      _n>=167
S0TBINT		 equ	011ch		; ASC0 Transmit Buffer
PWMINT		 equ	0fch		; PWM Channel 0..3
XP0INT		 equ	0100h		; CAN1
XP1INT		 equ	0104h		; CAN2
XP2INT		 equ	0108h		; Unassigned Node
XP3INT		 equ	010ch		; PLL,OWD,RTC
		endif


;----------------------------------------------------------------------------
; Speicherbereiche
;
		switch 	 _n
		case	168
IRAM            equ     0f200h		; Beginn internes RAM
		case	167
IRAM            equ     0f600h
		elsecase
IRAM            equ     0fa00h
		endcase	
IRAMEND         equ     0fdffh          ; Ende      "      "


BITRAM          equ     0fd00h          ; Beginn bitadressierbarer IRAM-Bereich
BITRAMEND       equ     0fdffh          ; Ende           "          "     "

		if	_n>=167
BITRAM1           equ     0f100h         ; Beginn bitadressierbarer ESFR Bereich
BITRAM1END        equ     0f1ffh         ; Ende           "          "     "
BITRAM2           equ     0ff00h         ; Beginn bitadressierbarer SFR Bereich
BITRAM2END        equ     0ffffh         ; Ende           "          "     "
		endif


                if      _n>=167
PECPTR           equ     0fce0h         ; Begin PEC-Vektoren (optional)
PECPTREND        equ     0fcffh         ; Ende   "     "
                elseif
PECPTR           equ     0fde0h
PECPTREND        equ     0fdffh
                endif

SFRSTART         equ     0fe00h         ; Beginn SFR-Bereich
SFREND           equ     0ffffh         ; Ende SFR-Bereich
	
                if      _n>=167
ESFRSTART        equ     0f000h         ; Beginn erweiterter SFR-Bereich
ESFREND          equ     0f1ffh         ; Ende erweiterter SFR-Bereich
                endif

IROM            equ     0               ; Begin internes ROM
                if      _n>=167
IROMEND          equ     07fffh         ; Ende internes ROM (n. voll ausgebaut)
                elseif
IROMEND          equ     01fffh
                endif
		
		if	_n>=168
EEPROM		 equ	 08000h		; Internes 4 KByte EEprom
EEPROMEND	 equ	 08fffh		; Ende internes EEprom
		endif
		if	_n>=167
XRAM1		 equ	 0e000h		; Internes XRAM 2 KByte
XRAM1END	 equ	 0e7ffh		; Internes XRAM 2 KByte Ende
		endif
		if	_n>=168
XRAM2		 equ	 0c000h		; Internes XRAM 6 KByte
XRAM2END	 equ	 0d7ffh		; Internes XRAM 6 KByte Ende
		endif
                

;----------------------------------------------------------------------------
; Bequemlichkeitsmakros

clr             macro   op              ; Operand auf 0 setzen
                and     op,#0
                endm

bchg            macro   op              ; Bit invertieren
                bmovn   op,op
                endm

dec             macro   op              ; um eins runter
                sub     op,#1
                endm

inc             macro   op              ; um eins rauf
                add     op,#1
                endm

swapb           macro   op              ; Bytes tauschen
                ror     op,#8
                endm

;----------------------------------------------------------------------------

		endif

		restore                 ; wieder erlauben

⌨️ 快捷键说明

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