C51常用延时程序

本文介绍了在C51编程中实现精确延时的两种方法:一种是基于循环计数的简单延时,另一种是利用NOP指令的延时函数。通过分析汇编代码和机器周期,可以计算并调整延时时间,适用于短暂延时需求。

在一些场合下,我们需要对单片机进行延时,我之前学的是汇编,没有感觉到延时很难控制。使用C语言写程序后感觉到程序好写了,可以一块一块写,但是对相对精确的延时却比较头痛。使用单片机的定时器延时很精确,在时间长的情况下使用,这涉及到定时器初值的载入,定时器开启,和通过软件查询定时器溢出,对于短暂延时麻烦了写。本篇仅仅就使用小程序延时进行说明

1>短暂延时思路一

unsigned char i;

***************************************************************************************************************

for(i=0;i<n;i++)//本句   延时时间  n*3+2个机器周期。

可以通过keil编译器设置断点,设置好晶振频率,通过调试判断该句实际运行时间!使用后断点时间减去该断点时间就是本句执行时间。

********************************************************************

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值