下载此文档

LED灯闪烁实验.doc


文档分类:行业资料 | 页数:约8页 举报非法文档有奖
1/8
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/8 下载此文档
文档列表 文档介绍
课程名称:Zigbee技术及应用实验项目: LED灯闪烁实验指导教师:
专业班级: 姓名: 学号: 成绩:

实验目的
学****单片机IO口配置与驱动,实现指示灯LED1闪烁,频率为1Hz;
通过模块化编程,养成良好编程****惯。
实验设备
CC2530核心板一块;
传感器底板一个;
仿真器一个;
方口USB线一根;
实验原理
硬件设计原理
本实验的原理如图1-1所示。其中,LED1和LED3都串联一个R273和R275限流电阻,2530的P1口的P1_1和P1_0管脚上。当P1_1为低电平时,LED1上有电流流过,LED1被点亮,反之熄灭。
图 1-1 LED灯原理图
限流电阻R的计算:图中R273和R275限流电阻,其计算公式如下:
R=(U-UF)/ID (1-1)
式中,U为电路供电电压,UF为LED正向压降,ID为LED的工作电流。对于普通LED发光二极管,其正向压降:、、蓝/;点亮工作电流为3-20mA。
由图1-1可知,电路供电电压为U=,LED1选择为黄色发光二极管(),带入(1-1)式可得R的取值范围是95-633Ω,电阻只要在此范围内即可,一般选择了470Ω的常用电阻。
从图1-1可以看出,如果要让LED1发光,2530对应的I/O口将LED电平拉低。本实验我们只点亮LED1指示灯,所以只要设置LED1为低电平即可,2530哪个管脚相连就可以进行编程。随着这个思路我们在原理图中找到LED1
与CC2530芯片的P1_1管脚连接,将P1_1管脚拉低LED1即被点亮。
程序设计原理
(1)主程序分析
本实验的程序流程如图1-2所示,其重点IO口的配置。如果以1Hz的频率点亮LED1闪烁,则需要配置P1_1为输出,然后在P1_1输出1Hz的脉冲信号。
图1-2 程序逻辑流程图
(2)IO端口配置
P1口通过特殊功能寄存器P1SEL(P1口功能选择寄存器)和P1DIR(P1口方向寄存器)进行配置,其定义如下。
P1SEL(P1功能选择寄存器,P0SEL同理):
位号码
名称
复位
R/W
描述
7:0
SELP1_[7:0]
0x00
R/W

0: 通用I / O
1: 外设功能
P1DIR(P1方向寄存器,P0DIR同理):
位号码
名称
复位
R/W
描述
7:0
SELP1_[7:0]
0x00
R/W

0: 输入
1: 输出
特殊功能寄存器的配置方法:通过位操作实现对特殊功能寄存器的配置。【例如,如果需要对P1SEL的第3位设置为1,则可用P1SEL |= 0x08 (二进制表示为:0000 1000 )来实现;如果需要对P1SEL的第3位设置为0,则可用P1SEL &= 0xF7来实现。】
(3)延时子程序设计
延时函数原型如下,在16M Hz主时钟频率下,参数time 的值表示延时了多少ms。(2530单片机上电默认使用内部RC振荡器产生系统主时钟,内部主时钟RC振荡器频率为16M Hz)
void Delay_ms(unsigned int time)
{
unsigned int

LED灯闪烁实验 来自淘豆网www.taodocs.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数8
  • 收藏数0 收藏
  • 顶次数0
  • 上传人q2299971
  • 文件大小201 KB
  • 时间2017-07-13