51单片机头文件reg51h详解Word文档格式.docx
- 文档编号:13709173
- 上传时间:2022-10-13
- 格式:DOCX
- 页数:12
- 大小:156.15KB
51单片机头文件reg51h详解Word文档格式.docx
《51单片机头文件reg51h详解Word文档格式.docx》由会员分享,可在线阅读,更多相关《51单片机头文件reg51h详解Word文档格式.docx(12页珍藏版)》请在冰豆网上搜索。
为能直接访问80C51中的SFR
而提供了一个新的关键词,其用法是:
特殊功能寄存器名=地址值(注意对于头文件里“特殊功能寄存器名”,用户实际上也可以修改的,如P1=0x80,也可改为A1=0x80,但sfr
和地址值则不能更改,否者会编译出错。
)
些位赋的变量和数值才能正确保存,然后才能供CPU正确的调用,完成相应的功能。
上段文字出现了寄存器(SFR)、位,地址、内存等,单片机学习过程中还会出现ROM、RAM等名词,可能大家觉得不是很好理解,这里可以通俗的解释一下,如下面三个图所示。
我们把内存比作宾馆,ROM、RAM、SFR相当于宾馆里具体的有三种不同功能楼层(具体这个宾馆多少层即多少ROM、RAM、SFR,视各个宾馆或者每种单片机而不同),每层8个房间相当于8位,每个房间要么住男人要么住女人相当于每位要么放入数字1要么放入数字0,keil编译器就相当于宾馆的工作人员,旅客去住旅馆相当写程序的过程,住宾馆的人必须事先要给工作人员说你是哪一层哪一个房间(即声明寄存器地址和位地址,)宾馆工作人员才能把你带到你的房间里去(这里假设这个宾馆可以由旅客自己决定住哪个房间)。
即:
只有对寄存器及相关位进行声明地址后,我们才能对其进行赋相关的值,keil软件才能编译通过。
4)REG51.H头文件原文及解释
打开reg51.h
可以看到这样的一些内容(此文件一般在C:
\KEIL\C51\INC下
INC文件夹根目录里有不少头文件,并且里面还有很多以公司分类的文件夹,里面也都是相关产品的头文件。
如果我们要使用自己写的头文件,使用的时候只需把对应头文件拷贝到INC文件夹里就可以了。
下面附出头文件的原文,并把注释文件一并附后。
/*--------------------------------------------------------------------------
REG51.H
Headerfileforgeneric80C51and80C31microcontroller.
Copyright(c)1988-2002KeilElektronikGmbHandKeilSoftware,Inc.
Allrightsreserved.
--------------------------------------------------------------------------*/
#ifndef__REG51_H__
#define__REG51_H__
/*
BYTERegister
*/
sfrP0
=0x80;
//三态双向
IO口
P0口 此句话的意思是:
特殊功能寄存器 P0 地址为0x80,可位寻址,下同
//低8位地址总线/数据总线(一般不用而只作普通I/O口,注意作I/O口用时,硬件上需接上接电阻)
sfrP1
=0x90;
//准双向
P1口
sfrP2
=0xA0;
P2口
//高8位地址总线,一般也作普通I/O用
sfrP3
=0xB0;
//双功能
//1.准双向
P3口
//2.
P30
RXD串行数据接受
//
P31
TXD串行数据发送
//
P32
外部中断0
信号申请
P33
外部中断1
P34
定时/计数器T0
外部计数脉冲输入
P35
定时/计数器T1
P36
WR
片外RAM写脉冲信号输入
P37
RD
片外ram读脉冲信号输入
sfrPSW
=0xD0;
可以位寻址(C语言编程时可不考虑此寄存器)
//程序状态寄存器ProgramStatusWORD
(程序状态信息)
//psw.7(CY)
进位标志
//psw.6(AC)辅助进位标志位低四位向高四位进位或借位时
AC=1
//主要用于十进制调整
//psw.5(F0)用户可自定义的程序标志位
//psw.4(RS1)
//psw.3(RS0)
//工作寄存器选择位
//任一时刻只有一组寄存器在工作
//00
0区
00H~07H
//01
1区
08H~0fH
//10
2区
10H~17H
//11
3区
18H~1FH
//psw.2(OV)
溢出标志位
//psw.1(
)
保留为
,不可使用
//psw.0(P)
奇偶校验位
sfrACC
=0xE0;
//累加器A
特殊功能寄存器
可位寻址
sfrB
=0xF0;
//寄存器B
主要用于乘除运算
sfrSP
=0x81;
//堆栈指针寄存器SP
存放站定栈顶地址、
sfrDPL
=0x82;
//
sfrDPH
=0x83;
//数据指针寄存器DPTR、//对片外RAM及扩展IO进行存取用的地址指针
sfrPCON=0x87;
//电源控制寄存器
、不能位寻址
//管理单片机的电源部分包括上电复位、掉电模式、空闲模式等
//单片机复位时PCON被全部清0,编程时一般是用到SMOD位,其它的一般不用
//D7
SMOD该位与串口通信波特率有关
//SMOD=0
串口方式123
波特率正常
//SMOD=1
波特率加倍
sfrTCON=0x88;
//定时器/计数器
控制寄存器
可以位寻址
//D7
TF1
定时器1溢出标志位
//D6
TR1
定时器1运行控制位
//D5
TF0
定时器0溢出标志位
//D4
TR0
定时器0运行控制位
//D3
IE1
外部中断1请求标志
//D2
IT1
触发方式选择位
//D1
IE0
外部中断0请求标志
//D0
IT0
sfrTMOD=0x89;
工作方式寄存器
不能位寻址
//确定工作方式和功能
GATE
门控制位
//GATE=0;
定时器/计数
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 51 单片 机头 文件 reg51h 详解
![提示](https://static.bdocx.com/images/bang_tan.gif)