跪求stc89c52头文件

kuaidi.ping-jia.net  作者:佚名   更新日期:2024-07-07
帮我看看这个程序的头文件都有哪些,用STC89C52实现

这个是不好说的,只能说最少一个就够了,置于到底是多少个,这个就要看编写代码的人他怎么确定的了

当sfr的地址位置是8的整数倍时,它是可以位bit来访问 的,每个sbit就是以位来访问的特殊位置的易记名字;如:sbit T2 = P1^0; 就是P10口的名字为T2;//即定义T2为P0口的第1位,以便进行位操作。

STC89C52是51单片机,兼容兼容Intel 8031指令。头文件直接上系统默认的的就行了。比如Keil C在程序中加载 :#include "reg52.h" 就行了。reg52.h内容为:
/*--------------------------------------------------------------------------
REG52.H

Header file for generic 80C52 and 80C32 microcontroller.
Copyright (c) 1988-2002 Keil Elektronik GmbH and Keil Software, Inc.
All rights reserved.
--------------------------------------------------------------------------*/

#ifndef __REG52_H__
#define __REG52_H__

/* BYTE Registers */
sfr P0 = 0x80;
sfr P1 = 0x90;
sfr P2 = 0xA0;
sfr P3 = 0xB0;
sfr PSW = 0xD0;
sfr ACC = 0xE0;
sfr B = 0xF0;
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 IE = 0xA8;
sfr IP = 0xB8;
sfr SCON = 0x98;
sfr SBUF = 0x99;

/* 8052 Extensions */
sfr T2CON = 0xC8;
sfr RCAP2L = 0xCA;
sfr RCAP2H = 0xCB;
sfr TL2 = 0xCC;
sfr TH2 = 0xCD;

/* BIT Registers */
/* PSW */
sbit CY = PSW^7;
sbit AC = PSW^6;
sbit F0 = PSW^5;
sbit RS1 = PSW^4;
sbit RS0 = PSW^3;
sbit OV = PSW^2;
sbit P = PSW^0; //8052 only

/* TCON */
sbit TF1 = TCON^7;
sbit TR1 = TCON^6;
sbit TF0 = TCON^5;
sbit TR0 = TCON^4;
sbit IE1 = TCON^3;
sbit IT1 = TCON^2;
sbit IE0 = TCON^1;
sbit IT0 = TCON^0;

/* IE */
sbit EA = IE^7;
sbit ET2 = IE^5; //8052 only
sbit ES = IE^4;
sbit ET1 = IE^3;
sbit EX1 = IE^2;
sbit ET0 = IE^1;
sbit EX0 = IE^0;

/* IP */
sbit PT2 = IP^5;
sbit PS = IP^4;
sbit PT1 = IP^3;
sbit PX1 = IP^2;
sbit PT0 = IP^1;
sbit PX0 = IP^0;

/* P3 */
sbit RD = P3^7;
sbit WR = P3^6;
sbit T1 = P3^5;
sbit T0 = P3^4;
sbit INT1 = P3^3;
sbit INT0 = P3^2;
sbit TXD = P3^1;
sbit RXD = P3^0;

/* SCON */
sbit SM0 = SCON^7;
sbit SM1 = SCON^6;
sbit SM2 = SCON^5;
sbit REN = SCON^4;
sbit TB8 = SCON^3;
sbit RB8 = SCON^2;
sbit TI = SCON^1;
sbit RI = SCON^0;

/* P1 */
sbit T2EX = P1^1; // 8052 only
sbit T2 = P1^0; // 8052 only

/* T2CON */
sbit TF2 = T2CON^7;
sbit EXF2 = T2CON^6;
sbit RCLK = T2CON^5;
sbit TCLK = T2CON^4;
sbit EXEN2 = T2CON^3;
sbit TR2 = T2CON^2;
sbit C_T2 = T2CON^1;
sbit CP_RL2 = T2CON^0;

