1.2 zigbee基础(按键点led)
来源:互联网 发布:js select多选下拉框 编辑:程序博客网 时间:2024/05/01 06:53
这个实验是使用按键控制LED的亮灭。其实和上个实验很像,就是判断按键什么状态,然后根据按键状态来改变led状态。
先上两个 电路图
这里我们只使用KEY1去控制LED3.
主要是要设置按键和灯对应的IO口输出。其他用默认即可
LED1初始化:(其他雷同)
P1SEL &=~0×01; //作为普通IO口
P1DIR |= 0×01; //P1_0定义为输出
P1INP &=~0X01; //打开上拉
按键KEY1初始化:
P0SEL &= ~0X10; //设置P04为普通IO口
P0DIR &= ~0X10; //按键在P04 口,设置为输入模式
P0INP &= ~0×10; //打开P04上拉电阻,不影响
</pre><pre name="code" class="cpp">#include <ioCC2530.h>#define uint unsigned int #define uchar unsigned char//定义三个led灯#define LED1 P0_0#define LED2 P0_1#define LED3 P1_4//定义按键key1#define KEY1 P0_4//函数的声明void Delay(uint);void Init(void);uchar KeyScan();//主函数void main(void){ Init();//初始化按键和灯 while(1) { if(KeyScan())//判断按键状态 LED3=~LED3;//灯的状态取反 }}void Delayms(uint xms)//延迟函数,{ uint i,j; for(i=xms;i>0;i−−) for(j=1000;j>0;j−−);}void Init(void){ P0DIR |=0x03; P1DIR |=0x10; //关闭所有的灯,默认是上拉的,根据电路图灯会亮 LED1 =0; LED2 =0; LED3 =0; //设置按键相关寄存器 P0SEL &=~0x10; P0DIR &=~0x10; P0INP &=~0x10;}uchar KeyScan(void){ if(KEY1==0) { Delayms(10);//防抖动 if(KEY1==0) { while(!KEY1); return 1; } } return 0;}
注意: 在图中在默认情况下,led灯是亮的(上拉),所以在初始化中需要灭掉。有的板子上拉是灭的。
效果图如下:按一下会亮,再按一下会灭,很简单
0 0
- 1.2 zigbee基础(按键点led)
- 1.1 zigbee基础(点亮LED灯)
- zigbee基础应用(二)按键使用
- zigbee按键及LED管脚自定义
- ZigBee基础实验(一)--控制LED灯
- ZigBee基础实验(十一)--PWM来控制LED亮度
- ZigBee基础实验-点亮第一个LED
- zigbee按键
- 按键+Led
- 按键-LED
- STM32按键控制LED(不用固件库)
- S3C2410 按键控制LED(中断)
- ZigBee按键允许入网
- zigbee按键分析
- zigbee按键扫描
- ZigBee协议栈(二)--OSAL控制LED灯
- ZigBee组网学习笔记(四)--协议栈按键实验
- 按键实现led
- 微信公众平台模版消息
- 微信智能开放平台
- 微信公众平台运营规范
- 微信公众平台开发最佳实践
- 腾讯微信事业群
- 1.2 zigbee基础(按键点led)
- 微信公众平台高级群发接口
- Python&Qt&opencv图像处理(2):hello world
- 微信公众平台开发(85) 获取用户地理位置
- 同步适配器模式(二)
- 微信公众平台开发(86) 获取用户基本信息
- 微信公众平台开发(87) 获取关注者列表
- 微信公众平台开发(88) 用户分组接口
- SAX解析characters 错误截取问题的解决