跨届大侠
- 积分
- 6089
- 威望
- 2660
- 贡献
- 1737
- 兑换币
- 1625
- 注册时间
- 2011-7-22
- 在线时间
- 846 小时
|
光速小子 发表于 2014-3-24 18:48
是否是在一段程序开始前开定时器,结束后关定时器然后看返回的值?
没必要,我写的这个函数是从上电初始化后就开始不停的计时,只要time=micros()或time=millis()就能读到当前时间
然后,micros()-time就能计算出一段代码的运行时间,用来查看每个函数运行时间、计算时间都挺方便的
代码:
Time_Function
Time_Function.h:
- #ifndef Time_Function_h
- #define Time_Function_h
- #define BUSCLOCK80M
- #define EnableControlPIT PITINTE_PINTE1=1; //定时器中断通道1 中断使能
- #define DisableControlPIT PITINTE_PINTE1=0; //定时器中断通道1 中断使能
- #define EnableTimerPIT PITINTE_PINTE0=1; //定时器中断通道1 中断使能
- #define DisableTimerPIT PITINTE_PINTE0=0; //定时器中断通道1 中断使能
- static unsigned long time_ms=0;
- static unsigned long time_ms_mod=0;
- static unsigned long time_us=0;
- void setbusclock_80M(void);
- void Dly_us(unsigned int);
- void Dly_ms(unsigned int);
- void PIT_Init(void);
- unsigned long micros(void);
- unsigned long millis(void);
- static unsigned signa=0;
- #endif
复制代码
|
|