STC单片机精确延时参数测定方法

本文介绍了如何使用STC单片机精确测定延时参数的方法。通过设置定时器,启动延时函数前开启定时器,利用中断读取延时参数并经串口输出,从而实现延时的精准测量。
摘要由CSDN通过智能技术生成
    在使用STC单片机的时候,大家是不是会遇见一个问题:延时往往很难把握。当然可以使用延时函数产生波形输出到示波器观察来修改延时参数,但是没有示波器时有没有方法来确定延时参数呢。我这里自创了个办法,发到这与大家分享一下。

   其方法是这样,首先设置好定时器的定时时间,在调用延时函数前打开定时器,定时器中断函数中读取出延时参数,然后通过串口将延时参数输出。具体代码如下:

//程序说明:测试stc单片机延时常数,串口输出
//作者:mjx
//注:程序测量精度高,适用stc这种指令不固定的单片机
#include "STC12C5A60S2.h"
#include <intrins.h>
int i,j,ii,jj;//ii,jj作为定时器定时结束时暂存数,用于延时结束后串口输出


void Uart1_Send(unsigned char Data)	  //向控制器发送数据	
{
   ES=0;
   TI=0;
   SBUF=Data;
   while(TI==0);
   TI=0;
   ES=1;
}
//延时函数
void delay(int k)
{		
	for(i = 0; i < k; i++)
	{
		for(j = 0; j < 30000; j++)
		{
			_nop_();_nop_();_nop_();_nop_();_nop_();
		}
	}
}

void Uart1_init(void)		// 使用定时器1作为波特率发生器
{
	PCON=0x00; 				//SMOD=0
 	SCON=0x50;   
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

TomiTwo

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值