单片机语言 #include<reg52.h> 是什么意思?

kuaidi.ping-jia.net  作者:佚名   更新日期:2024-09-10
#include"reg52.h"和#include<reg52.h>有什么区别

reg52.h是c51(用于单片机开发的一种c语言)的头文件。"
"和的区别就在于"
"搜索当前目录下的头文件,<
>不搜索当前目录下的头文件。当然二者都搜索编译器选项中include中的路径下的头文件。

定义了一些宏,把单片机中的寄存器地址封装,让你不需要知道某寄存器的地址也可以使用它,只要用定义的宏名。。。不同型号的51单片机构造以及寄存器数量以及地址不一样,这个头文件就是将地址封装起来,让你不必操心实际地址。。。。比如P1这指的是P1 IO口的读写寄存器,真正要访问它是要使用它的地址,比如定义个uchar类型的变量a,把它的地址定位在P1的IO口读写寄存器上,如果你每次都这么做,而且你必须记住这个地址号,这显然很费劲的,。。。。。所以reg52.h给了他一个宏定义就是P1,你不需要每次都这样重复的去做这件事,他已经做好了。。。。

include是预编译指令,include<reg52.h>的作用就是将52单片机的头文件reg52.h嵌入源文件中。

预处理器发现 #include 指令后,就会寻找指令后面<>中的文件名,并把这个文件的内容包含到当前文件中。被包含文件中的文本将替换源代码文件中的#include 指令, 就像把被包含文件中的全部内容键入到源文件中的这个位置一样。

<reg52.h>表示调用了52或者51单片机的资源,也就是可以直接对单片机的相关寄存器与引脚进行操作,十分方便。

扩展资料:

reg52.h中特殊字节寄存器说明:

sfr P0 = 0x80; // P0口特殊寄存器寻址位 

sfr P1 = 0x90; // P1口特殊寄存器寻址位 

sfr P2 = 0xA0; // P2口特殊寄存器寻址位 

sfr P3 = 0xB0; // P3口特殊寄存器寻址位 

sfr PSW = 0xD0; //程序状态字寄存器 

sfr  ACC = 0xE0; //累加器 

sfr B = 0xF0; //B 特殊寄存器 

sfr SP = 0x81; //堆栈指针寄存器 

sfr DPL = 0x82; //数字指针(低位) 

sfr DPH = 0x83; //数字指针(高位) 

sfr PCON = 0x87; //电源控制寄存器 

sfr TCON =  0x88; //定时器/计数器0和1控制 

sfr TMOD = 0x89; //定时器/计数器0和1模式 

sfr TL0 = 0x8A; //定时器/计数器0低8位寄存器  

sfr TL1 = 0x8B; //定时器/计数器1低8位寄存器   

sfr TH0 = 0x8C;  //定时器/计数器0高8位寄存器   

sfr TH1 = 0x8D; //定时器/计数器1高8位寄存器 

sfr IE = 0xA8; //中断允许寄存器 

sfr IP = 0xB8; //中断优先寄存器(低) 

sfr SCON = 0x98; //串口控制寄存器 

sfr SBUF = 0x9 9; //串口数据缓冲器



这是 C 语言。

你可以看看 reg52.h 里面的内容,就知道是什么意思了。

这个 51单片机C语音的头文件 头文件对单片机的储存器进行了定义,想了解就到优酷 去看郭天祥10天学会单片机教程 里面有视频详解

52单片机的头文件