CC2530入门篇————花样灯

CC2530入门篇————花样灯

宏定义

#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下
  }
}
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

FranzLiszt1847

嘟嘟嘟嘟嘟

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值