#endif
/*--------------------------------------------------------------------------

KILL里自带

  • stc89c52单片机在做汉字显示时用到reg52.h和mcu.h中的哪部分,单片机显 ...
    答:1、reg52.h中声明了特殊功能寄存器的地址,属于单片机软件最基本的头文件,源程序中一般必须要包含的。具体到程序中:P0,P2均在其中定义,如注掉第一行编译会出错,也就是说用到了对P0、P2的定义 2、mcu.h不是51标准头文件,属于软件编制人员自己编制的头文件(你没有提供这个文件),里面至少包含...
  • STC89C52单片机编程时出现P4 undefined identifier
    答:如果你用STC的89C52单片机,那么需要从STC官网下载对应型号的头文件,不能直接用reg52.h这个头文件。因为标准51架构是没有P4口的,这是STC单片机在标准51架构基础上做出的扩展功能模块(实际上是抄袭别的厂家的扩展架构)。
  • 用单片机STC89c52做八路抢答器,求源程序hex.电气高手帮帮忙
    答:参考百度文库资料《吴鉴鹰单片机项目实战精讲》,希望对你有用 也可以到吴鉴鹰吧找些资料讨论 下面的资料参考,需要修改 本程序由好几个头文件组成,都在下面,你可以复制代码并保存为独立的文件 头文件STC12C5A.H下载: http://www.51hei.com/mcu/2564.html include <STC12C5A.H> include "stdio....
  • 如何利用单片机让4位数码管显示?
    答:程序如下(用的是STC89C52芯片):include<reg52.h>//52系列单片机头文件 define uchar unsigned char define uint unsigned int uint x,y;uchar code table[]={ 0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};//共阴极数码管编码 void display...
  • stc89c52单片机可以把数据存在eeprom里面是吗?
    答:可以的,stc89c52有EEPROM存储器,4K的空间,没有eeprom.h这个头文件,读写EEPROM存储器的程序官网有,你可以去找找http://www.stcmcu.com/
  • A和B表示启动和停止,用LED表示的单片机程序?
    答:以下是使用LED表示启动和停止状态的单片机程序:```c includereg52.h> // 引入STC89C52芯片头文件 sbit LED = P1^0; // 定义LED连接的IO口 void main(){ while(1) // 无限循环 { if (P3 & 0x01) // 如果P3.0口为高电平(启动状态){ LED = 1; // 点亮LED灯 } else // 如果P...
  • 在keil中添加STC型号的3种方法
    答:- 详细步骤未提供,但操作涉及在原数据库中添加STC15F104E或STC89C52RC等型号的配置信息。- 将相应的头文件STC15F104E.H或STC89C52RC.H放置在正确的INC目录下。补充说明:- 数据库CDB文件兼容性:Keil4向下兼容,可以使用和编辑Keil2、Keil3的数据库CDB文件。Keil2不兼容Keil4的数据库CDB文件。
  • STC89C52RC最简单的单个数码管显示程序,用C51语言
    答:/*共阳极数管*/ include<reg52.h> //包含头文件,一般情况不需要改动,//头文件包含特殊功能寄存器的定义 void main (void){ P1=0xc0; //二进制 为 1100 0000 参考数码管排列,//可以得出0对应的段点亮,结果显示数字"0"while(1);} ...
  • 单片机中断晶振12MHZ输出方波长延时100ms分俩次定时希望带注释。谢谢...
    答:我这有一个现成的,利用LED作为指示,送你啦 单片机型号:STC89C52 ,属于51类单片机 如果你的也是51类单片机,可以直接使用 /***/ include <reg51.h>//51单片机通用头文件 sbit LED=P2^0;//LED端口定义 int n;//建立一个变量,用于计数 /***/ void main(void)//主函数 { TMOD=0x...
  • #include"STC89C52.H" #define uchar unsigned char #define uint unsig...
    答:首先STC89C52.H是单片机的头文件,#define uchar unsigned char 是个宏定义,就是把数据类型unsigned char 定义为uchar,只是为了书写方便而已,下一个也是,把unsigned int 定义为 uint,编程的时候就直接用uchar和uint就行了,不用写很长的unsigned char 和unsigned int,希望对你有用 ...