
CC2530基础实验(1)—LED灯闪烁.docx
5页通过这个实验,可以掌握通过 CC2530 控制外设的基本方法本次的实验所要做的让 LED1、LED2、LED3、LED4 实现走马灯式的闪烁CC2530CC2530 芯片芯片 I/OI/O 对照表对照表CC2530 的 I/O 控制口一共有 21 个,分成 3 组,分别是 P0、P1 和 P2;由上面的对照表可以看出 LED1 所对应的 I/O 口为 P1_0,LED2 所对应的 I/O 口为 P1_1,LED3 所对应的 I/O 口为P1_4,LED4 所对应的 I/O 为 P0_1;下面我们来看一下本次实验所用到的控制寄存器中每一位的取值所对应的意义:P1DIRP1DIR((P1P1 方向寄存器,方向寄存器,P0DIRP0DIR 同理):同理):D7D6D5D4D3D2D1D0 P1.7 的方 向0:输入1:输出P1.6 的方 向0:输入1:输出P1.5 的方 向0:输入1:输出P1.4 的方 向0:输入1:输出P1.3 的方 向0:输入1:输出P1.2 的方 向0:输入1:输出P1.1 的方 向0:输入1:输出P1.0 的方 向0:输入1:输出P1SELP1SEL((P1P1 功能选择寄存器,功能选择寄存器,P0SELP0SEL 同理):同理):D7D6D5D4D3D2D1D0 P1.7 的 功能0:普 通 I/O1:外 设功能P1.6 的 功能0:普 通 I/O1:外 设功能P1.5 的 功能0:普 通 I/O1:外 设功能P1.4 的 功能0:普 通 I/O1:外 设功能P1.3 的 功能0:普 通 I/O1:外 设功能P1.2 的 功能0:普 通 I/O1:外 设功能P1.1 的 功能0:普 通 I/O1:外 设功能P1.0 的 功能0:普 通 I/O1:外 设功能寄存器的设置:寄存器的设置:将控制寄存器的某一位置将控制寄存器的某一位置 1 1::例:P1DIR |= 0X02;解释:”|=“表示按位或运算,0X02 为十六进制数,转换成二进制数为 0000 0010,若 P1DIR原来的值为 0011 0000,或运算后 P1DIR 的值为 0011 0010。
根据上面给出的取值表可知,按位与运算后 P1_1 的方向改为输出,其他 I/O 口方向保持不变将控制寄存器某一位清将控制寄存器某一位清 0 0::例:P1DIR //延时函数void InitIO(void); //初始化 LED 控制 IO 口函数void Delay(uint n) //延时函数{uint i; //定义一个变量 i; for(i = 0;i 在头文件 ioCC2530.h 中,对所有的寄存器都进行了定义,方便用户访问的外设时无需记住外设的地址,简化了外设的访问。
