3.5 C51函数 课件(共18张PPT)单片机基础与应用(C语言版)

资源下载
  1. 二一教育资源

3.5 C51函数 课件(共18张PPT)单片机基础与应用(C语言版)

资源简介

(共18张PPT)
3.5 C51函数
《单片机基础与应用(C语言版)》
高等教育出版社
C51语言遵循ANSI C的风格,也采用函数作为子程序模块,将程序设计中普通用到的一些计算或操作编成通用的函数,随时可以调用。
3.5.1 C51库函数
C51的库函数
寄存器库函数 REGXXX.H
一般输入/输出函数 STDIO.H
内部函数 INTRINS.H
字符函数 CTYPE.H
字符串函数 STRING.H
数学函数 MATH.H
标准函数 STDLIB.H
绝对地址访问函数 ABSACC.H
定义了51单片机的所有SFR和相应的位
C51的库函数
寄存器库函数 REGXXX.H
一般输入/输出函数 STDIO.H
内部函数 INTRINS.H
字符函数 CTYPE.H
字符串函数 STRING.H
数学函数 MATH.H
标准函数 STDLIB.H
绝对地址访问函数 ABSACC.H
操作51单片机的串口
C51的库函数
寄存器库函数 REGXXX.H
一般输入/输出函数 STDIO.H
内部函数 INTRINS.H
字符函数 CTYPE.H
字符串函数 STRING.H
数学函数 MATH.H
标准函数 STDLIB.H
绝对地址访问函数 ABSACC.H
51单片机的空操作、变量的左移/右移
函数 功能
atoi 将字符串sl转换成整型数值并返回这个值
atol 将字符串sl转换成长整型数值并返回这个值
atof 将字符串sl转换成浮点数值并返回这个值
strtod 将字符串s转换成浮点型数据并返回这个值
strtol 将字符串s转换成long型数值并返回这个值
strtoul 将字符串s转换成unsigned long型数值并返回这个值
rand 返回一个0到32767之间的伪随机数
srand 初始化随机数发生器的随机种子
calloc 为n个元素的数组分配内存空间
free 释放前面已分配的内存空间
init_mempool 对前面申请的内存进行初始化
malloc 在内存中分配指定大小的存储空间
realloc 调整先前分配的存储器区域大小
常用标准函数
内部函数库
函数 功能
_crol_ 将字符型数据按照二进制循环左移n位
_irol_ 将整型数据按照二进制循环左移n位
_lrol_ 将长整型数据按照二进制循环左移n位
_cror_ 将字符型数据按照二进制循环右移n位
_iror_ 将整型数据按照二进制循环右移n位
_lror_ 将长整型数据按照二进制循环右移n位
_nop_ 使单片机程序产生延时
_testbit_ 对字节中的一位进行测试
库函数的调用
#include //包含寄存器库函数头文件,调用51单片机SFR
#include //包含内部函数库头文件,调用左移、右移函数
void delay(unsigned int i) //定义延时函数
{ unsigned int k;
for (k=0;k}
void main() //主函数
{ P1 = 0x7F; //调用P1端口寄存器变量
while(1) //无限循环
{
P1 = _cror_(P1,1); //调用左移函数,将P1的二进制数值循环左移一位
delay(5000); //延时
}
}
使用函数时必须先声明再使用
使用库函数时,必须在源程序的开始处使用预处理命令#include将相应的头文件包含进来
3.5.2 用户自定义函数
函数类型 函数名 (形式参数列表)
{
局部变量声明;
函数体语句;
return语句;
}
函数返回值的类型
返回函数的返回值
用户自定义函数
//求三个整数的最大值
int max (int a,int b,int c)
{
int z;
if(a>b) z =a;
else z=b;
if(c>z) z=c;
return z;
}
函数类型
函数名
形式参数列表
return(z);
函数体
void 函数名 (形式参数列表)
{
局部变量声明;
函数体语句;
return语句;
}
函数类型是空类型,
没有返回值。
函数类型 函数名 (void)
{
局部变量声明;
函数体语句;
return语句;
}
没有形式参数。
void 函数名 (void)
{
局部变量声明;
函数体语句;
}
函数类型是空类型,
没有返回值。
没有形式参数。
信号灯闪烁控制C语言程序
感谢您的观看
Thanks for your attention.

展开更多......

收起↑

资源预览