4.2、LED1、LED2交替闪烁

发布者:BlissfulMoon最新更新时间:2024-08-01 来源: cnblogs关键字:LED  交替闪烁  CC2530 手机看文章 扫描二维码
随时随地手机看文章

#include 'ioCC2530.h' //引用CC2530头文件


/**************************************************************

函数名称:delay

功    能:软件延时

入口参数:time--延时循环执行次数

出口参数:无

返 回 值:无

**************************************************************/

void delay(unsigned int time)

{

    unsigned int i;

    unsigned char j;

    for(i = 0;i < time;i++)

        for(j = 0;j < 240;j++)

        {

            asm('NOP');//asm用来在C代码中嵌入汇编语言操作,汇

            asm('NOP');//编命令nop是空操作,消耗1个指令周期

            asm('NOP');

        }

}


/**************************************************************

函数名称:main

功    能:程序主函数

入口参数:无

出口参数:无

返 回 值:无

**************************************************************/

void main(void)

{

    P1SEL &= ~0x03;         //设置P1_0口和P1_1口为普通I/O口

    P1DIR |= 0x03;          //设置P1_0口和P1_1口为输出口

    

    P1_0 = 0;               //熄灭LED1

    P1_1 = 0;               //熄灭LED2

    

    while(1)//程序主循环

    {

        delay(1000);       //延时

        P1_0=~P1_0;  //P1_0连接着LED1

        delay(1000); 

        P1_1=~P1_1;       

    }

}


关键字:LED  交替闪烁  CC2530 引用地址:4.2、LED1、LED2交替闪烁

上一篇:5.1、按键SW1控制LED1亮灭
下一篇:2、编程工具IAR、烧写工具SmartRF的使用

推荐阅读最新更新时间:2026-03-20 11:39

单片机控制继电器 使LED交替闪烁
今天看到了继电器,想用89C51单片机控制它,使其能控制更丰富的电路,以完成一些复杂的功能。 首先用单片机的P2^0直接加到继电器上,发现没有反应,于是查了相关资料。发现单片机引脚输出的电流太小,不足以驱动继电器。 解决方法:利用三极管工作在饱和区的特性(开关特性)使继电器直接加在5伏电源之间,使其工作(或者说可以有足够的电流驱动它)。 注意:这里三极管并不是起放大电流的作用,只是当作一个开关。 原理图如图一(手画有点丑,见谅)。 连接电路前先不要接二极管D1,一会再解释二极管的作用。三极管是2n3904 NPN型三极管,基极电阻68欧姆,要把图中的5v电源vcc1和gnd1分别接到单片机的电源和地上., LED灯的电路由外
[单片机]
1、CC2530单片机介绍
单片机是一种集成电路芯片,包含中央处理器CPU、随机存储器RAM、只读存储器ROM、输入输出I/O接口、中断控制系统、定时/计数器和通信等多种功能部件。 本教程使用的单片机德州仪器生产的CC2530,其针脚分布如下:                    P0、P1各8个针脚(1字节=8位,针脚/位。一般16进制定义,自己换算二进制并结合参数表去理解每个设定功能),P2有5个针脚。 【软件】 1、IAR Embedded Workbench for 8051,IAR是著名的C编译器,CC2530使用的是8051内核。 2、SmartRF Flash Programmer,将IAR生成的hex文件烧写进cc2530芯片中。 3、
[单片机]
1、<font color='red'>CC2530</font>单片机介绍
基于ZigBee技术的CC2530粮库温湿度检测系统电路设计
  为了增加中心节点的数据存储和处理能力,选用带256KFlash的射频芯片,而且有标准的8051增强型处理器,因此选用CC2530作为本设计的主芯片。CC2530是Zigbee新一代SOC芯片真正的片上系统解决方案,支持IEEE802.15.4标准/ZigBeeRF4CE、Zigbee网络、家居及楼宇自动化、工业测控等领域,也是目前众多ZigBee设备产品中表现最为出众的微处理器之一。   作为片上系统,CC2530集成了增强型高速8051内核处理器,8KB的RAM,多达256KB的闪存以及支持更大的应用;8通道12位A/D转换器、2个USART接口,21个通用的GPIO等;支持2.0~3.6V供电电压,具有3种电源管理模式
