当前位置:首页 > 实验一LED控制实验
WORD格式
实验一 LED 控制实验
一. 实验目的
在 EBDCC2530节点板上运行自己的程序。 通过 I/O 控制小灯闪烁和蜂鸣器鸣叫。 二.实验环境
硬件: PC机,EBDCC2530节点板, USB接口仿真器。 软件: Windows 98/2000/NT/XP , IAR 集成开发环境。 三.实验原理
仔细阅读和查询 CC2530设备的数据手册来设置 CC2530的 I/O 引脚,通过 I/O 引脚输出的高低电平来控制 灯的亮与灭和蜂鸣器的鸣叫。 置
本实验设置 P1.0 、P1.1 、P1.4 I/O 引脚来选通 LED1、LED2、LED3,引脚
为低电平点亮 LED,反之熄灭 LED。设置 P0.1 引脚来选通 BEEP,引脚置为低电平蜂鸣器鸣叫,反之蜂鸣器 不鸣叫。 CC2530 的 I/O 控制口一共有 21 个,分别为 P0、P1、P2。我们以 LED1所对应的 P1.0 引脚所用到 的控制寄存器为例,仔细说明控制寄存器中每一位所代表的意义。其他控制寄存器所代表的意义请查看 CC2530数据手册。 P1DIR(P1方向寄存器): D7
D6
D5
D4
D3
D2
D1
D0
P1.7 方 P1.6 方 P1.5 方 P1.4 方 P1.3 方 P1.2 方 P1.1 方 P1.0 方 向 0 : 向 0: 向 0 : 向 0: 向 0 : 向 0: 向 0: 向 0: 输 入 输 入 输
入 输 入 输 入 输 入 输 入 输 入
1:输出 1:输出 1:输出 1:输出 1:输出 1:输出 1:输出 1:输出 P1SEL(P1功能选择寄存器) : D7
D6
D5
D4
D3
D2
D1
D0
能 0:普 能 0 :普 通 I/O
通 I/O 1:外设
P1.7 功 P1.6 功 P1.5 功 P1.4 功 P1.3 功 P1.2 功 P1.1 功 P1.0 功 能 0 :普 能 0 :普 能 0 :普 能 0 :普 能 0 :普 能 0 :普 通 I/O 1:外设
通 I/O 1:外设
通 I/O 1:外设
通 I/O 1:外设
通 I/O 1:外设
通 I/O 1:外设
1:外设
寄存器的设置:
1)将控制寄存器的某一位置 1:
例如: P1DIR |= 0x01;
解释:“|=”表示按位或运算, 0x01 为十六进制数,转换成二进制数为
0000 0001,若 P1DIR原来的
值为 0011 0010 ,或运算后 P1DIR 的值为 0011 0001 ,根据上面的计算后 P1_0 的方向改为输出,其他 I/O
口保持不变。
2)将控制寄存器的某一位清 0:
例如: P1DIR &= ~0x01;
解释:“&=”表示按位与运算,“ ~”运算表示取反, 1110 ,
入,其他 I/O 口保持不变。 四. 主要代码
LDE灯实现的主要代码为:
0x01 为十六进制数,转换成二进制数为
1111
P1DIR 原来的值为 0011 0011 ,与运算后 P1DIR 的值为 0011 0010 ,根据上面的计算后 P1_0 的方向改为输
专业资料整理
WORD格式
void main(void) {
led_beep_init(); halWait(250); while(1) {
LED1 = 0; 烁
//LED1 闪 // 开始循环
halWait(250); BEEP = 0; halWait(250); BEEP = 1; halWait(250); LED1 = 0; LED2 = 0; LED3 = 0;
//LED 灯全亮 //BEEP 鸣叫
halWait(250); LED1 = 1;
halWait(250); LED2 = 0; \\
halWait(250); LED2 = 1; halWait(250); LED3 = 0; halWait(250); LED3 = 1; 五.实验步骤
//LED3 闪烁 //LED2 闪烁
halWait(250); halWait(250); LED1 = 1; LED2 = 1; LED3 = 1; halWait(250); halWait(250); } }
//LED 灯全灭
1、正确连接 USB仿真器的下载线和 EBDCC2530节点板。
2、打开实验源码 LEDs.eww(路径为: 出厂光盘 DISK-EMBV210-WSN\\05-Example\\2 基本接口实验 \\2.2 LED), 编译工程,依次选择“ Project ”→“Download and Debug”,下载到 3、把仿真器左侧的 USB 接口拔掉,然后拔掉连接在 可以通过相关的调试进一步观察 LED
EBDCC2530节点板右下方的电源开关,此时可以观察到程序运行的情况。
CC2530节点板。
(在不拔掉仿真器的情况下,我们
EBDCC2530节点板 DBG位置的调试接口。我们打开
LED的闪烁情况和蜂鸣器的鸣叫情况。 ) 4 、修改延时函数,可以改变
小灯的闪烁和蜂鸣器鸣叫的时间间隔。
5、重新编译,并下载程序到 EBDCC2530节点板,观察 LED的闪烁和蜂鸣器的鸣叫情况。 六.实验结果 Led 灯全亮时
LED
灯全灭
专业资料整理
共分享92篇相关文档