历史上的今天
今天是:2025年03月12日(星期三)
2018年03月12日 | 头文件AT89x051.H
2018-03-12 来源:eefocus
头文件AT89x051.H
/*--------------------------------------------------------------------------
AT89x051.H
Header file for the Atmel 89C1051U, 89C2051, 89C4051.
Copyright (c) 1995-2000 Keil SOFtware, Inc. All rights reserved.
--------------------------------------------------------------------------*/
#ifndef AT89CX051_HEADER_FILE
#define AT89CX051_HEADER_FILE 1
/*------------------------------------------------
Byte Registers
------------------------------------------------*/
sfr SP = 0x81;
sfr DPL = 0x82;
sfr DPH = 0x83;
sfr PCON = 0x87;
sfr TCON = 0x88;
sfr TMOD = 0x89;
sfr TL0 = 0x8A;
sfr TL1 = 0x8B;
sfr TH0 = 0x8C;
sfr TH1 = 0x8D;
sfr P1 = 0x90;
sfr SCON = 0x98;
sfr SBUF = 0x99;
sfr IE = 0xA8;
sfr P3 = 0xB0;
sfr IP = 0xB8;
sfr PSW = 0xD0;
sfr ACC = 0xE0;
sfr B = 0xF0;
/*------------------------------------------------
PCON Bit Values
------------------------------------------------*/
#define IDL_ 0x01
#define STOP_ 0x02
#define EWT_ 0x04
#define EPFW_ 0x08
#define WTR_ 0x10
#define PFW_ 0x20
#define POR_ 0x40
#define SMOD_ 0x80
/*------------------------------------------------
TCON Bit Registers
------------------------------------------------*/
sbit IT0 = 0x88;
sbit IE0 = 0x89;
sbit IT1 = 0x8A;
sbit IE1 = 0x8B;
sbit TR0 = 0x8C;
sbit TF0 = 0x8D;
sbit TR1 = 0x8E;
sbit TF1 = 0x8F;
/*------------------------------------------------
TMOD Bit Values
------------------------------------------------*/
#define T0_M0_ 0x01
#define T0_M1_ 0x02
#define T0_CT_ 0x04
#define T0_GATE_ 0x08
#define T1_M0_ 0x10
#define T1_M1_ 0x20
#define T1_CT_ 0x40
#define T1_GATE_ 0x80
#define T1_MASK_ 0xF0
#define T0_MASK_ 0x0F
/*------------------------------------------------
P1 Bit Registers
------------------------------------------------*/
sbit P1_0 = 0x90;
sbit P1_1 = 0x91;
sbit P1_2 = 0x92;
sbit P1_3 = 0x93;
sbit P1_4 = 0x94;
sbit P1_5 = 0x95;
sbit P1_6 = 0x96;
sbit P1_7 = 0x97;
sbit AIN0 = 0x90; /* + Analog comparator input */
sbit AIN1 = 0x91; /* - Analog comparator input */
/*------------------------------------------------
SCON Bit Registers
------------------------------------------------*/
sbit RI = 0x98;
sbit TI = 0x99;
sbit RB8 = 0x9A;
sbit TB8 = 0x9B;
sbit REN = 0x9C;
sbit SM2 = 0x9D;
sbit SM1 = 0x9E;
sbit SM0 = 0x9F;
/*------------------------------------------------
IE Bit Registers
------------------------------------------------*/
sbit EX0 = 0xA8; /* 1=Enable External interrupt 0 */
sbit ET0 = 0xA9; /* 1=Enable Timer 0 interrupt */
sbit EX1 = 0xAA; /* 1=Enable External interrupt 1 */
sbit ET1 = 0xAB; /* 1=Enable Timer 1 interrupt */
sbit ES = 0xAC; /* 1=Enable Serial port interrupt */
sbit ET2 = 0xAD; /* 1=Enable Timer 2 interrupt */
sbit EA = 0xAF; /* 0=DISAble all interrupts */
/*------------------------------------------------
P3 Bit Registers (MnemonICs & Ports)
------------------------------------------------*/
sbit P3_0 = 0xB0;
sbit P3_1 = 0xB1;
sbit P3_2 = 0xB2;
sbit P3_3 = 0xB3;
sbit P3_4 = 0xB4;
sbit P3_5 = 0xB5;
/* P3_6 Hardwired as AOUT */
sbit P3_7 = 0xB7;
sbit RXD = 0xB0; /* Serial data input */
sbit TXD = 0xB1; /* Serial data output */
sbit INT0 = 0xB2; /* External interrupt 0 */
sbit INT1 = 0xB3; /* External interrupt 1 */
sbit T0 = 0xB4; /* Timer 0 external input */
sbit T1 = 0xB5; /* Timer 1 external input */
sbit AOUT = 0xB6; /* Analog comparator output */
/*------------------------------------------------
IP Bit Registers
------------------------------------------------*/
sbit PX0 = 0xB8;
sbit PT0 = 0xB9;
sbit PX1 = 0xBA;
sbit PT1 = 0xBB;
sbit PS = 0xBC;
/*------------------------------------------------
PSW Bit Registers
------------------------------------------------*/
sbit P = 0xD0;
sbit FL = 0xD1;
sbit OV = 0xD2;
sbit RS0 = 0xD3;
sbit RS1 = 0xD4;
sbit F0 = 0xD5;
sbit AC = 0xD6;
sbit CY = 0xD7;
/*------------------------------------------------
Interrupt Vectors:
Interrupt Address = (Number * 8) + 3
------------------------------------------------*/
#define IE0_VECTOR 0 /* 0x03 External interrupt 0 */
#define TF0_VECTOR 1 /* 0x0B Timer 0 */
#define IE1_VECTOR 2 /* 0x13 External interrupt 1 */
#define TF1_VECTOR 3 /* 0x1B Timer 1 */
#define SIO_VECTOR 4 /* 0x23 Serial port */
/*------------------------------------------------
------------------------------------------------*/
#endif
上一篇:16进制转换算成10进制程序
下一篇:8279做的时钟程序C语言源代码
史海拾趣
|
各位,大家好,请教一下大家各问题,这个电路我研究了n多遍,但是还是解决不了里面一些器件的作用,还请各位多多指教。 图中:Q2A1的作用是什么?Q1A1、Q1B1两个管子组成的时电流源么?R5是正反馈电阻么?D1的作用是什么呢?C5的作用是交流正反馈 ...… 查看全部问答> |
|
一、雷电防护基本原理 雷电及其它强干扰对通信系统的致损及由此引起的后里是严重的,雷电防护将成为必需。雷电由高能的低频成份与极具渗透性的高频成份组成。其主要通过两种形式,一种是通过金属管线或地线直接传导雷电致损设备;一种 ...… 查看全部问答> |
|
转载自 yqli520_2006的博客:http://blog.163.com/yqli520_2006/blog/static/50287777200861863946207/ 昨天看到了一则新闻,标题是《家庭主妇都用上了LINUX》,如果在10年前看到这则新闻,我们肯定惊讶不已,会说:“我靠,家庭主妇也他妈用 LINU ...… 查看全部问答> |
|
LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; ENTITY control IS PORT( clk,rest:IN STD_LOGIC; wradd,rdadd:in std_logic_vector (12 downto 0); wr,rd:OUT STD_LOGIC ...… 查看全部问答> |
|
2009专业基础综合P276例5 假设磁盘采用DMA方式与主机交换信息,其传输速率为2MB/s,而且DMA的预处理需1000个时钟周期,DMA完成传输后处理中断需500个时钟周期。如果平均传输的数据长度为4KB,试问在硬盘工作时,50MHZ的处理器需用多少时间比率进行 ...… 查看全部问答> |
|
SOC封装测试中对core的测试时间计算的一个问题 流水线的三种不同计算方法:1)各段均取周期法2)最省时法3)各叠加段取最大值法 在各段均取周期法中,流水线时间计算公式:第一条指令的执行时间+(指令条数-1)*周期,周期是指最大的一个阶段。 最 ...… 查看全部问答> |
|
我不想把程序再写一遍放在点击和释放的函数里,是不是发个WM_PAINT消息就可以呢? 我试了好多次都不可以,请DX指点一下,多谢了。… 查看全部问答> |




