51初识单片机编程

接我上次总结的51单片机硬件部分,本文总结51单片机的简单知识。

一、80C51的常用头文件

80C51常用头文件:reg51.h、math.h、ctype.h、stdio.h、stdlib.h、absacc.h、intrins.h。
(1)reg51.h

定义51系列单片机特殊功能寄存器和特殊位。
(2)absacc.h

访问绝对地址头文件。当用绝对地址访问内部RAM(data)、外部RAM的一页(pdata)、整个外部RAM(xdata)和ROM(code)时,需要包含此文件。
(3)math.h

数学运算函数,如求绝对值、平方根、指数、正弦等。
(4)ctype.h

包含两类函数:字符测试函数和字符大小转换函数。如判断一个整形变量是数字、字母、换行符、控制符等。
(5)stdio.h

标准输入输出函数头文件,用于从标准设备读取字符、数字,或者向标准输出设备输出字符、字符串等。
(6)stdlib.h

标准库头文件。说明了用于数值转换、内存分配以及具有其他相似任务的函数,如求绝对值、字符转换为整形、长整形等。
(7)intrins.h

字符型、整形和长整形数字的左、右循环移位。
如_cror_、croliror、_irol_分别表示字符型整数右循环、字符型整数左循环和整形数字的右循环、左循环。
例:cror(a,2);//对变量a循环右移2位。
此处的循环移位和按位操作的左移(<<)和右移(>>)实现的功能是不同的。

二、80C51数据类型的扩充定义

sfr:特殊功能寄存器声明
sfr 变量名=地址值;
*特殊功能寄存器在reg51.H这个头文件里面都帮我们定义好了,所以平时我们就不要自己去定义寄存器的名字。
sbit:特殊功能位声明
sbit 变量名=地址值;
*在给某个引脚取名的时候经常会用到。
bit:位变量声明
*用来定义位数据变量
例:sfr SCON = 0X98;
sbit LED = P0^2;

三、80C51中常用的预编译命令

#define
#define A P0(注意后面不用加分号)
#typedef
typedef unsigned char uint;(后面要加分号)
重新定义一些常用的关键词,可以增强程序的可移植
性,因为在不同的编译软件上面,C语言的数据类型
的关键词的位宽是不一样的。
#ifndef…#endif
条件编译,常用于头文件的定义还有一些程序条件编译

四、80C51单片机的基本数据类型

51初识单片机编程_第1张图片

你可能感兴趣的:(51单片机)