码迷,mamicode.com
首页 > 其他好文 > 详细

「ZigBee模块」基础实验(1)点亮LED

时间:2014-11-26 15:41:42      阅读:483      评论:0      收藏:0      [点我收藏+]

标签:style   blog   io   ar   color   sp   for   strong   on   

1.IO配置

CC2530 的 IO 口配置需要三个寄存器:PXSELPXDIRPXINP 

 

IO口寄存器

P0

P1

P2

地址

0x80

0x90

0xA0

 

PXSEL

P0SEL

P1SEL

P2SEL

地址

0xF3

0xF4

0xF5

PX[7:0]功能设置寄存器,默认普通IO口 (0:普通 IO 口 1:第二功能)

 

PXDIR

P0DIR

P1DIR

P2DIR

地址

0xFD

0xFE

0xFF

PX[7:0] 输入输出设置寄存器 (0:输入 1:输出)

 

PXINP

P0INP

P1INP

P2INP

地址

0x8F

0xF6

0xF7

PX[7:0]做输入口时的电路模式寄存器 (0:上拉/下拉 1:三态)

2.LED部分接线方式

LED1P1_0

LED2P1_1

 

3.实现功能

通电后LED1LED2交替闪烁

 

4.部分代码分析

P1_0P1_1口进行配置

P1SEL &= ~0x03;

P1DIR |= 0x03;

P1INP &= ~0x03; 

 

5.完整代码

 1 #include <ioCC2530.h>
 2 
 3 #define LED1 P1_0
 4 #define LED2 P1_1
 5 
 6 #define uchar unsigned char
 7 #define uint  unsigned int
 8 
 9 void ledInit();
10 void delayms(uint ms);
11 
12 void ledInit()
13 {
14   P1SEL &= ~0x03;
15   P1DIR |= 0x03;
16   P1INP &= ~0x03;
17   
18   LED1 = 1;
19   LED2 = 0;
20 }
21 
22 void delayms(uint ms)
23 {
24   uint i,j;
25   for(i=ms; i>0; i--)
26     for(j=587; j>0; j--);
27 }
28 
29 void main()
30 {
31   ledInit();
32   while(1)
33   {
34     delayms(1000);
35     LED1 = !LED1;
36     LED2 = !LED2;
37   }
38 }

 

「ZigBee模块」基础实验(1)点亮LED

标签:style   blog   io   ar   color   sp   for   strong   on   

原文地址:http://www.cnblogs.com/Donut/p/4123077.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!