欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 7476|回復: 0
打印 上一主題 下一主題
收起左側

單片機用定時器中斷來掃描數碼管

[復制鏈接]
跳轉到指定樓層
樓主
ID:80436 發表于 2015-5-22 00:26 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式

#include<reg52.h>
#define uint unsigned int
#define uchar unsigned char
sbit dula=P2^6;
sbit wela=P2^7;
sbit d1=P1^0;
uchar num,num1;t;
uchar code table[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};
void main()
{
num=0;
t=0;
        TMOD=0X01;//設置定時器工作方式為1TH0=(65536-5000)/256;//高八位 定時器裝初值TL0=(65536-5000)%256;//低八位 定時器裝初值、、50毫秒ET0=1;//開定時器0中斷TR0=1;//啟動定時器0EA=1;//總中斷打開EX0=1;//外部中斷打開
//EA=1;//開總中斷
ET0=1;//開定時器0中斷
ET1=1;
TR0=1;//啟動定時器0
TR1=1;
P2=0xfe;
while(1)
{
if(t==100)
   {
t=0;
num++;

P0=table[num];//此處有問題。num自增到10后會出現亂碼。數組越界了
}
}
}


void time0() interrupt 1
{
TH0=(65536-10000)/256;
TL0=(65536-10000)%256;
t++;
}
次數X機器周期Tcy=時間T,50*(1/12)*12=50(ms)、一次中斷為50毫秒。中斷二十次就是一秒了。
機器周期=1/12  即12分之1的震蕩周期。振蕩周期取決于你用的是多少M的晶振,我用的是12M,越來越覺的STC的51單片機很水,性能很水,穩定性也很水、工業用不合適,業余玩玩可以,便宜!難怪很多人做產品時寧愿用Atmel的單片機了。
利用中斷20次來實現1秒鐘的精確延時,比用delay函數當然更精確地的啦,最多就相差1微秒。一個機器周期的樣子,在這鄙視下PLC的速度,呵呵,單片機的機器周期是1微秒級的,PLC機器周期是數十微秒。



分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表