如何在C8051里面精确的做延时
来源:互联网 发布:四人网络防诈骗小剧本 编辑:程序博客网 时间:2024/06/15 00:40
在C里写的代码:
delay = 0x64;
while(--delay);
编译出来的汇编源代码是这样的:
; SOURCE LINE # 62
0010 7F64 MOV R7,#064H ; 2B,2CLK
0012 ?C0006:
; SOURCE LINE # 63
0012 DFFE DJNZ R7,?C0006 ; 2B,2/3CLK
如果我们采用24MHZ的晶振,每个时钟周期是41.6ns那么上面的延时语句
的延时精度可以是41.6×8/3=111ns,已经足够精确了。
如果我们要产生xns的延时,只要代入计算公式:
(x-83.2)/27.7得到delay的初始值就可以了!!
delay = 0x64;
while(--delay);
编译出来的汇编源代码是这样的:
; SOURCE LINE # 62
0010 7F64 MOV R7,#064H ; 2B,2CLK
0012 ?C0006:
; SOURCE LINE # 63
0012 DFFE DJNZ R7,?C0006 ; 2B,2/3CLK
如果我们采用24MHZ的晶振,每个时钟周期是41.6ns那么上面的延时语句
的延时精度可以是41.6×8/3=111ns,已经足够精确了。
如果我们要产生xns的延时,只要代入计算公式:
(x-83.2)/27.7得到delay的初始值就可以了!!
- 如何在C8051里面精确的做延时
- 在进行C51程序设计时如何精确延时的常见方法介绍
- MSP430的精确延时
- STM32的精确延时
- 精确延时的实现
- KEIL C 的精确延时
- IAR 的精确延时程序
- IAR的精确延时程序
- AVR 的精确延时程序
- stm32f051精确延时的实现
- oc里面的延时函数
- UCOS 的延时函数OSTimeDlyHMSM()实现精确延时 .
- UCOS 的延时函数OSTimeDlyHMSM()实现精确延时
- 怎样编写精确的延时函数
- 51单片机的几种精确延时
- RTOS的精确延时功能扩展
- 利用stm32f103的TIM2实现精确延时
- __delay_cycles精确延时的说明及改正
- C++内存管理详解
- 在SDI中做多视转换
- 项目管理: Maven 让事情变得简单
- WIN Multi-Thread Programe
- java学习之路
- 如何在C8051里面精确的做延时
- .NET Framework 2.0 中新增的两个压缩类
- 由linux中的一个宏定义引发的思考
- JAVA 实现内存管理 和 LOG 保存的 代码
- I am fooled
- 获得窗口和其他类指针的方法
- 硬件基础-cpu篇
- java日期操作实例
- 匈牙利命名法