?? st72324blk2.h
字號:
/* ST72324BLK2.h */
/* Copyright (c) 2003, 2004, 2005 STMicroelectronics */
#ifndef __ST72324BLK2__
#define __ST72324BLK2__
/* ST72324BLK2 */
/* Check MCU name */
#ifdef MCU_NAME
#define ST72324BLK2 1
#if (MCU_NAME != ST72324BLK2)
#error "wrong include file ST72324BLK2.h for chosen MCU!"
#endif
#endif
#define STVD7_EXTERN
#ifdef __HIWARE__
/* Required to avoid errors at link time, as the Metrowerks compiler */
/* prohibits multiple definitions of the same variable. */
/* In order to define once the registers, add */
/* "#define __DEFINE_REGISTERS_STVD7_INCLUDE__" */
/* before including this file in one of your application files. */
#ifndef __DEFINE_REGISTERS_STVD7_INCLUDE__
#undef STVD7_EXTERN
#define STVD7_EXTERN extern
#endif
#endif
/*generic define */
#define BIT0 0X01
#define BIT1 0X02
#define BIT2 0X04
#define BIT3 0X08
#define BIT4 0X10
#define BIT5 0X20
#define BIT6 0X40
#define BIT7 0X80
/*****************************************************************/
/*FlagRX BIT*/
#define IDCodeSerial BIT0
#define CurrenIDCode BIT1
#define ReceivedCode BIT2
#define Is400us BIT3
#define PositivePulse BIT4
#define ReceiveDelay BIT5
#define ContinueRX BIT6
#define EncrypCode BIT7
/*****************************************************************/
/*FlagLearn BIT*/
#define Learn BIT0
/*****************************************************************/
typedef struct bits
{
unsigned char b0:1;
unsigned char b1:1;
unsigned char b2:1;
unsigned char b3:1;
unsigned char b4:1;
unsigned char b5:1;
unsigned char b6:1;
unsigned char b7:1;
} BITS;
typedef union bit_char
{
unsigned char byte;
BITS b;
} BIT_CHAR;
/*****************************************************************/
/*portc signal define*/
#define EMERGENCY_KEY BIT0
#define SIDE_TRIG BIT1
#define BRAKE BIT4
#define BACK_TRIG BIT5
#define SENSOR BIT6
#define ACC BIT7
/*portd signal define*/
#define Learn_Key BIT0
#define Engine BIT1
/*portf signal define*/
#define BackDoor BIT0
#define LED BIT1
#define Light BIT6
/*porta signal define*/
#define Voice_En BIT3
#define Voice_A0 BIT4
#define Voice_A1 BIT6
#define Voice_A2 BIT7
/*porte/f signal define*/
#define LockOpen BIT7
#define LockClose BIT1
/*UART define*/
#define TDO BIT0
#define RDI BIT1
/* Port A */
/*****************************************************************/
/* Data Register */
STVD7_EXTERN volatile unsigned char PADR @0x00;
/* Data Direction Register */
STVD7_EXTERN volatile unsigned char PADDR @0x01;
/* Option Register */
STVD7_EXTERN volatile unsigned char PAOR @0x02;
/* Port B */
/*****************************************************************/
/* Data Register */
STVD7_EXTERN volatile unsigned char PBDR @0x03;
/* Data Direction Register */
STVD7_EXTERN volatile unsigned char PBDDR @0x04;
/* Option Register */
STVD7_EXTERN volatile unsigned char PBOR @0x05;
/* Port C */
/*****************************************************************/
/* Data Register */
STVD7_EXTERN volatile unsigned char PCDR @0x06;
/* Data Direction Register */
STVD7_EXTERN volatile unsigned char PCDDR @0x07;
/* Option Register */
STVD7_EXTERN volatile unsigned char PCOR @0x08;
/* Port D */
/*****************************************************************/
/* Data Register */
STVD7_EXTERN volatile unsigned char PDDR @0x09;
/* Data Direction Register */
STVD7_EXTERN volatile unsigned char PDDDR @0x0a;
/* Option Register */
STVD7_EXTERN volatile unsigned char PDOR @0x0b;
/* Port E */
/*****************************************************************/
/* Data Register */
STVD7_EXTERN volatile unsigned char PEDR @0x0c;
/* Data Direction Register */
STVD7_EXTERN volatile unsigned char PEDDR @0x0d;
/* Option Register */
STVD7_EXTERN volatile unsigned char PEOR @0x0e;
/* Port F */
/*****************************************************************/
/* Data Register */
STVD7_EXTERN volatile unsigned char PFDR @0x0f;
/* Data Direction Register */
STVD7_EXTERN volatile unsigned char PFDDR @0x10;
/* Option Register */
STVD7_EXTERN volatile unsigned char PFOR @0x11;
/* Serial Peripheral Interface (SPI) */
/*****************************************************************/
/* Data I/O Register */
STVD7_EXTERN volatile unsigned char SPIDR @0x21;
/* Control Register */
STVD7_EXTERN volatile unsigned char SPICR @0x22;
#define SPICR_SPR0 0 /* Baud Rate */
#define SPICR_SPR0_OR (1 << SPICR_SPR0)
#define SPICR_SPR1 1 /* Baud Rate */
#define SPICR_SPR1_OR (1 << SPICR_SPR1)
#define SPICR_SPR2 5 /* Baud Rate */
#define SPICR_SPR2_OR (1 << SPICR_SPR2)
#define SPICR_SPR_OR ((1 << SPICR_SPR0)|(1 << SPICR_SPR1)\
|(1 << SPICR_SPR2))
#define SPICR_CPHA 2 /* Clock Phase */
#define SPICR_CPHA_OR (1 << SPICR_CPHA)
#define SPICR_CPOL 3 /* Clock Polarity */
#define SPICR_CPOL_OR (1 << SPICR_CPOL)
#define SPICR_MSTR 4 /* Master Bit */
#define SPICR_MSTR_OR (1 << SPICR_MSTR)
#define SPICR_SPE 6 /* Serial Peripheral Output */
#define SPICR_SPE_OR (1 << SPICR_SPE)
#define SPICR_SPIE 7 /* Serial Peripheral Interrupt */
#define SPICR_SPIE_OR (1 << SPICR_SPIE)
/* Control/Status Register */
STVD7_EXTERN volatile unsigned char SPICSR @0x23;
#define SPICSR_SSI 0 /* /SS Internal Mode */
#define SPICSR_SSI_OR (1 << SPICSR_SSI)
#define SPICSR_SSM 1 /* /SS Mode Selection */
#define SPICSR_SSM_OR (1 << SPICSR_SSM)
#define SPICSR_SOD 2 /* SPI Output Disable */
#define SPICSR_SOD_OR (1 << SPICSR_SOD)
#define SPICSR_MODF 4 /* Mode Fault Flag */
#define SPICSR_MODF_OR (1 << SPICSR_MODF)
#define SPICSR_OVR 5 /* SPI Overrun error */
#define SPICSR_OVR_OR (1 << SPICSR_OVR)
#define SPICSR_WCOL 6 /* Write Collision Status */
#define SPICSR_WCOL_OR (1 << SPICSR_WCOL)
#define SPICSR_SPIF 7 /* Data Transfer Flag */
#define SPICSR_SPIF_OR (1 << SPICSR_SPIF)
/* Interrupt Software Priority (ITC) */
/*****************************************************************/
/* Interrupt Software Priority Register 0 */
STVD7_EXTERN volatile unsigned char ISPR0 @0x24;
#define ISPR0_I0_0 0 /* TLI IT Priority Level */
#define ISPR0_I0_0_OR (1 << ISPR0_I0_0)
#define ISPR0_I1_0 1 /* TLI IT Priority Level */
#define ISPR0_I1_0_OR (1 << ISPR0_I1_0)
#define ISPR0_I_0_OR ((1 << ISPR0_I0_0)|(1 << ISPR0_I1_0))
#define ISPR0_I0_1 2 /* MCC/RTS CSS IT Priority Level */
#define ISPR0_I0_1_OR (1 << ISPR0_I0_1)
#define ISPR0_I1_1 3 /* MCC/RTS CSS IT Priority Level */
#define ISPR0_I1_1_OR (1 << ISPR0_I1_1)
#define ISPR0_I_1_OR ((1 << ISPR0_I0_1)|(1 << ISPR0_I1_1))
#define ISPR0_I0_2 4 /* External IT 0 Priority Level */
#define ISPR0_I0_2_OR (1 << ISPR0_I0_2)
#define ISPR0_I1_2 5 /* External IT 0 Priority Level */
#define ISPR0_I1_2_OR (1 << ISPR0_I1_2)
#define ISPR0_I_2_OR ((1 << ISPR0_I0_2)|(1 << ISPR0_I1_2))
#define ISPR0_I0_3 6 /* External IT 1 Priority Level */
#define ISPR0_I0_3_OR (1 << ISPR0_I0_3)
#define ISPR0_I1_3 7 /* External IT 1 Priority Level */
#define ISPR0_I1_3_OR (1 << ISPR0_I1_3)
#define ISPR0_I_3_OR ((1 << ISPR0_I0_3)|(1 << ISPR0_I1_3))
/* Interrupt Software Priority Register 1 */
STVD7_EXTERN volatile unsigned char ISPR1 @0x25;
#define ISPR1_I0_4 0 /* External IT 2 Priority Level */
#define ISPR1_I0_4_OR (1 << ISPR1_I0_4)
#define ISPR1_I1_4 1 /* External IT 2 Priority Level */
#define ISPR1_I1_4_OR (1 << ISPR1_I1_4)
#define ISPR1_I_4_OR ((1 << ISPR1_I0_4)|(1 << ISPR1_I1_4))
#define ISPR1_I0_5 2 /* External IT 3 Priority Level */
#define ISPR1_I0_5_OR (1 << ISPR1_I0_5)
#define ISPR1_I1_5 3 /* External IT 3 Priority Level */
#define ISPR1_I1_5_OR (1 << ISPR1_I1_5)
#define ISPR1_I_5_OR ((1 << ISPR1_I0_5)|(1 << ISPR1_I1_5))
#define ISPR1_I0_6 4 /* CAN IT Priority Level */
#define ISPR1_I0_6_OR (1 << ISPR1_I0_6)
#define ISPR1_I1_6 5 /* CAN IT Priority Level */
#define ISPR1_I1_6_OR (1 << ISPR1_I1_6)
#define ISPR1_I_6_OR ((1 << ISPR1_I0_6)|(1 << ISPR1_I1_6))
#define ISPR1_I0_7 6 /* SPI IT Priority Level */
#define ISPR1_I0_7_OR (1 << ISPR1_I0_7)
#define ISPR1_I1_7 7 /* SPI IT Priority Level */
#define ISPR1_I1_7_OR (1 << ISPR1_I1_7)
#define ISPR1_I_7_OR ((1 << ISPR1_I0_7)|(1 << ISPR1_I1_7))
/* Interrupt Software Priority Register 2 */
STVD7_EXTERN volatile unsigned char ISPR2 @0x26;
#define ISPR2_I0_8 0 /* Timer A IT Priority Level */
#define ISPR2_I0_8_OR (1 << ISPR2_I0_8)
#define ISPR2_I1_8 1 /* Timer A IT Priority Level */
#define ISPR2_I1_8_OR (1 << ISPR2_I1_8)
#define ISPR2_I_8_OR ((1 << ISPR2_I0_8)|(1 << ISPR2_I1_8))
#define ISPR2_I0_9 2 /* Timer B IT Priority Level */
#define ISPR2_I0_9_OR (1 << ISPR2_I0_9)
#define ISPR2_I1_9 3 /* Timer B IT Priority Level */
#define ISPR2_I1_9_OR (1 << ISPR2_I1_9)
#define ISPR2_I_9_OR ((1 << ISPR2_I0_9)|(1 << ISPR2_I1_9))
#define ISPR2_I0_10 4 /* SCI IT Priority Level */
#define ISPR2_I0_10_OR (1 << ISPR2_I0_10)
#define ISPR2_I1_10 5 /* SCI IT Priority Level */
#define ISPR2_I1_10_OR (1 << ISPR2_I1_10)
#define ISPR2_I_10_OR ((1 << ISPR2_I0_10)|(1 << ISPR2_I1_10))
#define ISPR2_I0_11 6 /* AVD IT Priority Level */
#define ISPR2_I0_11_OR (1 << ISPR2_I0_11)
#define ISPR2_I1_11 7 /* AVD IT Priority Level */
#define ISPR2_I1_11_OR (1 << ISPR2_I1_11)
#define ISPR2_I_11_OR ((1 << ISPR2_I0_11)|(1 << ISPR2_I1_11))
/* Interrupt Software Priority Register 3 */
STVD7_EXTERN volatile unsigned char ISPR3 @0x27;
#define ISPR3_I0_12 0 /* I2C IT Priority Level */
#define ISPR3_I0_12_OR (1 << ISPR3_I0_12)
#define ISPR3_I1_12 1 /* I2C IT Priority Level */
#define ISPR3_I1_12_OR (1 << ISPR3_I1_12)
#define ISPR3_I_12_OR ((1 << ISPR3_I0_12)|(1 << ISPR3_I1_12))
#define ISPR3_I0_13 2 /* PWM ART IT Priority Level */
#define ISPR3_I0_13_OR (1 << ISPR3_I0_13)
#define ISPR3_I1_13 3 /* PWM ART IT Priority Level */
#define ISPR3_I1_13_OR (1 << ISPR3_I1_13)
#define ISPR3_I_13_OR ((1 << ISPR3_I0_13)|(1 << ISPR3_I1_13))
/* External Interrupt Control Register */
STVD7_EXTERN volatile unsigned char EICR @0x28;
#define EICR_TLIE 0 /* TLI Enable */
#define EICR_TLIE_OR (1 << EICR_TLIE)
#define EICR_TLIS 1 /* TLI Sensitivity */
#define EICR_TLIS_OR (1 << EICR_TLIS)
#define EICR_IPA 2 /* Interrupt Polarity port A */
#define EICR_IPA_OR (1 << EICR_IPA)
#define EICR_IS20 3 /* EI0/EI1 Sensitivity */
#define EICR_IS20_OR (1 << EICR_IS20)
#define EICR_IS21 4 /* EI0/EI1 Sensitivity */
#define EICR_IS21_OR (1 << EICR_IS21)
#define EICR_IS2_OR ((1 << EICR_IS20)|(1 << EICR_IS21))
#define EICR_IPB 5 /* Interrupt Polarity port B */
#define EICR_IPB_OR (1 << EICR_IPB)
#define EICR_IS10 6 /* EI2/EI3 Sensitivity */
#define EICR_IS10_OR (1 << EICR_IS10)
#define EICR_IS11 7 /* EI2/EI3 Sensitivity */
#define EICR_IS11_OR (1 << EICR_IS11)
#define EICR_IS1_OR ((1 << EICR_IS10)|(1 << EICR_IS11))
/* Flash */
/*****************************************************************/
/* Flash Control/Status Register */
STVD7_EXTERN volatile unsigned char FCSR @0x29;
/* WatchDog Timer */
/*****************************************************************/
/* Control Register */
STVD7_EXTERN volatile unsigned char WDGCR @0x2a;
#define WDGCR_WDGA 7 /* Activation Bit */
#define WDGCR_WDGA_OR (1 << WDGCR_WDGA)
#define WDGCR_T0 0 /* 7-bit Timer */
#define WDGCR_T0_OR (1 << WDGCR_T0)
#define WDGCR_T1 1 /* 7-bit Timer */
#define WDGCR_T1_OR (1 << WDGCR_T1)
#define WDGCR_T2 2 /* 7-bit Timer */
#define WDGCR_T2_OR (1 << WDGCR_T2)
#define WDGCR_T3 3 /* 7-bit Timer */
#define WDGCR_T3_OR (1 << WDGCR_T3)
#define WDGCR_T4 4 /* 7-bit Timer */
#define WDGCR_T4_OR (1 << WDGCR_T4)
#define WDGCR_T5 5 /* 7-bit Timer */
#define WDGCR_T5_OR (1 << WDGCR_T5)
#define WDGCR_T6 6 /* 7-bit Timer */
#define WDGCR_T6_OR (1 << WDGCR_T6)
#define WDGCR_T_OR ((1 << WDGCR_T0)|(1 << WDGCR_T1)\
|(1 << WDGCR_T2)|(1 << WDGCR_T3)|(1 << WDGCR_T4)|(1 << WDGCR_T5)\
|(1 << WDGCR_T6))
/* Main Clock Control/Status Register (MCC) */
/*****************************************************************/
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -