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

📄 tlregs.h

📁 Keil3软件下载
💻 H
📖 第 1 页 / 共 2 页
字号:
/*--------------------------------------------------------------------------
TLregs.H

Header file for STM 3200 MicroPSD (uPSD) microcontroller.
06/2002 Ver 0.1 - Initial Version
08/2002 Ver 0.2 - Added Interrupt Vectors & Misc values

Copyright (c) 2002 ST Microelectronics
This example demo code is provided as is and has no warranty,
implied or otherwise.  You are free to use/modify any of the provided
code at your own risk in your applications with the expressed limitation
of liability (see below) so long as your product using the code contains
at least one uPSD products (device).

LIMITATION OF LIABILITY:   NEITHER STMicroelectronics NOR ITS VENDORS OR 
AGENTS SHALL BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF USE, LOSS OF DATA,
INTERRUPTION OF BUSINESS, NOR FOR INDIRECT, SPECIAL, INCIDENTAL OR
CONSEQUENTIAL DAMAGES OF ANY KIND WHETHER UNDER THIS AGREEMENT OR
OTHERWISE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
--------------------------------------------------------------------------*/

#ifndef _TLREGS_H_
#define _TLREGS_H_

#include "PSDregs.h"

// Common Misc. Defines...
#ifndef TRUE
  #define TRUE 0x01
#endif 
#ifndef FALSE
  #define FALSE 0x00
#endif 
#ifndef ON
  #define ON 0x01
#endif 
#ifndef OFF
  #define OFF 0x00
#endif 
#ifndef NULL
  #define NULL 0x00
#endif 

/* ------------------------------ */
/*      Processor Registers		  */
/* ------------------------------ */

sfr PSW   = 0xD0;		// Program Status Word
			sbit CY    = PSW^7;	// Carry
			sbit AC    = PSW^6;	// 
			sbit F0    = PSW^5;
			sbit RS1   = PSW^4;
			sbit RS0   = PSW^3;
			sbit OV    = PSW^2;	// Overflow
			sbit P     = PSW^0; 	// 
sfr ACC   = 0xE0;		// Accumulator
sfr B     = 0xF0;		// Register B
sfr SP    = 0x81;		// Stack Pointer
sfr DPL   = 0x82;		// Data Pointer low byte
sfr DPH   = 0x83;		// Data Pointer high byt

/*	DPTR Control	*/
sfr DPTC	= 0x85;	// XData Ptr Control
			//sbit AT		= DPTC^6;
			//sbit DPSEL2	= DPTC^2;
			//sbit DPSEL1	= DPTC^1;
			//sbit DPSEL0	= DPTC^0;
sfr	DPTM	= 0x86;	// XData Ptr Mode
			//sbit MD11	= DPTM^3;
			//sbit MD10	= DPTM^2;
			//sbit MD01	= DPTM^1;
			//sbit MD00	= DPTM^0;

/* ------------------------------ */
/*      Debug Unit				  */
/* ------------------------------ */
sfr	DIR		= 0x9E;
sfr	DVR		= 0x9F;
sfr DSTAT	= 0xCF;

/* ------------------------------ */
/*      	Power Management      */
/* ------------------------------ */
sfr	PCON	= 0x87;
			//sbit SMOD	= PCON^7;		// Baud Rate Double for USART when using TIMER1 as baud rate generator
			//sbit SMOD2= PCON^6;		// Baud Rate Double for USART2 when using TIMER1 as baud rate generator
			//sbit LVD	= PCON^5;		// Low voltage Reset enable
			//sbit POR	= PCON^4;		// 
			//sbit PD   = PCON^1;		// Power Down Mode
			//sbit IDLE = PCON^0;		// Idle Mode

/* ------------------------------ */
/*      	IO Ports			  */
/* ------------------------------ */
/*	port 1	*/
sfr	P1		= 0x90;
			sbit P1_7   = P1^7;	// bit 7 of P1
			sbit P1_6   = P1^6;	// bit 6 of P1
			sbit P1_5   = P1^5;	// bit 5 of P1
			sbit P1_4   = P1^4;	// bit 4 of P1
			sbit P1_3   = P1^3;	// bit 3 of P1
			sbit P1_2   = P1^2;	// bit 2 of P1
			sbit P1_1   = P1^1;	// bit 1 of P1
			sbit P1_0   = P1^0;	// bit 0 of P1

			sbit ADC7  = P1^7;	// ADC Input 3
			sbit ADC6  = P1^6;	// ADC Input 2
			sbit ADC5  = P1^5;	// ADC Input 1
			sbit ADC4  = P1^4;	// ADC Input 0
			sbit ADC3  = P1^3;	// ADC Input 3
			sbit ADC2  = P1^2;	// ADC Input 2
			sbit ADC1  = P1^1;	// ADC Input 1
			sbit ADC0  = P1^0;	// ADC Input 0

			sbit SPISSEL	= P1^7;	// SPI Slave Select
			sbit SPITXD		= P1^6;	// SPI TxD
			sbit SPIRXD 	= P1^5;	// SPI RxD
			sbit SPISCLK	= P1^4;	// SPI SCLK
			sbit TXD2 	 	= P1^3;	// USART2
			sbit RXD2  		= P1^2;	// USART2
			sbit T2EX  		= P1^1; // Timer2 Triger
			sbit T2    		= P1^0; // Timer2 Input

