当前位置:   article > 正文

物联网实训Day2_lululu.ccc

lululu.ccc

端口(外设I/O)

  • 对于USART和定时器I/O,在一个数字I/O引脚上选择外设I/O功能,需要设置对应的PxSEL位为1。
  • PxDIR配置I/O口的输入和输出,0为输入,1为输出。

上拉/下拉电阻

  • 上拉(Pull Up )或下拉(Pull Down)电阻(两者统称为“拉电阻”)最基本的作用是:将状态不确定的信号线通过一个电阻将其箝位至高电平(上拉)或低电平(下拉),如果拉电阻用于输入信号引脚,通常的作用是将信号线强制箝位至某个电平,以防止信号线因悬空而出现不确定的状态,继而导致系统出现不期望的状态,如下图所示(上拉电阻一边接电源):

拉电阻

三态

  • 0、1、高阻

实验

  • 完成Key、led实验
  • 作业:cc2530 PWM按键控制led灯亮度。

cc2530 PWM按键控制led灯亮度(参考代码)

#include <ioCC2530.h>
#define LED1 P1_4
#define S5 P0_4
#define S6 P0_5
#define PERIOD 20
#define ON 0
#define OFF 1
#define DOWN 0
#define UP 1
unsigned char pulse_high=20;
unsigned char delay_s5_flag=0;
unsigned char up_s5=1;
unsigned char delay_s6_flag=0;
unsigned char up_s6=1;
void led_init(void);
void key_init(void);
void poll_key(void);
void delay_ms(int nms);
void main(void)
{
  led_init();
  key_init();
  while(1){
    poll_key();
    if(pulse_high !=0)
    {
      LED1=OFF;
      delay_ms(pulse_high);
    }
    if(PERIOD!=pulse_high)
    {
      LED1=ON;
      delay_ms(PERIOD-pulse_high);
    }
  }
}
void led_init(void)
{
  P1SEL&=~0x10;
  P1DIR |=0x10;
  LED1=OFF;//初始状态
}
void delay_ms(int nms)
{
  unsigned int i,j;
  for(i=nms;i>0;i--)
    for(j=578;j>0;j--);
}
void key_init(void)
{
  P0SEL &=~0x30;
  P0DIR &=~0x30;
  P0INP &=~0x30;
  P2INP &=~0x20;
}
void poll_key(void)
{
  //延时消抖
  if((DOWN==S5)||(DOWN==S6))
  {
    delay_ms(20);
    if(DOWN==S5)
    {
      if(delay_s5_flag)//松开按键为1
      {
        if(pulse_high&&up_s5)
        {
          up_s5=0;
          pulse_high-=5;
        }
      }
      else
      {
        delay_s5_flag=1;
      }
    }
    else if(DOWN==S6)
    {
      if(delay_s6_flag)
      {
        if((pulse_high<PERIOD)&&(up_s6))
        {
          up_s6=0;
          pulse_high+=5;
        }
      }
      else
      {
        delay_s6_flag=1;
      }
    }
    else
    {
      delay_s5_flag=0;
      up_s5=1;
      delay_s6_flag=0;
      up_s6=1;
    }
  }
}

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47
  • 48
  • 49
  • 50
  • 51
  • 52
  • 53
  • 54
  • 55
  • 56
  • 57
  • 58
  • 59
  • 60
  • 61
  • 62
  • 63
  • 64
  • 65
  • 66
  • 67
  • 68
  • 69
  • 70
  • 71
  • 72
  • 73
  • 74
  • 75
  • 76
  • 77
  • 78
  • 79
  • 80
  • 81
  • 82
  • 83
  • 84
  • 85
  • 86
  • 87
  • 88
  • 89
  • 90
  • 91
  • 92
  • 93
  • 94
  • 95
  • 96
  • 97
  • 98
  • 99
  • 100
  • 101
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/笔触狂放9/article/detail/327698
推荐阅读
相关标签
  

闽ICP备14008679号