本篇博文最后修改时间:2017年01月06日,11:06。
一、简介
本文介绍CC2541的指令周期,以及如何利用指令周期来计算一个延时函数的时长。
二、实验平台
协议栈版本:BLE-CC254x-1.4.0
编译软件:IAR 8.20.2
硬件平台:Smart RF(主芯片CC2541)
三、版权声明
博主:甜甜的大香瓜
声明:喝水不忘挖井人,转载请注明出处。
原文地址:http://blog.csdn.NET/feilusia
联系方式:897503845@qq.com
香瓜BLE之CC2541群:127442605
香瓜BLE之CC2640群:557278427
香瓜单片机之STM8/STM32群:164311667
甜甜的大香瓜的小店(淘宝店):https://shop217632629.taobao.com/?spm=2013.1.1000126.d21.hd2o8i
四、
实验前提
1、在进行本文步骤前,请先
阅读
以下博文:
暂无
2、在进行本文步骤前,请先
实现以下博文:
暂无
五、基础知识
1、CC2541的指令周期如何计算?
答:
在传统的12M晶振的51中,时钟周期=1/12us,机器周期=12*时钟周期=1us,指令周期=2*机器周期=2us。
而2541是增强型的51,32M晶振下,时钟周期=1/32us,指令周期=时钟周期=1/32us。
2、CC2541的延时函数如何计算?
答:
举例,计算一个for(i = 0; i < 200; i++);的时间长度。
1)计算出2541的指令周期=1/32us。
2)通过iar的debug仿真查看汇编语句,查看执行一次for循环需要几条指令周期,假设是3条。
3)则可知整个for循环的时间长度=(1/32)*3*200=18.75us。