sfr	P1SFS0	= 0x8E;						// Port1 Selection Register 0
			// P1SFS0[7:0];
sfr	P1SFS1	= 0x8F;						// Port1 Selection Register 1
			// P1SFS1[7:0];

/*	port 3	*/
sfr	P3		= 0xB0;
			sbit P3_7   = P3^7;	// bit 7 of P3
			sbit P3_6   = P3^6;	// bit 6 of P3
			sbit P3_5   = P3^5;	// bit 5 of P3
			sbit P3_4   = P3^4;	// bit 4 of P3
			sbit P3_3   = P3^3;	// bit 3 of P3
			sbit P3_2   = P3^2;	// bit 2 of P3
			sbit P3_1   = P3^1;	// bit 1 of P3
			sbit P3_0   = P3^0;	// bit 0 of P3

			sbit I2CSCL = P3^7;	// I2C Serial Clock
			sbit I2CSDA = P3^6;	// I2C Serial Data
			sbit T1    = P3^5;	// Timer 1 Input
			sbit T0    = P3^4;	// Timer 0 Input
			sbit INT1  = P3^3;	// Ext Int 1 / Timer 1 Gate	
			sbit INT0  = P3^2;	// Ext Int 0 / Timer 0 Gate
			sbit TXD   = P3^1;	// USART0
			sbit RXD   = P3^0;	// USART0

sfr	P3SFS	= 0x91;						// Port3 Selection Register
			//sbit P3S7   = P3SFS^7;	// I2C Clock
			//sbit P3S6   = P3SFS^6;	// I2C Data

/*	port 4	*/
sfr	P4		= 0xC0;
			sbit P4_7   = P4^7;	// bit 7 of P4
			sbit P4_6   = P4^6;	// bit 6 of P4
			sbit P4_5   = P4^5;	// bit 5 of P4
			sbit P4_4   = P4^4;	// bit 4 of P4
			sbit P4_3   = P4^3;	// bit 3 of P4
			sbit P4_2   = P4^2;	// bit 2 of P4
			sbit P4_1   = P4^1;	// bit 1 of P4
			sbit P4_0   = P4^0;	// bit 0 of P4

			sbit PCA1CLK= P4^7;	// PCA1 External Clock
			sbit TCM5   = P4^6;	// PWM3
			sbit TCM4   = P4^5;	// PMW2
			sbit TCM3   = P4^4;	// PMW1
			sbit PCA0CLK= P4^3;	// PCA0 External Clock
			sbit TCM2   = P4^2;	// DDC Vsync input
			sbit TCM1   = P4^1;	// DDC SCL
			sbit TCM0   = P4^0;	// DDC SDA

			//sbit SPISSEL	= P4^7;	// SPI Slave Select
			//sbit SPITXD	= P4^6;	// SPI TxD
			//sbit SPIRXD 	= P4^5;	// SPI RxD
			//sbit SPISCLK	= P4^4;	// SPI SCLK
			//sbit TXD2 	= P4^3;	// USART2
			//sbit RXD2  	= P4^2;	// USART2
			//sbit T2EX  	= P4^1; // Timer2 Triger
			//sbit T2    	= P4^0; // Timer2 Input

sfr	P4SFS0	= 0x92;						// Port4 Select Register 0
			//sbit P4S7   = P4SFS0^7;	// PWM4 (variable PWM) 
			//sbit P4S6   = P4SFS0^6;	// PWM3
			//sbit P4S5   = P4SFS0^5;	// PMW2
			//sbit P4S4   = P4SFS0^4;	// PMW1
			//sbit P4S3   = P4SFS0^3;	// PMW0 (8-bit)
			//sbit P4S2   = P4SFS0^2;	// DDC Vsync input
			//sbit P4S1   = P4SFS0^1;	// DDC SCL
			//sbit P4S0   = P4SFS0^0;	// DDC SDA

