课程名称:Ziqbee技术及应用实验项目:LED灯闪烁实验指导教师:专业班级:姓名:学号:成绩:(1) 1-实验目的学习单片机10口配置与驱动,实现指示灯LED闪烁,频率为1HZ;通过模块化编程,养成良好编程习惯实验设备(1)CC2530核心板一块;(2)传感器底板一个;(3)仿真器一个;(4)方口US线一根;实验原理3.1硬件设计原理本实验的原理如图所示其中,LED和LED3TE串联一个R273和R275限流电阻,然后连接到CC2530勺P1口的P1_1和P1_(管脚上当P1_1为低电平时,LED上有电流流过,LED1被点亮,反之熄灭3.3VT.ED1470RLED3gPIO11470R图1-1LED灯原理图限流电阻R的计算:图中R273和R275限流电阻,其计算公式如下:R二(U—UF)/ID(1-1)式中,U为电路供电电压,UF为LEDE向压降,ID为LED勺工作电流对于普通LED发光二极管,其正向压降:黄色为1.4V、红色为1.6V、蓝/白色为2.5V;点亮工作电流为3-20mA由图可知,电路供电电压为U=3.3V,LED选择为黄色发光二极管(压降是1.4V),带入)式可得R的取值范围是95-633Q,电阻只要在此范围内即可,一般选择了470Q的常用电阻。
从图可以看出,如果要让LED发光,需要设置CC253对应的I/O口将LED电平拉低本实验我们只点亮LED指示灯,所以只要设置LED伪低电平即可,所以只要我们知道LED1与CC253哪个管脚相连就可以进行编程随着这个思路我们在原理图中找到LED与CC253芯片的P1_1管脚连接,将P1_1管脚拉低LED即被点亮3.2程序设计原理(1)主程序分析本实验的程序流程如图仁2所示,其重点10口的配置如果以1Hz的频率点亮LED1闪烁,贝嚅要配置P1_1为输出,然后在P1_1输出1Hz的脉冲信号「开始、V图1程序逻辑流程图(2)I0端口配置P1口通过特殊功能寄存器P1SEUP1口功能选择寄存器)和P1DIR(P1口方向寄存器)进行配置,其定义如下P1SEL(P1功能选择寄存器,P0SEL同理):位号码名称复位R/W描述7:0SELP1」7:0]0x00R/WP1.7到P0.0功能选择0:通用1/01:外设功能P1DIR(P1方向寄存器,P0DIR同理)位号码名称复位R/W描述7:0SELP1」7:0]0x00R/WP1.7到P1.0的I/O方向0:输入1:输出特殊功能寄存器的配置方法:通过位操作实现对特殊功能寄存器的配置。
例如,如果需要对P1SEL的第3位设置为1,则可用P1SEL|=0x08(二进制表示为:00001000)来实现;如果需要对P1SE的第3位设置为0则可用P1SEL&=OxF袜实现2) 延时子程序设计延时函数原型如下,在16MHz主时钟频率下,参数time的值表示延时了多少ms(本例使用的CC2530单片机上电默认使用内部RC8荡器产生系统主时钟,内部主时钟RC8荡器频率为16MHz)voidDelay_ms(unsignedinttime){unsignedinti,j;for(i=0;i