发 帖  
原厂入驻New
[问答]

怎样通过定时器T1查询方式去控制LED1周期性闪烁?

63 LED 定时器
分享
怎样通过定时器T1查询方式去控制LED1周期性闪烁?其程序代码该如何去编写?
0
2021-7-16 10:29:20   评论 分享淘帖 邀请回答
1个回答
  /************************/
  /* CC2530例程 /
  /例程名称:定时器(查询方式) /
  /描述:通过定时器T1查询方式控制LED1周期性闪烁
  /
  #include 《ioCC2530.h》
  #define uint unsigned int
  #define uchar unsigned char
  #define LED1 P1_0 //定义LED1为P1_0口控制
  //函数声明
  void InitLed(void); //初始化P1口
  void InitT1(); //初始化定时器T1
  //初始化程序
  //
  void InitLed(void)
  {
  P1DIR |= 0x01; //P1_0定义为输出
  LED1 = 0; //LED1灯初始化熄灭
  }
  //定时器初始化
  void InitT1() //系统不配置工作时钟时默认使用内部RC振荡,即16MHz
  {
  T1CTL = 0x0d; //128分频,自动重装 0X0000-0XFFFF
  }
  /
  函数名称:main
  功 能:main函数入口
  入口参数:无
  出口参数:无
  返 回 值:无
  ***************************/
  void main(void)
  {
  uchar count;
  InitLed(); //调用初始化函数
  InitT1();
  while(1)
  {
  if((T1STAT&0x20)==0x20)
  {
  T1STAT&=~0x20; //清除溢出标志
  ++count;
  }
  if(count == 3) //如果溢出次数到达3说明经过了1.5秒
  {
  LED1 = 1; //点亮LED1
  }
  if(count == 4) //如果溢出次数到达4说明经过了2秒
  {
  LED1 = 0; //熄灭LED1
  count=0;
  }
  }
  }
2021-7-16 14:11:10 评论

举报

只有小组成员才能发言,加入小组>>

45个成员聚集在这个小组

加入小组

创建小组步骤

关闭

站长推荐 上一条 /9 下一条

快速回复 返回顶部 返回列表