zigbee菜鸟笔记(四)基础实验检测按键输入

一.cc2530 IO端口

关于CC2530的IO端口介绍 我们在前面一章已经很详细的阐述了,如果还没有掌握点击这里

二.按键寄存器及其理解

按键在我们的CC2530芯片中和前面的LED灯一样也占用一个引脚,基于上节课的了解我们知道,要想控制LED灯的亮灭首先就要设置LED灯端口为普通IO口且为输出。按键与LED一样都属于简单的端口应用所以我们也需要对PXSEL和PXDIR进行操作,


在这里我们需要将按键是设置为普通IO口,且为输出。

(一)复习寄存器

寄存器PxSEL,其中x 为端口的标号0~2,用来设置端口的每个引脚为通用I/O 或者是外部设备I/O 信号。
在这里插入图片描述
在任何时候,要改变一个端口引脚的方向,就使用寄存器PxDIR 来设置每个端口引脚为输入或输出。因此只要设置PxDIR 中的指定位为1,其对应的引脚口就被设置为输出了。在这里插入图片描述
(二)按键初始化模拟

1.假设按键是处于端口1

P1SEL &= ~0x02//0x02 = (0000 0010) 取反 (1111 1101) 
P1DIR &= ~0x02;//设置为输入所以也是设置为0

2.假设按键处于端口2

P1SEL &= ~0x04;
P1DIR &= ~0x04;

三.实战操作按键输入监测

(一)了解端口
通过电路图可以看出 这次的LED端口 分别是P1.0 P1.1,P1.3,P1.4,和上次是不一样的,并且本次灯处于高电位点亮,低电位熄灭,所以我们在学习前期就要养成学会看电路图的习惯,
在这里插入图片描述

这是本次的按键,在图中为SW1(keyswitch),可以看到按键与P1.2相连,当按键按下时可以看到P1.2是处于低电平(这里要是看不明白,可以询问一下你们的数电或者模电老师或者发邮件到468078841@qq.com)
在这里插入图片描述
(二)实战演习
题目要求,将D3,D4,D5,D6初始时全部熄灭,当按下时LED灯全部处于点亮的状态,松手则处于熄灭,依次往复;

#include "ioCC2530.h"  //引入头文件 类似C语言 #include"stdio.h" 

#define LED1 P1_0     // P1_0定义为P1.0
#define LED2 P1_1     // P1_1定义为P1.1
#define LED3 P1_3     // P1_0定义为P1.3
#define LED4 P1_4     // P1_0定义为P1.4
#define SW1 P1_2      // P1_2定义为P1.2 


void IO_INIT(void)  ;    //函数申明  这里建议书写规范
void delay(unsigned int time);

void delay(unsigned int time)  //延时函数 这里是为了让程序多执行几次for循环 让函数延时
{ 
  for(unsigned char j = 0; j < time;j++)
  { 
    for(unsigned int i = 0; i < time; i++)
    {   
      
    }  
  }  
}
void IO_INIT(void)   
{ 
  P1SEL &= ~0x1F; //0001 1111 取反全部设置为0
  P1DIR |= 0x1B; //0001 1011  灯全部输出
  P1DIR &= ~0x02; //0000 0010  取反按键者设置为输入
  P1 &= ~0x1B; //将灯的端口置0
}


void main(void)
{
  IO_INIT();    //初始化                        
  while(1)
  {
    if(SW1 == 0)	//低电平有效
    {  
      delay(50);	//检测到按键 防止抖动
      if(SW1 == 0)	//前面定义了 #define SW1 P1.2
      { 
        while(!SW1)  //按键按住期间,灯亮
        {
          P1 |= 0x1B;
        }
        P1 &= ~0x1B;             
      }  
    }    
  }
}

zigbee菜鸟笔记(五)时钟源的选择与切换点击进入

[入门数据分析的第一堂课]这是一门为数据分析小白量身打造的课程,你从网络或者公众号收集到很多关于数据分析的知识,但是它们零散不成体系,所以第一堂课首要目标是为你介绍:Ø  什么是数据分析-知其然才知其所以然Ø  为什么要学数据分析-有目标才有动力Ø  数据分析的学习路线-有方向走得更快Ø  数据分析的模型-分析之道,快速形成分析思路Ø  应用案例及场景-分析之术,掌握分析方法[哪些同学适合学习这门课程]想要转行做数据分析师的,零基础亦可工作中需要数据分析技能的,例如运营、产品等对数据分析感兴趣,想要更多了解的[你的收获]n  会为你介绍数据分析的基本情况,为你展现数据分析的全貌。让你清楚知道自己该如何在数据分析地图上行走n  会为你介绍数据分析的分析方法和模型。这部分是讲数据分析的道,只有学会底层逻辑,能够在面对问题时有自己的想法,才能够下一步采取行动n  会为你介绍数据分析的数据处理和常用分析方法。这篇是讲数据分析的术,先有道,后而用术来实现你的想法,得出最终的结论。n  会为你介绍数据分析的应用。学到这里,你对数据分析已经有了初步的认识,并通过一些案例为你展现真实的应用。[专享增值服务]1:一对一答疑         关于课程问题可以通过微信直接询问老师,获得老师的一对一答疑2:转行问题解答         在转行的过程中的相关问题都可以询问老师,可获得一对一咨询机会3:打包资料分享         15本数据分析相关的电子书,一次获得终身学习
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值