Blame | Last modification | View Log | Download | RSS feed | ?url?
ifndef __reg72361inc ; avoid multiple inclusion
__reg72361inc equ 1
save
listing off ; no listing over this file
;****************************************************************************
;* *
;* AS 1.42 - File REG72361.INC *
;* *
;* contains SFR and Bit Definitions for ST72[AR/J/K]361 *
;* *
;* Source: ST72361 Data Sheet, Rev. 3, August 2010, Doc ID 12468 *
;* *
;****************************************************************************
;----------------------------------------------------------------------------
; Memory Addresses
RAMSTART label $0080 ; start address internal RAM
switch substr(MOMCPUNAME,9,1)
case "4","6"
RAMEND label $067f ; end " " "
case "7","9"
RAMEND label $087f ; end " " "
endcase
;----------------------------------------------------------------------------
; Interrupt Vectors
PWM_ART_vect label $ffe0 ; PWM ART Interrupt
LINSCI1_vect label $ffe2 ; LINSCI1 Interrupt Vector
LINSCI2_vect label $ffe4 ; LINSCI2 Interrupt Vector
TIMER16_vect label $ffe6 ; 16-bit Timer Interrupt Vector
TIMER8_vect label $ffe8 ; 8-bit Timer Interrupt Vector
SPI_vect label $ffea ; SPI Interrupt Vector
EI3_vect label $fff0 ; External Interrupt Vector B7..4
EI2_vect label $fff2 ; External Interrupt Vector B3..0
EI1_vect label $fff4 ; External Interrupt Vector F2..0
EI0_vect label $fff6 ; External Interrupt Vector A3..0, shared with
AWU_vect label $fff6 ; Auto wake up from halt
MCC_RTC_vect label $fff8 ; Main clock controller time base interrupt
TLI_vect label $fffa ; Top Level Interrupt
TRAP_vect label $fffc ; TRAP (software) Interrupt Vector
RESET_vect label $fffe ; RESET Vector
;----------------------------------------------------------------------------
; GPIO
include "gpio.inc"
__defgpio "PA",$0000
__defgpio "PB",$0003
__defgpio "PC",$0006
__defgpio "PD",$0009
__defgpio "PE",$000c
__defgpio "PF",$000f
;----------------------------------------------------------------------------
; SPI
include "spi2.inc"
__defspi $0021
;----------------------------------------------------------------------------
; Flash
FCSR label $0024 ; Flash Control/Status Register
;----------------------------------------------------------------------------
; ITC
ISPR0 label $0025 ; Interrupt Software Priority Register 0
I0_0 bit ISPR0,0
I1_0 bit ISPR0,1
I0_1 bit ISPR0,2
I1_1 bit ISPR0,3
I0_2 bit ISPR0,4
I1_2 bit ISPR0,5
I0_3 bit ISPR0,6
I1_3 bit ISPR0,7
ISPR1 label $0026 ; Interrupt Software Priority Register 1
I0_4 bit ISPR1,0
I1_4 bit ISPR1,1
I0_5 bit ISPR1,2
I1_5 bit ISPR1,3
I0_6 bit ISPR1,4
I1_6 bit ISPR1,5
I0_7 bit ISPR1,6
I1_7 bit ISPR1,7
ISPR2 label $0027 ; Interrupt Software Priority Register 2
I0_8 bit ISPR2,0
I1_8 bit ISPR2,1
I0_9 bit ISPR2,2
I1_9 bit ISPR2,3
I0_10 bit ISPR2,4
I1_10 bit ISPR2,5
I0_11 bit ISPR2,6
I1_11 bit ISPR2,7
ISPR3 label $0028 ; Interrupt Software Priority Register 3
I0_12 bit ISPR3,0
I1_12 bit ISPR3,1
I0_13 bit ISPR3,2
I1_13 bit ISPR3,3
EICR0 label $0029 ; External Interrupt Control Register 0
IS3 bfield EICR0,6,2 ; ei3 sensitivity
IS2 bfield EICR0,4,2 ; ei2 sensitivity
IS1 bfield EICR0,2,2 ; ei1 sensitivity
IS0 bfield EICR0,0,2 ; ei0 sensitivity
EICR1 label $002a ; External Interrupt Control Register 1
TLIS bit EICR1,1 ; Top Level Interrupt sensitivity
TLIE bit EICR1,0 ; Top Level Interrupt enable
;----------------------------------------------------------------------------
; PWM ART
include "pwm_art.inc"
__defpwmart $0031
;----------------------------------------------------------------------------
; 8-bit Timer
T8CR2 label $003c ; Timer Control Register 2
T8ICIE bit T8CR2,7 ; Input Capture Interrupt Enable
T8OCIE bit T8CR2,6 ; Output Compare Interrupt Enable
T8TOIE bit T8CR2,5 ; Timer Overflow Interrupt Enable
T8FOLV2 bit T8CR2,4 ; Forced Output Compare 2
T8FOLV1 bit T8CR2,3 ; Forced Output Compare 1
T8OLVL2 bit T8CR2,2 ; Output Level 2
T8IEDG1 bit T8CR2,1 ; Input Edge 1
T8OLVL1 bit T8CR2,0 ; Output Level 1
T8CR1 label $003d ; Timer Control Register 1
T8OC1E bit T8CR1,7 ; Output Compare 1 Pin Enable
T8OC2E bit T8CR1,6 ; Output Compare 2 Pin Enable
T8OPM bit T8CR1,5 ; One Pulse Mode
T8PWM bit T8CR1,4 ; Pulse Width Modulation
T8CC bfield T8CR1,2,2 ; Clock Control
T8IEDG2 bit T8CR1,1 ; Input Edge 2
T8CSR label $003e ; Timer Control/Status Register
T8ICF1 bit T8CSR,7 ; Input Capture Flag 1
T8OCF1 bit T8CSR,6 ; Output Compare Flag 1
T8TOF bit T8CSR,5 ; Timer Overflow Flag
T8ICF2 bit T8CSR,4 ; Input Capture Flag 2
T8OCF2 bit T8CSR,3 ; Output Compare Flag 2
T8TIMD bit T8CSR,2 ; Timer disable
T8IC1R label $003f ; Timer Input Capture 1 Register
T8OC1R label $0040 ; Timer Output Compare 1 Register
T8CTR label $0041 ; Timer Counter Register
T8ACTR label $0042 ; Timer Alternate Counter Register
T8IC2R label $0043 ; Timer Input Capture 2 Register
T8OC2R label $0044 ; Timer Output Compare 2 Register
;----------------------------------------------------------------------------
; 16-bit Timer
include "timer.inc"
__deftimer "T16",$0050
T16CSR label T16SR ; Control/Status Register
T16TIMD bit T16CSR,2 ; Timer Disable
;----------------------------------------------------------------------------
; LINSCI
__deflinsci macro Name,Base
__NS set "\{NAME}"
SCI{__NS}SR label $0050 ; SCI Status Register
SCI{__NS}TDRE bit SCI{__NS}SR,7 ; Transmit data register empty
SCI{__NS}TC bit SCI{__NS}SR,6 ; Transmission complete
SCI{__NS}RDRF bit SCI{__NS}SR,5 ; Received data ready flag
SCI{__NS}IDLE bit SCI{__NS}SR,4 ; Idle line detect
SCI{__NS}OR bit SCI{__NS}SR,3 ; Overrun error
SCI{__NS}NF bit SCI{__NS}SR,2 ; Noise flag
SCI{__NS}FE bit SCI{__NS}SR,1 ; Framing error
SCI{__NS}PE bit SCI{__NS}SR,0 ; Parity Error
SCI{__NS}DR label Base+$01 ; SCI Data Register
SCI{__NS}BRR label Base+$02 ; SCI Baud Rate Register
SCI{__NS}SCP bfield SCI{__NS}BRR,6,2 ; First SCI Prescaler [1:0]
SCI{__NS}SCT bfield SCI{__NS}BRR,3,3 ; SCI Transmitter rate divisor [2:0]
SCI{__NS}SCR bfield SCI{__NS}BRR,0,3 ; SCI Receiver rate divisor [2:0]
SCI{__NS}CR1 label Base+$03 ; SCI Control Register 1
SCI{__NS}R8 bit SCI{__NS}CR1,7 ; Receive data bit 8
SCI{__NS}T8 bit SCI{__NS}CR1,6 ; Transmit data bit 8
SCI{__NS}SCID bit SCI{__NS}CR1,5 ; SCI Disable
SCI{__NS}M bit SCI{__NS}CR1,4 ; Word length
SCI{__NS}WAKE bit SCI{__NS}CR1,3 ; Wake-Up method
SCI{__NS}PCE bit SCI{__NS}CR1,2 ; Parity control enable
SCI{__NS}PS bit SCI{__NS}CR1,1 ; Parity selection
SCI{__NS}PIE bit SCI{__NS}CR1,0 ; Parity interrupt enable
SCI{__NS}CR2 label Base+$04 ; SCI Control Register 2
SCI{__NS}TIE bit SCI{__NS}CR2,7 ; Transmitter interrupt enable
SCI{__NS}TCIE bit SCI{__NS}CR2,6 ; Transmission complete interrupt enable
SCI{__NS}RIE bit SCI{__NS}CR2,5 ; Receiver interrupt enable
SCI{__NS}ILIE bit SCI{__NS}CR2,4 ; Idle line interrupt enable
SCI{__NS}TE bit SCI{__NS}CR2,3 ; Transmitter enable
SCI{__NS}RE bit SCI{__NS}CR2,2 ; Receiver enable
SCI{__NS}RWU bit SCI{__NS}CR2,1 ; Receiver wake-up
SCI{__NS}SBK bit SCI{__NS}CR2,0 ; Send break
SCI{__NS}CR3 label Base+$05 ; SCI Control Register 3
SCI{__NS}LINE bit SCI{__NS}CR3,6 ; LIN Mode Enable
SCI{__NS}CLKEN bit SCI{__NS}CR3,3 ; Clock Enable
SCI{__NS}CPOL bit SCI{__NS}CR3,2 ; Clock Polarity
SCI{__NS}CPHA bit SCI{__NS}CR3,1 ; Clock Phase
SCI{__NS}LBCL bit SCI{__NS}CR3,0 ; Last bit clock pulse
SCI{__NS}ERPR label Base+$06 ; SCI Extended Receive Prescaler Register
SCI{__NS}ETPR label Base+$07 ; SCI Extended Transmit Prescaler Register
endm
__deflinsci "1",$0048
__deflinsci "2",$0060
;----------------------------------------------------------------------------
; Analog/Digital Converter
include "adc10.inc"
__defadc10 $0045
SLOW bit ADCCSR,4 ; A/D Clock Selection
restore
endif ; __reg72361inc