[单片机]
基于ZigBee技术的<font color='red'>CC2530</font>粮库温湿度检测系统电路设计
CC2530(zigbee)入门开发: 安装IAR开发环境
一、CC2530与开发环境介绍 CC2530本身是一个51单片机内核,开发过51的搞起来非常容易,也就是多了一个无线射频部分;如果不使用无线射频功能,那么就和一个正常的51单片机一样。要进行CC2530的软件开发,需要先安装IAR开发环境。 IAR的版本比较多,根据支持的微处理器种类区分了许多不同的版本,我们的CC2530使用的是增强型 8051 内核,IAR的版本可以采用这个型号:IAR Embedded Workbench for 8051,直接百度搜索下载就行。 IAR和keil一样都是单片机的集成开发环境,使用起来也差不多,如果用惯了keil的编程风格,可能一时半会还不习惯IAR,风格上有不小的差异。 二、安装IAR集
[单片机]
<font color='red'>CC2530</font>(zigbee)入门开发: 安装IAR开发环境
cc2530内部存储结构图
  CPU 和内存   CC253x芯片系列中使用的8051 CPU内核是一个单周期的8051兼容内核。它有三种不同的内存访问总线(SFR,DATA 和CODE/XDATA),单周期访问SFR,DATA 和主SRAM。它还包括一个调试接口和一个18 输入扩展中断单元。   中断控制器总共提供了18 个中断源,分为六个中断组,每个与四个中断优先级之一相关。当设备从活动模式回到空闲模式,任一中断服务请求就被激发。一些中断还可以从睡眠模式(供电模式1-3)唤醒设备。   内存仲裁器位于系统中心,因为它通过SFR 总线把CPU 和DMA 控制器和物理存储器以及所有外设连接起来。内存仲裁器有四个内存访问点,每次访问可以映射到三个物理存储器之
[单片机]
<font color='red'>cc2530</font>内部存储结构图
CC2530基础 二、流水灯
流水灯程序 #include iocc2530.h //引入头文件之后才能使用其中定义的一些寄存器的名称 #define D3 P1_0 #define D4 P1_1 #define D5 P1_3 #define D6 P1_4 void delay(unsigned int t) { while(t--); } void Init_Port() //端口初始化函数。 { P1SEL&=~0X1B;//0001 1011。选择端口的功能,将其设为通用I/O端口,则将相应的位清0 P1DIR|=0X1B; //0001 1011。配置端口的方向,设为输出,将其置1 } void Led_Runing() { D4
[单片机]
CC2530基于定时器1摸模式的秒闪灯
实验要求 代码实现 #include ioCC2530.h #define T1CCOL unsigned int #define T1CCOH unsigned int #define D4 P1_1 #define D6 P1_4 unsigned int count = 0; //端口初始化函数 void Init_Prot() { //配置4个LED灯的引擎 //选择端口的功能 P1SEL &=~0x1B;//设置通用io端口 //配置端口的方向 P1DIR |=0x1B; //关闭LED灯 P1 &=~0x1B; } //定时器的初始化 void Init_Timer1() { /
[单片机]
<font color='red'>CC2530</font>基于定时器1摸模式的秒闪灯
cc2530裸机编程系列笔记1--定时器Timer1模模式的程序设计
定时器/计数器是单片机的几大重要资源之一,而cc2530的定时器/计数器与普通的51系列单片机相比,工作模式增加了。通过学习手册可知cc2530的定时器/计数器有三种工作模式,风别为自由模式、模模式和正计数/倒计数模式。无论哪种模式,均可以采用查询和中断两种方式使用定时器的。本专题讲述cc2530定时器/计数器处于模模式时的编程方法。 首先是用查询的方式来使用Timer1定时器。使用Timer定时器时,首先要对该定时器进行初始化,代码如下: void INIT_Timer1() { T1CTL = 0x00; //1分频、停止运行 T1CTL = 0x0e; //128分频 模模式 T1CCTL0 |= 0
[单片机]
<font color='red'>cc2530</font>裸机编程系列笔记1--定时器Timer1模模式的程序设计
小广播
最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

厂商技术中心

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

 
机器人开发圈

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2026 EEWORLD.com.cn, Inc. All rights reserved