zigBee 串口实验初始化 笔记

实验准备

1 配置zigbee cc2530 时钟

时钟树

zigBee 串口实验初始化 笔记_第1张图片
设备有一个内部系统时钟或主时钟。
设备的系统时钟源可以采用16MHZ 的RC振荡器,也可采用32MHZ的晶体振荡器。

CLKCONCMD.OSC 位选择 主系统时钟的源。
但是改变CLKCONCMD.OSC不会立即改变系统时钟,需要等待一段时间。

当 CLKCONSTA.OSC = CLKCONCMD.OSC 的时, 时钟改变生效

CLKCONCMD寄存器

zigBee 串口实验初始化 笔记_第2张图片

CLKCONSTA 寄存器

zigBee 串口实验初始化 笔记_第3张图片

时钟配置代码:

 CLKCONCMD &= ~0x40;//设置 CLKCONCMD第6位OSC振荡器,为0
  while(CLKCONSTA & 0x40);//判断CLKCONSTA第6位OSC是否为1
  CLKCONCMD &= ~0x47;//设置时钟频率,~0x47 = 1011 1000,后三位置0 ,后三位控制CLKSPD = 000,32MHZ

2 USART外设的I/O口配置

PERCFG寄存器

zigBee 串口实验初始化 笔记_第4张图片

P0SEL 寄存器

zigBee 串口实验初始化 笔记_第5张图片

P2DIR 寄存器

因为会有多个i/o外设映射在同一引脚上,产生i/o映射冲突,通过配置优先级(P2DIR.PRIP0 位)可以解决冲突
zigBee 串口实验初始化 笔记_第6张图片
代码:

P2DIR &= ~0XC0;//P0优先作为UART0
PERCFG = 0x00;//USART I/O位置使用备用位置1,P0_2,P0_3
P0SEL = 0x3C;//P0_2,P0_3,P0_4,P0_5,用作外设,作为串口

3 配置USART方式为 UART方式

U0CSR 寄存器

zigBee 串口实验初始化 笔记_第7张图片
代码:

U0CSR |= 0x80;//置第7位为1,USART模式设置为UART模式

4 配置波特率

U0GCR寄存器

zigBee 串口实验初始化 笔记_第8张图片

U0BAUD 寄存器

在这里插入图片描述
代码:

U0GCR |= 10;
U0BAUD |= 59;//波波特率设置 38400

清除串口介绍标志位

中断标志:

zigBee 串口实验初始化 笔记_第9张图片
zigBee 串口实验初始化 笔记_第10张图片
zigBee 串口实验初始化 笔记_第11张图片
代码:

UTX0IF = 0;//中断标志位初始置为0.

你可能感兴趣的:(cc2530,zigBee,cc2530)