1、点亮第一个灯

I:\CC2540开发\AmoMcu-CC254x开发套件资料-2014年05月\4.初级基础实验-11.30\4.初级基础实验\1.Led闪烁_流水灯\Test

把CC-debug和开发板连接好,电源线和数据线连上(之前看完了用户手册后面的东西)

点击XXX.ewp在IAR中打开

点击绿色箭头后进入debug模式,需要按动单步调试或者直接step over按钮使程序直接运行

其代码和51很类似,唯一不同点在于第53行部分,要用到cc2540端口定义(貌似是使能用)

 1 /****************************************************************************
 2 * 文 件 名: main.c
 3 * 作    者: Amo [ www.amoMcu.com 阿莫单片机]
 4 * 修    订: 2014-04-08
 5 * 版    本: 1.0
 6 * 描    述: 操作IO口控制4盏LED灯的全亮和全灭、闪烁、流水灯
 7 ****************************************************************************/
 8 #include <ioCC2540.h>
 9
10 typedef unsigned char uchar;
11 typedef unsigned int  uint;
12
13 #define LED1 P1_0       //定义P1.0口为LED1控制端
14 #define LED2 P1_1       //定义P1.1口为LED2控制端
15 #define LED3 P1_4       //定义P1.4口为LED3控制端
16 #define LED4 P0_1       //定义P0.1口为LED4控制端
17
18
19 /****************************************************************************
20 * 名    称: DelayMS()
21 * 功    能: 以毫秒为单位延时,系统时钟不配置时默认为16M(用示波器测量相当精确)
22 * 入口参数: msec 延时参数,值越大,延时越久
23 * 出口参数: 无
24 ****************************************************************************/
25 void DelayMS(uint msec)
26 {
27     uint i,j;
28
29     for (i=0; i<msec; i++)
30         for (j=0; j<535; j++);
31 }
32
33 /****************************************************************************
34 * 名    称: LedOnOrOff()
35 * 功    能: 点亮或熄灭所有LED灯
36 * 入口参数: mode为1时LED灯亮  mode为0时LED灯灭, 共阴极
37 * 出口参数: 无
38 ****************************************************************************/
39 void LedOnOrOff(uchar mode)
40 {
41     LED1 = mode;
42     LED2 = mode;
43     LED3 = mode;
44     LED4 = mode;
45 }
46
47 /****************************************************************************
48 * 名    称: InitLed()
49 * 功    能: 设置LED灯相应的IO口
50 * 入口参数: 无
51 * 出口参数: 无
52 ****************************************************************************/
53 void InitLed(void)
54 {
55     P1DIR |= 0x13;      //P1.0、P1.1、P1.4定义为输出
56     P0DIR |= 0x02;      //P0.1定义为输出
57     LedOnOrOff(0);      //使所有LED灯默认为熄灭状态
58 }
59
60 /****************************************************************************
61 * 程序入口函数
62 ****************************************************************************/
63 void main(void)
64 {
65     uchar i;
66
67     InitLed();               //设置LED灯相关IO口
68
69     while(1)                 //死循环
70     {
71         LED1 = !LED1;         //流水灯,初始化时LED为熄灭执行后则点亮
72         DelayMS(200);
73         LED2 = !LED2;
74         DelayMS(200);
75         LED3 = !LED3;
76         DelayMS(200);
77         LED4 = !LED4;
78         DelayMS(200);
79         LED4 = !LED4;
80         DelayMS(200);
81         LED3 = !LED3;
82         DelayMS(200);
83         LED2 = !LED2;
84         DelayMS(200);
85         LED1 = !LED1;
86         DelayMS(200);
87
88         for (i=0; i<2; i++)   //所有灯闪烁2次
89         {
90            LedOnOrOff(0);    //关闭所有LED灯
91            DelayMS(200);
92            LedOnOrOff(1);    //打开所有LED灯
93            DelayMS(200);
94         }
95
96         LedOnOrOff(0);       //使所有LED灯熄灭状态
97         DelayMS(500);
98     }
99 }

链接:http://pan.baidu.com/s/1jG2CYaU

时间: 2024-12-13 07:09:44

1、点亮第一个灯的相关文章

2016.12.12 点亮第一个LED灯

