ZigBee快速入门——IO配置(LED)

这篇具有很好参考价值的文章主要介绍了ZigBee快速入门——IO配置(LED)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

建议先看IO配置再看点亮LED

点亮LED

#include <iocc2530.h>
//点亮LED(纯寄存器版)
void Delay(unsigned int n);
void InitIO(void);
void main(void){
  InitIO();
  while(1){
    P1_0 = !P1_0;
    Delay(50000);
    P1_1 = !P1_1;
    Delay(50000);
    P0_4 = !P0_4;
    Delay(50000);
  }
}

void Delay(unsigned int n){//这里定时多久不重要,重要的是有定时时间
  int i;
  for(i=0; i<n; i++);for(i=0; i<n; i++);
  for(i=0; i<n; i++);for(i=0; i<n; i++);
}

void InitIO(void){
  P1DIR |= 0x03;  // 0000 0111 配置P10/P11为输出
  P0DIR |= 0x10;  // 0001 0000 配置P04为输出
  P1_0 = 0x01;
  P1_2 = 0x01;
  P0_4 = 0x01;
}
#include <iocc2530.h>
//点亮LED(库函数版)
void Delay(unsigned int n);
void InitIO(void);
void SetLed(int LedId,int state);
void main(void){
  InitIO();
  while(1){
    SetLed(0,0);
    Delay(50000);
    SetLed(1,0);
    Delay(50000);
    SetLed(2,0);
    Delay(50000);
    
    SetLed(0,1);
    Delay(50000);
    SetLed(1,1);
    Delay(50000);
    SetLed(2,1);
    Delay(50000);


  }
}

void Delay(unsigned int n){//这里定时多久不重要,重要的是有定时时间
  int i;
  for(i=0; i<n; i++);for(i=0; i<n; i++);
  for(i=0; i<n; i++);for(i=0; i<n; i++);
}

void InitIO(void){
  P1DIR |= 0x03;  // 0000 0111 配置P10/P11为输出
  P0DIR |= 0x10;  // 0001 0000 配置P04为输出
  P1_0 = 0x01;
  P1_2 = 0x01;
  P0_4 = 0x01;
}

void SetLed(int LedId,int state){//上拉给0点亮
  if(LedId == 0){//P1_0
    if(state == 0) P1_0 = 0;
    else           P1_0 = 1;
  }
  if(LedId == 1){//P1_1
    if(state == 0) P1_1 = 0;
    else           P1_1 = 1;
  }
  if(LedId == 2){//P0_4
    if(state == 0) P0_4 = 0;
    else           P0_4 = 1;
  }  
}

和keil开发类似,也要包含头文件和main主函数
然后看自己CC2530的开发板原理图,找一下LED的位置,直接寄存器赋值将其点亮
ZigBee快速入门——IO配置(LED),ZigBee,单片机,嵌入式硬件,ZigBee
ZigBee快速入门——IO配置(LED),ZigBee,单片机,嵌入式硬件,ZigBee
烧录程序
需要用到硬件仿真器连接,连接后按一下按钮(相当于reset?)
电脑上要安装好驱动,没有驱动识别不出来
ZigBee快速入门——IO配置(LED),ZigBee,单片机,嵌入式硬件,ZigBee

IO配置

工作范围:2-3.6v,推荐3.3v
封装:QFN40,40引脚

ZigBee的IO口可以有不同的工作模式,所以在用之前,需要先学会IO口怎么配置
①普通IO模式与片上外设模式—寄存器— P0SEL、P1SEL、P2SEL
②输出状态与输入状态—寄存器—P0DIR、P1DIR、P2DIR
③上拉下拉三态——PxINP(P0INP、P1INP、P2INP)
①板子上电初始化默认处于普通IO模式,即P0SEL、P1SEL、P2SEL均为0x00,如果没有用到片上外设,可以不写关于PxSEL的配置:
ZigBee快速入门——IO配置(LED),ZigBee,单片机,嵌入式硬件,ZigBee

ZigBee快速入门——IO配置(LED),ZigBee,单片机,嵌入式硬件,ZigBee
③如果PxINP的第六位为0,那么P06一定是三态,如果是0,那么处于上拉或下拉 (由P2INP的高三位决定此时处于上拉还是下拉的状态。)
ZigBee快速入门——IO配置(LED),ZigBee,单片机,嵌入式硬件,ZigBee
ZigBee快速入门——IO配置(LED),ZigBee,单片机,嵌入式硬件,ZigBee文章来源地址https://www.toymoban.com/news/detail-814904.html

到了这里,关于ZigBee快速入门——IO配置(LED)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 应广单片机及mini-c快速入门

    最近被逼做应广MCU的开发, 老板逼着我维护项目, 才学习下 故做了相关总结, 希望对大家有所帮助           对应一个新的平台, 我推荐大家不要急着往项目完成这目标去做,          因平台不同, 建议做好基础,,,,,先看下相关说明, 如数据手册, 使用手册, 例程等, 还有避坑

    2024年02月16日
    浏览(41)
  • 单片机-LED介绍

    LED 即发光二极管。它具有单向导电性,通过 5mA 左右电流即可发光 电流 越大,其亮度越强,但若电流过大,会烧毁二极管,一般我们控制在 3 mA-20mA 之间,通常我们会在 LED 管脚上串联一个电阻,目的就是为了限制通过发光二极 管的电流不要太大,因此这些电阻又可以称为“

    2024年02月09日
    浏览(56)
  • 如何使用单片机点亮LED灯,并使用按键控制[51单片机]

    首先先看一下我的板子,如果我们板子不相同,可能操作也不太相同 我们就不讲底层原理了,直接看,我们可以看到板子上有 8个LED灯   那这个8个LED用什么来控制呢,我们先看底层的线路图,所有的LEDD都连接到了P2带后缀的接口上, 那么只需要操作这几个接口的高低电频,

    2024年02月05日
    浏览(42)
  • 【51单片机】LED 点阵

    参考:普中 51 单片机开发攻略 第13章 mian.c

    2024年01月22日
    浏览(41)
  • 51单片机点亮LED灯

    目录 前言 一、点亮一个LED 二、LED闪烁 三、LED流水灯 四、独立按键控制LED 独立按键控制LED亮灭 独立按键控制LED状态 独立按键控制LED以二进制形式显示 独立按键控制LED状态循环移位 总结           嵌入式学习的入门就是点亮LED灯,就好比学习编程语言敲 “Hello world”

    2024年02月06日
    浏览(40)
  • 51单片机LED点阵屏

    LED点阵屏是一种由许多小型LED灯组成的矩阵式显示屏。这些LED灯可以是单色、双色或全彩的,它们排列成行和列的网格,可以根据需要点亮来显示图像、文字或动画等内容。LED点阵屏广泛应用于户外广告牌、室内显示、交通信号灯、电子价格标签和其他需要显示信息的场合。

    2024年01月23日
    浏览(49)
  • 【51单片机】LED点阵屏

    🎊专栏【51单片机】 🍔喜欢的诗句:更喜岷山千里雪 三军过后尽开颜。 🎆音乐分享【Waiting For Love】 大一同学小吉,欢迎并且感谢大家指出我的问题🥰 目录 🍔74HC595图片 🍔74HC595原理 🍔”上升沿“是什么意思 🎆LED点阵屏显示图形  🎈现象  🎈代码(三部分) main.c  Del

    2024年02月02日
    浏览(40)
  • 51单片机(二)成功点亮LED

    ❤️ 专栏简介:本专栏记录了从零学习单片机的过程,其中包括51单片机和STM32单片机两部分;建议先学习51单片机,其是STM32等高级单片机的基础;这样再学习STM32时才能融会贯通。 ☀️ 专栏适用人群 :适用于想要从零基础开始学习入门单片机,且有一定C语言基础的的童鞋

    2023年04月25日
    浏览(45)
  • 51单片机-按键控制led灯

    1.开发环境介绍 使用C语言,环境为keil Keil C51是美国Keil Software公司出品的51系列兼容单片机C语言软件开发系统,与汇编相比,C语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用. 什么是单片机 单片机(Single-Chip Microcomputer)是一种集成电路芯片,把具

    2024年02月09日
    浏览(45)
  • 51单片机按键控制LED亮灭

    通过单片机按键控制LED亮灭与传统电路的物理逻辑不同,在物理逻辑中开关控制电路的通断来控制LED的亮灭,而通过单片机完成该项目至于要不断地读取按键所连接IO口的电平来判断对LED连接的IO口输出的电平即可。 原理图如下:  根据原理图,我们可以发现按键按下时P2.1口

    2023年04月18日
    浏览(49)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包