花样灯

简介: 花样灯宏定义初始化延迟函数闪烁主函数


宏定义



#include<iocc2530.h>
#define uchar unsigned char
#define uint unsigned int
/*LED1:P1_5
  LED2:P1_0
  LED3:P1_3
  LED4:P1_4*/


初始化



void Initial(void)
{
  P1SEL&=~0x39;//功能寄存器 :0为普通IO口,1为第二功能–外设
  P1DIR|=0x39;//方向寄存器 :0为输入 , 1为输出
  P1&=~0x39;//将四个灯熄灭
}


延迟函数



/*函数名称:Delay
 *传入参数 :uint time
 *实现功能 :延迟
 */
 void Delay(uint time)
 {
   uint i;
   uchar j;
   for(i=0;i<time;i++)
     for(j=0;j<240;j++)
     {
      asm("NOP");
      asm("NOP");//asm是内嵌汇编,nop是空操作,执行一个指令周期
      asm("NOP");
     }
 }


闪烁



/*函数名称:Blink
 *传入参数 :uint  j, uchar status 
 *j为闪烁次数,status 为需要闪烁的灯
 *实现功能 :根据传入的闪烁次数,去闪烁这个灯
 */
void Blink(uint  j, uchar status)
{ uint i;
for(i=0;i<j;i++)
{
  P1=status; //寄存器赋值方法
  Delay(1200);//延迟
  P1&=~0x39;//重置,将灯熄灭,为下一次亮做准备
  Delay(1200);//延迟
}
}


主函数



main()
{
  Initial();//初始化LED灯
  while(1)
  {
  Blink(10,0x20);//闪烁10下
  Blink(8,0x01);//闪烁8下
  Blink(6,0x08);//闪烁6下
  Blink(4,0x10);//闪烁4下
  }
}


相关文章
|
9月前
|
前端开发 芯片
【芯片前端】保持代码手感——交通灯
【芯片前端】保持代码手感——交通灯
|
10月前
|
物联网 Linux Android开发
圆曾经的小车梦,造一台智能小车(一)
圆曾经的小车梦,造一台智能小车(一)
86 1
|
10月前
|
Go Android开发
圆曾经的小车梦,造一台智能小车(三)之小车前进后退左右转基本框架
圆曾经的小车梦,造一台智能小车(三)之小车前进后退左右转基本框架
258 0
|
11月前
|
算法
319. 灯泡开关【我亦无他唯手熟尔】
319. 灯泡开关【我亦无他唯手熟尔】
47 0
|
8月前
|
存储 智能硬件
使用SwiftUI搭建一个智能家居的开关灯页面,我是有多无聊~
使用SwiftUI搭建一个智能家居的开关灯页面,我是有多无聊~
45 0
|
9月前
|
编解码 芯片
呼吸灯的三种实现方法
本文提供了三种实现呼吸灯的方法,分别是利用for循环实现、利用定时器中断实现和利用定时器输出PWM波实现。前两种方法平时接触的不多,所以贴出了程序,最后一种方法大家肯定都已熟悉,这里就没有详细介绍。
188 0
|
10月前
|
传感器 IDE 开发工具
圆曾经的小车梦,造一台智能小车(二)
圆曾经的小车梦,造一台智能小车(二)
97 1
|
10月前
|
C语言
圆曾经的小车梦,造一台智能小车(四)之QT上位机控制小车
圆曾经的小车梦,造一台智能小车(四)之QT上位机控制小车
193 0
|
11月前
【单片机期中测试】6.简单PWM呼吸灯
【单片机期中测试】6.简单PWM呼吸灯
64 0
【51单片机】花式流水灯
【51单片机】花式流水灯
265 0

热门文章

最新文章