本篇主要介绍程序设计课程,利用LED实现流水灯的效果,也就是实现每个LED灯循环移动点亮。本篇将会介绍一些编程上的知识,利用标准库函数中的循环移位函数实现LED循环移位达到流水灯的效果,循环移位函数与左移和右移运算符的区别及keil中Debug的用法。
1. 宏定义
用define进行宏定义的典型用法 #define uchar unsigned char
注意宏定义后面不能加分号,它是预处理指令不是语句。
其中用“uchar”直接替换了unsigned char
此时我们可以用uchar去定义变量类型如:uchar i;
等价于unsigned char i;
对于上面的宏定义我们是用来给已有数据类型取别名。
对已有数据类型取别名一般还有使用关键字typedef
,定义方法如下:
typedef 已有数据类型 新的数据类型;(要加分号)
2. 函数的定义
函数就是将多条语句集合在一块,来完成一种特定功能。
函数分为标准函数库,和用户自定义函数。
标准函数库: keil编译器提供的,不需要用户进行定义。
自定义函数: 用户根据自己需要编写的函数,它必须在使用前先定义
自定义函数一般格式为:
函数类型 函数名 (形式参数表)
{
局部变量定义
函数体语句
}
3. 延时函数
自定义函数:延时函数delay(毫秒级)
void delay(unsigned int z)
{
unsigned int x,y;
for(x=z;x〉0;x--) //只控制下面一句,无需花括号
for(y = 114;y>0;y--);//嵌套循环
}