各位朋友帮分析下,ATmega16L,这个程序用的是多少M外置晶振,
本帖最后由 110942199 于 2013-1-28 10:59 编辑各位朋友帮分析下,ATmega16L,这个程序用的应该是多少M外置晶振?
void delay_1ms(void) //1ms延时函数
{
unsigned int i;
for (i=0;i<1140;i++);
}
附件是全部的源程序,需要IAR for AVR打开
WinAVR已经有现成的_delay_ms_()和_delay_us_() NemoGu 发表于 2013-1-28 01:53 static/image/common/back.gif
WinAVR已经有现成的_delay_ms_()和_delay_us_()
是个别人的开源,有源代码和原理图,但是原理图上没有标注晶振的数值 一般这么弄延时的,其实都不要求很准 有没有用串口和定时器什么的看那个好算 估计不大2M左右 这个是全部的源程序,需要IAR for AVR打开 貌似是8m,如果没有记错滴话 本帖最后由 eblc1388 于 2013-1-30 01:22 编辑
请楼主细心查看一下 Delay.c 文档, 内有【注意:系统时钟8M】 的描述。还有在 lc_meter.c 文档内也可以从以下函数 cal_fre() 看得出来。
/************************************************************
函数:int cal_fre()
用途:频率计算函数
介绍:根据全局变量计算频率,并将结果作为返回值返回
*************************************************************/
unsigned long int cal_fre()
{
unsigned long int fre;
fre=8000000/seizedata; //通过捕获周期时间间隔计算频率
return fre;
}
eblc1388 发表于 2013-1-30 00:47 static/image/common/back.gif
请楼主细心查看一下 Delay.c 文档, 内有【注意:系统时钟8M】 的描述。还有在 lc_meter.c 文档内也可以从以 ...
嗯,看到了,非常感谢!是我太粗心了
页:
[1]