图1 STM32中有关定时器的时钟树
从图1可以看出,从系统设置的时钟源产生的时钟频率输入到AHB预分频器,进行分频处理,然后经过APB1预分频器和APB2预分频器给不同模块提供不同的时钟频率。下面以定时器2作为例子说明。当AHB预分频器输入频率为72 MHz的时候,由于APB1支持的最大频率为36 MHz,所以APB1预分频器,设置必须大于或等于2,假设设置为2,则在APB1倍频器中,频率被设置为72 MHz(当APB1分频数=1的时候,APB1倍频器加倍系数为1,当APB1分频数》1的时候,APB1倍频器加倍系数为2),所以最终提供给定时器2~7的频率为72 MHz。所以只需要设置APB1预分频器和APB1倍频器的值,便可以提供不同频率的定时器。定时器采用计数溢出的方式触发定时器中断,因此想要使用定时器,必须先配置好定时器中断。图2 CC2520发送数据流程图
图中封装的格式按照协议要求,内容主要包括数据长度、帧控制域(FCF)、目的地址、源地址、目的网络ID、源网络ID、发送数据、CRC(Cyclic Redundancy Check)校验码等。当采用的是硬件CRC检验时,不需要用户计算添加CRC检验码,也不需要CRC检验数据写入TXFIFO(CC2520发送缓冲区)中,有专门的寄存器存储CRC检验数据,由硬件完成检验和发送。当采用软件CRC检验时,需要用户自己计算CRC检验数据,并填写在帧的最后两字节中,随帧中其他数据一起写入TXFIFO。图3 CC2520接收数据流程图2 测试
2.1 测试方法欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/) | Powered by Discuz! 7.0.0 |