您当前的位置:钢材 > 钢绞线 > 价格汇总

电子制作led流水灯,4017流水灯制作

来源:头条 作者: chanong
分享到
关注德勤钢铁网在线:
  • 扫描二维码

    关注√

    德勤钢铁网微信

在线咨询:
  • 扫描或点击关注德勤钢铁网在线客服

回顾上一节:单片机第二课:编写一个让LED“闪烁”的程序本节重点:实现一个LED跑马灯程序预备知识: 1.C语言中常用的预处理命令1.definedefine 运行宏定义时,程序会用预处理阶段的define 替换你定义的内容。因此,程序运行时,用define定义的常量并不存在于常量表中,系统也不会为其分配内存。使用#define定义的常量也称为符号常量,可以提高程序执行效率。其常见用法包括两种:1)#define宏名和宏值2)#define宏名(参数列表)表达式。 Define命令的用法一般分为两种。第二种语法通常用于定义符号函数。例如:#define A 3.14 通过执行这个条件,我们可以直接给A赋值3.14。 #define AREA(x,y)(x)*(y)表示求长和宽分别为x和y的矩形的面积。 2、函数循环左移/右移croll(a,b);循环左移函数,a为左移的值,b为左移的位数。包含在intrinsics.h库函数中。 cror(a,b); 循环右移函数,其中a为右移的值,b为右移的位数。编程包含在intrinsics.h库函数中:我正在使用上述知识库编写LED跑灯的程序。流水灯思路:先打开第一个LED灯,然后延时一定时间,然后关闭当前LED,然后打开第二个LED灯。这个过程是通过移动一个函数然后延迟一定的时间来实现的。关闭LED灯一段时间,继续如此循环,即可实现LED灯的视觉流动。 (本实验中的LED灯组采用共阴接法,所以单片机引脚必须输出1才能打开LED灯。)编程:#include //头文件#include //头文件typedef unsigned char u8;//定义类型typedef unsigned int u16;#define LED P2 //定义一个LED灯组,使用P2的8个引脚void Late(u16 i) //延时函数Late{ while(i-- ); }void main() {u8 i=0; //定义变量iled=0x01; //设置LED灯组初始状态值(0000 0001,使用阴极公共端)delay(50000) ;while(1) {for(i=0;i7; i++) //for循环函数的初始值为0,满足i7的条件每次循环执行i,加1 {led=_crol_(led,1); //LED左移函数,函数移动延时(50000) 每次执行for循环时;}for(i=0;i7;i++){led=_cror_(led,1); //LED右移函数,每次for循环执行一次函数已执行,移动延迟(50000)。 }}}

查看结果:

正在加载视频.

#美丽鲜花创作挑战#

责任编辑:德勤钢铁网 标签:

热门搜索

相关文章

广告
德勤钢铁网 |价格汇总

电子制作led流水灯,4017流水灯制作

chanong

|

回顾上一节:单片机第二课:编写一个让LED“闪烁”的程序本节重点:实现一个LED跑马灯程序预备知识: 1.C语言中常用的预处理命令1.definedefine 运行宏定义时,程序会用预处理阶段的define 替换你定义的内容。因此,程序运行时,用define定义的常量并不存在于常量表中,系统也不会为其分配内存。使用#define定义的常量也称为符号常量,可以提高程序执行效率。其常见用法包括两种:1)#define宏名和宏值2)#define宏名(参数列表)表达式。 Define命令的用法一般分为两种。第二种语法通常用于定义符号函数。例如:#define A 3.14 通过执行这个条件,我们可以直接给A赋值3.14。 #define AREA(x,y)(x)*(y)表示求长和宽分别为x和y的矩形的面积。 2、函数循环左移/右移croll(a,b);循环左移函数,a为左移的值,b为左移的位数。包含在intrinsics.h库函数中。 cror(a,b); 循环右移函数,其中a为右移的值,b为右移的位数。编程包含在intrinsics.h库函数中:我正在使用上述知识库编写LED跑灯的程序。流水灯思路:先打开第一个LED灯,然后延时一定时间,然后关闭当前LED,然后打开第二个LED灯。这个过程是通过移动一个函数然后延迟一定的时间来实现的。关闭LED灯一段时间,继续如此循环,即可实现LED灯的视觉流动。 (本实验中的LED灯组采用共阴接法,所以单片机引脚必须输出1才能打开LED灯。)编程:#include //头文件#include //头文件typedef unsigned char u8;//定义类型typedef unsigned int u16;#define LED P2 //定义一个LED灯组,使用P2的8个引脚void Late(u16 i) //延时函数Late{ while(i-- ); }void main() {u8 i=0; //定义变量iled=0x01; //设置LED灯组初始状态值(0000 0001,使用阴极公共端)delay(50000) ;while(1) {for(i=0;i7; i++) //for循环函数的初始值为0,满足i7的条件每次循环执行i,加1 {led=_crol_(led,1); //LED左移函数,函数移动延时(50000) 每次执行for循环时;}for(i=0;i7;i++){led=_cror_(led,1); //LED右移函数,每次for循环执行一次函数已执行,移动延迟(50000)。 }}}

查看结果:

正在加载视频.

#美丽鲜花创作挑战#


价格汇总