新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > STC單片機(jī)精確延時(shí)參數(shù)測(cè)定方法

STC單片機(jī)精確延時(shí)參數(shù)測(cè)定方法

作者: 時(shí)間:2016-11-19 來(lái)源:網(wǎng)絡(luò) 收藏
 在使用STC單片機(jī)的時(shí)候,大家是不是會(huì)遇見(jiàn)一個(gè)問(wèn)題:延時(shí)往往很難把握。當(dāng)然可以使用延時(shí)函數(shù)產(chǎn)生波形輸出到示波器觀察來(lái)修改延時(shí)參數(shù),但是沒(méi)有示波器時(shí)有沒(méi)有方法來(lái)確定延時(shí)參數(shù)呢。我這里自創(chuàng)了個(gè)辦法,發(fā)到這與大家分享一下。

其方法是這樣,首先設(shè)置好定時(shí)器的定時(shí)時(shí)間,在調(diào)用延時(shí)函數(shù)前打開(kāi)定時(shí)器,定時(shí)器中斷函數(shù)中讀取出延時(shí)參數(shù),然后通過(guò)串口將延時(shí)參數(shù)輸出。具體代碼如下:

本文引用地址:http://butianyuan.cn/article/201611/318543.htm
//程序說(shuō)明:測(cè)試stc單片機(jī)延時(shí)常數(shù),串口輸出//作者:mjx//注:程序測(cè)量精度高,適用stc這種指令不固定的單片機(jī)#include "STC12C5A60S2.h"#include int i,j,ii,jj;//ii,jj作為定時(shí)器定時(shí)結(jié)束時(shí)暫存數(shù),用于延時(shí)結(jié)束后串口輸出void Uart1_Send(unsigned char Data)	  //向控制器發(fā)送數(shù)據(jù)	{ES=0;TI=0;SBUF=Data;while(TI==0);TI=0;ES=1;}//延時(shí)函數(shù)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)		// 使用定時(shí)器1作為波特率發(fā)生器{PCON=0x00; 				//SMOD=0SCON=0x50;   			//0101,0000 8位可變波特率,無(wú)奇偶校驗(yàn)位TMOD|=0x20;   			//0011,0001 設(shè)置頂時(shí)器1為8位自動(dòng)重裝計(jì)數(shù)器AUXR=0x00; 				//設(shè)置定時(shí)器1工作在1T模式下TH1=0xfd; 		//設(shè)置定時(shí)器1自動(dòng)重裝數(shù)TL1=0xfd;TR1=1;    				//開(kāi)定時(shí)器1//  ES=1;    				//允許串口1中斷EA=1;    				//開(kāi)總中斷}void main(){TMOD=0x01;//T0定時(shí)器TH0 = 0xdC;	 //11.0592MHz--10ms	設(shè)置不同的時(shí)間,可以測(cè)試stc單片機(jī)內(nèi)部延時(shí)參數(shù)				TL0 = 0x00;ET0 = 1;			EA=1;Uart1_init();//初始化uart1,波特率9600,其他默認(rèn)TR0 = 1;//開(kāi)啟定時(shí)delay(100);//延時(shí)Uart1_Send(0x30+jj/10000);Uart1_Send(0x30+(jj%10000)/1000);Uart1_Send(0x30+(jj%1000)/100);Uart1_Send(0x30+(jj%100)/10);Uart1_Send(0x30+jj%10);Uart1_Send(0x2e);Uart1_Send(0x30+ii/10000);Uart1_Send(0x30+(ii%10000)/1000);Uart1_Send(0x30+(ii%1000)/100);Uart1_Send(0x30+(ii%100)/10);Uart1_Send(0x30+ii%10);while(1);}void Timer0(void) interrupt 1 using 3{ii=i; //  暫存延時(shí)函數(shù)的i和j jj=j; //TR0=0;}




評(píng)論


技術(shù)專(zhuān)區(qū)

關(guān)閉