CC2530实验指导书
合肥市博焱科技有限公司
一、CC2530基础实验部分
1。1 输入输出I/O 控制实验
1.1.1 CC2530 基础实验1 :LED自动闪烁
一、实验目的:
本实验的目的是让用户了解CC2530的I/O接口的编程方法,学会使用I/O操作外部设备。实验以LED为外设,通过I/O控制LED的亮灭.
二、实验仪器设备
仿真器1 台,传感器节点底板1 块,ZigBee 模块 1 块,USB 连接线1 根。
三、实验内容:
(一)实验原理说明:
硬件说明:
图1 LED连接原理图
如图1所示,发光二极管的D2的阴极与CC2530的P1_1连接,发光二极管的D3的阴极与CC2530的P1_0连接。因此只要P1_1和P1_0的输出电压为低电平,发光二极管就会点亮,反之则会关闭。
软件说明:
本实验通过操作P1_0和P1_1的相关寄存器实现开、关发光二极管.操作的寄存器有P1,P1DIR ,没有设置而是取默认值的寄存器有:P1SEL ,P1INP 。
P1SEL (P1功能选择寄存器)
(二)实验内容:
1、实验相关函数
void Delay(uint n);///延时函数;
void Initial(void); ///初始化P1_0,P1_1;
void main(); ///实验1主函数;
具体代码见实验源码包。
2、实验步骤
连接硬件.打开IAR建立新工程,编写相关代码。在线调试代码 ,调试完毕通过下载器将可执行文件下载至单板,观察实验结果。
(三)预期实验结果:
执行程序以后,底板上的LED1和LED2会一直闪烁。
1.1.2 CC2530 基础实验2 :按键控制LED开关
一、实验目的:
让用户掌握按键应用这一常用人机交互方法,本次使用两个按键开关分别控制两个LED 灯.按下K1键切换电源底板上的 LED1 灯开,按下K2键 切换底板上的LED2 灯开。
二、实验仪器设备
仿真器1 台,传感器节点底板1 块,ZigBee 模块 1 块,USB 连接线1 根.
三、实验内容:
(一)实验原理说明:
硬件说明:
图2按键KEY原理图
图3 LED连接图
如图2所示,P0_3为上拉,按键K1接P0_3.由于P0_3为上拉,输入电平为高电平,当按键K1按下时,P0_3输入电平被拉低。通过设置检测P0_3的输入电平,来控制实验1中的LED亮灭.按键K2控制在线代码运行器LED亮灭同理。
软件说明:
实验中操作了的寄存器有P0,P0DIR ,P0SEL ,P1,P1DIR ,P1SEL ,P1INP 。具体寄存器的功能及设置参见cc2530芯片手册。
(二)实验内容:
1、实验相关函数
void Delay(uint n);///延时函数;
void Initial(void); ///初始化P1_0,P1_1,设置P1_0,P1_1为高电平输出;
void InitKey(void);///初始化按键,设置P0_3,P0_4为输入;
unsigned char KeyScan(void);/// 函数功能是检测按键是否按下,并返回相应的值;
void main(); ///实验2主函数;
具体代码见实验源码包.
2、实验步骤
连接硬件。打开IAR建立新工程,编写相关代码。在线调试代码 ,调试完毕通过下载器将可执行文件下载至单板,观察实验结果。
(三)预期实验结果:
执行程序以后,按下K1,底板上的LED1亮;按下K2,底板上LED2亮。
1.2 中断实验
1。2。1CC2530 基础实验3 :外部中断
一、实验目的:
使用两个按键来翻转LED 的状态,但这里两个按键不是做键盘用,而是产生中断触发信号。按下K1键电源底板上的 LED1 灯开。
二、实验仪器设备
仿真器1 台,传感器节点底板1 块,ZigBee 模块 1 块,USB 连接线1 根。
三、实验内容:
(一)实验原理说明:
硬件说明:
图4按键KEY原理图
图5 LED连接图
按下K1,产生中断,中断服务程序中中对当前LED的状态进行反转,即亮变成灭,灭变成亮。
软件说明:
实验中操作了的寄存器有P0,P0DIR ,P0SEL ,P1,P1DIR ,P1SEL ,P1INP , P0IEN ,P0CTL ,IEN2,P0IFG 等寄存器。
(二)实验内容:
1、实验相关函数
void Delay(uint n);///延时函数;
void Init_IO_AND_LED(void); ///初始化P0_3,P0_4,使能P0中断且配置为下降沿触发;
void P1_ISR(void);///中断服务程序,产生中断后反转LED状态,清楚中断标志;
void main(); ///实验3主函数;
具体代码见实验源码包。
2、实验步骤
连接硬件。打开IAR建立新工程,编写相关代码。在线调试代码 ,调试完毕通过下载器将可执行文件下载至单板,观察实验结果。
(三)预期实验结果:
执行程序以后,按下K1,底板上的LED1反转,再按再次状态反转.
1。3 定时/ 计数器实验
1。3。1CC2530 基础实验4:T1使用
一、实验目的:
用定时器1 来改变底板上LED灯的状态,T1每溢出两次,两个小灯闪烁一次,并且在停止闪烁后成闪烁前相反的状态。
二、实验仪器设备
仿真器1 台,传感器节点底板1 块,ZigBee 模块 1 块,USB 连接线1 根。
三、实验内容:
(一)实验原理说明:
硬件说明:
与实验1中硬件电路相同。
软件说明:
实验中操作的寄存器有P1,P1DIR ,P1SEL ,T1CTL。前三个寄存器见实验1中的介绍。
(二)实验内容:
1、实验相关函数
void Delay(uint n);///延时函数;
void Initial(void); ///设置P1_0,P1_1为高电平输出,将定时器1 设为自动重装模式,计数
时钟为 0.25M 。
void main(); ///实验4主函数;
具体代码见实验源码包。
2、实验步骤
连接硬件。打开IAR建立新工程,编写相关代码。在线调试代码 ,调试完毕通过下载器将可执行文件下载至单板,观察实验结果。
(三)预期实验结果:
执行程序以后,T1每溢出两次,两个小灯闪烁一次,并且在停止闪烁后成闪烁前相反的状态.
1.3。2CC2530 基础实验5 :T2使用
一、实验目的:
用定时器1 来改变底板上LED灯的状态,T1每溢出两次,两个小灯闪烁一次,并且在停止闪烁后成闪烁前相反的状态。
二、实验仪器设备
仿真器1 台,传感器节点底板1 块,ZigBee 模块 1 块,USB 连接线1 根。
三、实验内容:
(一)实验原理说明:
硬件说明:
与实验1中硬件电路相同。
软件说明:
实验中操作了的寄存器有P1,P1SEL ,P1DIR ,T2CTRL ,T2M0,T2IRQM 等寄存器.
P1 参见CC2530实验1
P1SEL 参见 CC2530实验 1
P1DIR 参见 CC2530实验 1
T2CTRL (T2配置寄存器)
(二)实验内容:
1、实验相关函数
void Delay(uint n);///延时函数;
void Initial(void); ///函数功能是启用LED ,使用LED 可控,开T2比较中断
void main(); ///实验5主函数;
注意:重要的宏定义
开启溢出中断
#define SET_TIMER2_CAP_INT() \
do{ \
T2IRQM = 0x04; \
EA = 1; \
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论