我是用avr上转型过来的,我也遇到这样的困惑,后来发现arm实在太快了,延时函数很好写,这是我随手写的,精度在us级的表现都不错。如果要验证的话在keil仿真看看就知道了。
#include "delay.h" void delay_ns(unsigned long int t) { unsigned long int i; unsigned long int j; j=Fclk*t; for(i = 0; i < j; i++); }
void delay_nms(unsigned long int t) { unsigned long int i; unsigned long int j; j=Fclk/1000*t; for(i = 0; i < j; i++); }
void delay_nus(unsigned long int t) { unsigned long int i; unsigned long int j; j=Fclk/1000000*t; for(i = 0; i < j; i++); }
|
头文件:
#ifndef __delay_H
#define __delay_H
#define Fclk 60000000
//**********************函数声明***************************
void delay_ns (unsigned long int t);
void delay_nms(unsigned long int t);
void delay_nus(unsigned long int t);
//*********************************************************
#endif
关键词:
FCLK软件延
加入微信
获取电子行业最新资讯
搜索微信公众号:EEPW
或用微信扫描左侧二维码