一.keil编译程标准流程 注意事项: 1.建立的 工程 和 .c文件 文件名一样. 二.LED模块图 三.点亮第一个LED灯代码:    

[MSP430DriverLib-1]使用库开发并点亮第一个LED灯

???? MSP430DriverLib库下载地址:http://www.ti.com/tool/MSPDRIVERLIB ???? 下载后进入driverlib文件夹,选择对应的型号,这里我选择的是MSP430F5xx_6xx,进入后将里面的文件都复制到你的msp430工程目录下即可.这里我将要复制的文件都放在DriverLib文件夹里. ???? 这里我用的是TI的MSP430F5529 LaunchPad Evaluation Kit的板子.首先我们来点亮第一个LED,以下为源代码: #i

微信硬件H5面板开发(二) ---- 实现一个灯的控制

在第一节中讲解了openApi的调用,这一篇讲一下如何实现一个灯的控制.就用微信提供的lamp例子来做,将代码扒下来(实在是没办法,没有示例),整合到自己的项目中.lamp源码:http://files.cnblogs.com/files/stoneniqiu/lamp.zip. 你可以自己扒,带参数的页面在浏览器中打开会马上跳转,不带参数的会提示参数不全,需要用mobile模式观看. 呈现的界面如下: 目录结构 解压开lamp.js ,目录如下,这个demo是基于sea.js+zepto实现,

第8课 点亮第一个LED灯

8.1 点亮LED 硬件连接图, 由硬件图可知,当175引脚GPIO[0]输出为0时,LED点亮,当GPIO[0]输出为1时,LED就熄灭,GPIO寄存器的基地址为0x8000d000,下图为用到的几个寄存器的偏移地址 首先,选中GPIO引脚, *((unsigned short *)(0x8000d000+0x00)) = 0x5555; *((unsigned short *)(0x8000d000+0x04)) = 0x5555; 然后,GPIO[0]作为输出,其余的引脚置为输入. *((

1-MSP430点亮一个灯

为了写一篇文章做铺垫--提醒着自己,,,,,, 现在看一下程序 还是说一下是怎么关掉的 往WDTCTL寄存器里写入了0x5A00,,为什么要写这个呢! 那么 WDTCTL = 0x005A  + 0x0080;看门狗就停止了 好了,,,,,该点灯了............. 430 的引脚有一个方向问题,,用习惯就好了 就让P1.0输出高电平 首先让P1.0为输出模式 P1DIR = 0x01; 然后输出高电平 P1OUT = 0x01; 现在关掉 让它闪耀 #include "io430.h&

Linux点亮一个灯

1.解压linux 压缩包 使用命令: tar xzvf linux-3.0.8-20140925.tgz ( tar xvf ------.tar tar xzvf-------.gz  .tgz tar xjvf-------- .bz2 ) 2. 蓝色表示目录:绿色表示可执行文件:红色表示压缩文件:浅蓝色表示链接文件:灰色表示其它文件:红色闪烁表示链接的文件有问题了:黄色是设备文件,包括block, char, fifo.用dircolors -p看到缺省的颜色设置,包括各种颜色和“粗体”

GPIO接口及点亮第一个LED灯

一.GIPIO介绍 General Purpose Input Output (通用输入/输出)简称为GPIO,或总线扩展器,人们利用工业标准I2C.SMBus或SPI接口简化了I/O口的扩展.当微控制器或芯片组没有足够的I/O端口,或当系统需要采用远端串行通信或控制时,GPIO产品能够提供额外的控制和监视功能. 1.GPIO的优点 低功耗:GPIO具有更低的功率损耗(大约1μA,μC的工作电流则为100μA). 集成IIC从机接口:GPIO内置IIC从机接口,即使在待机模式下也能够全速工作.

BlinkLED 点亮第一个LED灯(C#)

界面: <StackPanel HorizontalAlignment="Center" VerticalAlignment="Center"> <TextBox Name="infoText" Text="Ready" FontSize="50" HorizontalAlignment="Center" VerticalAlignment="Center&q

BlinkLED 点亮第一个LED灯

import RPi.GPIO as GPIO import time GPIO.setmode(GPIO.BCM) GPIO.setup(25,GPIO.OUT) while True: GPIO.output(25,GPIO.HIGH) time.sleep(0.5) GPIO.output(25,GPIO.LOW) time.sleep(0.5)