您现在所在的是:

单片机论坛

回帖:24个,阅读:11029 [上一页] [1] [2] [3] [下一页]
2459
sgx
文章数:474
年度积分:50
历史总积分:2459
注册时间:2001/11/22
发站内信
发表于:2003/12/21 11:08:00
#10楼
我觉得mole1979的说法比较实际,在程序里直接使用定时中断,理论上可行,但实际中非常不容易,而在计时器进入中断时再重赋值时又有一个误差。你会说那我不把那进入中断后再赋值的语句所用的时间算进不就得了,我认为很难算准,当然你可以用外部计数,如用时钟晶振+分频器,如32768Hz+4060。这可以做到很精确。因为我们不能对它的频率进行人为干预,如不精确那也是晶振的问题。当然这又不在我们的讨论范畴之内。但我认为一定有高手能有很好的方法解决这些问题。等待他们的回音。
骐骥一跃,不能十步;
驽马十驾,功在不舍
1379
deyun
文章数:257
年度积分:50
历史总积分:1379
注册时间:2002/5/27
发站内信
发表于:2003/12/24 15:41:00
#11楼
中断子程序执行时间不会影响计时精度的,我们遇到的误差一般是要求中断的机器周期不是整数,我们可以在中断程序中校正。
比如:
void timer1(void) interrupt 3 using 2
{

TH1 = 0xf1; TL1 = TL1 + 0x9b;  // 重新装载计数器

/* 1S处理 */
ti1.n1++;
if(ti1.n1 >= 250)
{
 TL1 -= 9;               // 校正计数器得到精确时间
 ti1.n1 = 0;
 if(OE==1)tc.w++;
 if(tc.w>=ts.w)OE=0;
}

.....
return;

}
我不是天才,也不是蠢才。我有一颗上进的心,所以我不怕困难!
欢迎到我的论坛做客:http://www.deyunme.com/bbs/index.asp
2992
mole1979
文章数:845
年度积分:50
历史总积分:2992
注册时间:2003/5/26
发站内信
发表于:2003/12/24 17:15:00
#12楼
deyun,你的做法做過實驗了嗎?你嘗試一下用你的方法做一個電子時鐘,運行一兩天,看看準不?我無法做準(因為我太水了),所以想請教各位.
1379
deyun
文章数:257
年度积分:50
历史总积分:1379
注册时间:2002/5/27
发站内信
发表于:2003/12/26 7:28:00
#13楼
我做过很多包含时钟的项目,一个月下来误差也在十几秒之内。
我不是天才,也不是蠢才。我有一颗上进的心,所以我不怕困难!
欢迎到我的论坛做客:http://www.deyunme.com/bbs/index.asp
2459
sgx
文章数:474
年度积分:50
历史总积分:2459
注册时间:2001/11/22
发站内信
发表于:2003/12/26 17:32:00
#14楼
deyun,我知道你是高手,就C51来说你还有什么别的方法吗?说实话一个月有十几秒的误差也不算小了。我想我们让计时器工作在方式2让它自动重装赋值。再采用查询的方式计数是不是会好一点?
骐骥一跃,不能十步;
驽马十驾,功在不舍
1379
deyun
文章数:257
年度积分:50
历史总积分:1379
注册时间:2002/5/27
发站内信
发表于:2003/12/27 7:39:00
#15楼
自动重装赋值精度更差,因为没法校正累计周期误差。
我使用的是11.0592或22.1184的晶体(为了串口通信),误差很难做的很小,如果使用4,6,8,12,16,24兆赫的晶体会做的很精确。
我不是天才,也不是蠢才。我有一颗上进的心,所以我不怕困难!
欢迎到我的论坛做客:http://www.deyunme.com/bbs/index.asp
2992
mole1979
文章数:845
年度积分:50
历史总积分:2992
注册时间:2003/5/26
发站内信
发表于:2003/12/27 9:02:00
#16楼
請教deyun老大,我做一個電子時鐘,6led,動態驅動,4按鍵,我以前一直用內部中斷來做,精度無法提高呀,我在中斷程序里驅動led顯示.請教該怎樣做呀.
2459
sgx
文章数:474
年度积分:50
历史总积分:2459
注册时间:2001/11/22
发站内信
发表于:2003/12/27 10:07:00
#17楼
TO MOLE1979
这是我从别处下载的一个文件,不知对你有用否。
附件:
[本地下载]
骐骥一跃,不能十步;
驽马十驾,功在不舍
1418
魔法師
文章数:73
年度积分:50
历史总积分:1418
注册时间:2003/12/26
发站内信
发表于:2003/12/27 11:41:00
#18楼
以下是引用sgx在2003-12-21 10:26:00的发言:
那我就告诉你,我很小器的。因为我很穷

呵呵!...跪著去..
魔法無限施展
------------
充盈宇宙空間
2992
mole1979
文章数:845
年度积分:50
历史总积分:2992
注册时间:2003/5/26
发站内信
发表于:2003/12/27 11:46:00
#19楼
謝謝SGX!!!

关于我们 | 联系我们 | 广告服务 | 本站动态 | 友情链接 | 法律声明 | 非法和不良信息举报

工控网客服热线:0755-86369299
版权所有 工控网 Copyright©2024 Gkong.com, All Rights Reserved

62.4004