sfr	P4SFS1	= 0x93;						// Port4 Select Register 1
			// P4SFS[7:0];
			
/* ------------------------------ */
/*      		ADC			      */
/* ------------------------------ */
sfr ADCPS	= 0x94;
			//sbit ADCCE	=CCON4^3;
			//sbit ADCPS2	=CCON4^2;
			//sbit ADCPS1	=CCON4^1;
			//sbit ADCPS0	=CCON4^0;
sfr	ADAT0	= 0x95;						// ADC Data Register 0
			//sbit ADAT7	= ADTA^7;
			//sbit ADAT6	= ADTA^6;
			//sbit ADAT5	= ADTA^5;
			//sbit ADAT4 	= ADTA^4;
			//sbit ADAT3	= ADTA^3;
			//sbit ADAT2	= ADTA^2;
			//sbit ADAT1	= ADTA^1;
			//sbit ADAT0	= ADTA^0;
sfr	ADAT1	= 0x96;						// ADC Data Register 1
			//sbit ADAT9	= ADTA2^1;
			//sbit ADAT8	= ADTA2^0;
sfr	ACON=0x97;
			//sbit AINTF	= ACON^7;
			//sbit AINTEN	= ACON^6;
			//sbit ADEN		= ACON^5;
			//sbit ADS2		= ACON^4;
			//sbit ADS1		= ACON^3;
			//sbit ADS0		= ACON^2;
			//sbit ADST		= ACON^1;
			//sbit ADSF		= ACON^0;

/* ------------------------------ */
/*      	Bus Interface	      */
/* ------------------------------ */
sfr	BUSCON=0x9D;
			//sbit EPFQ	= BUSCON^7;
			//sbit EBC	= BUSCON^6;
			//sbit WRW1	= BUSCON^5;
			//sbit WRW0	= BUSCON^4;
			//sbit RDW1	= BUSCON^3;
			//sbit RDW0	= BUSCON^2;
			//sbit CW1	= BUSCON^1;
			//sbit CW0	= BUSCON^0;

/* ------------------------------ */
/*      	PCA				      */
/* ------------------------------ */
sfr	PCACL0	= 0XA2;
sfr	PCACH0	= 0xA3;
sfr	PCACON0	= 0xA4;
			//sbit EN_ALL	= PCACON0^7;
			//sbit EN_PCA	= PCACON0^6;
			//sbit EOVF1	= PCACON0^5;
			//sbit PCA_IDLE	= PCACON0^4;
			//sbit CLKSEL1	= PCACON0^1;
			//sbit CLKSEL0	= PCACON0^0;

sfr	PCACL1	= 0xBA;
sfr	PCACH1	= 0xBB;
sfr	PCACON1	= 0xBC;
			//sbit EN_PCA1	= PCACON1^6;
			//sbit EOVF11	= PCACON1^5;
			//sbit PCA_IDLE1= PCACON1^4;
			//sbit CLKSEL11	= PCACON1^1;
			//sbit CLKSEL01	= PCACON1^0;

sfr	PCASTA	= 0xA5;
			//sbit OVF1		= PCASTA^7;
			//sbit INTF5	= PCASTA^6;
			//sbit INTF4	= PCASTA^5;
			//sbit INTF3	= PCASTA^4;
			//sbit OVF0		= PCASTA^3;
			//sbit INTF2	= PCASTA^2;
			//sbit INTF1	= PCASTA^1;
			//sbit INTF0	= PCASTA^0;
sfr	PWMF0	= 0xB4;
sfr PWMF1	= 0xC7;

sfr	TCMMODE0	= 0xa9;
			//sbit EINTF0	= TCMMODE0^7;
			//sbit E_COMP0	= TCMMODE0^6;
			//sbit CAP_PE0	= TCMMODE0^5;
			//sbit CAP_NE0	= TCMMODE0^4;
			//sbit MATCH0	= TCMMODE0^3;
			//sbit TOGGLE0	= TCMMODE0^2;
			//sbit PWM10	= TCMMODE0^1;
			//sbit PWM00	= TCMMODE0^0;

sfr	TCMMODE1	= 0xAA;
			//sbit EINTF1	= TCMMODE1^7;
			//sbit E_COMP1	= TCMMODE1^6;
			//sbit CAP_PE1	= TCMMODE1^5;
			//sbit CAP_NE1	= TCMMODE1^4;
			//sbit MATCH1	= TCMMODE1^3;
			//sbit TOGGLE1	= TCMMODE1^2;
			//sbit PWM11	= TCMMODE1^1;
			//sbit PWM01	= TCMMODE1^0;

⌨️ 快捷键说明

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