新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 51單片機(jī)定時(shí)器模式1使用

51單片機(jī)定時(shí)器模式1使用

作者: 時(shí)間:2016-11-30 來源:網(wǎng)絡(luò) 收藏
特殊功能寄存器如下



使用TCON和TMOD
TF:溢出標(biāo)志 為1時(shí)表示溢出 需要手工置0
TR:開始計(jì)時(shí) 為1開始 為0停止
M1,M0 :工作模式 01為模式1 //16位 65536
GATE門暫不使用 置0
C/T:定時(shí)/計(jì)數(shù)




TH0,TL0:定時(shí)器0初始值

方法:
1、設(shè)定TMOD
2、設(shè)定初始值TH TL
3、設(shè)定TCON 開始計(jì)時(shí)

實(shí)例:共陽(yáng)七段數(shù)碼管0-F循環(huán)顯示延時(shí)1s
七段共陽(yáng)數(shù)碼管真值表
const uint8 ledcode[]={
0xC0, // 0
0xF9, // 1
0xA4, // 2
0xB0, // 3
0x99, // 4
0x92, // 5
0x82, // 6
0xF8, // 7
0x80, // 8
0x90, // 9
0x88, // A
0x83, // B
0xC6, // C
0xA1, // D
0x86, // E
0x8E // F
};

延時(shí)1s計(jì)算
溢出20次 每次50ms
TH0 TL0計(jì)算:
65536-((0.05x11059200)/12)=0x4c00 TH0=0x4c TL0=0x00

本文引用地址:http://m.butianyuan.cn/article/201611/323606.htm
#includetypedef unsigned char uint8;typedef unsigned int uint16;sbit en=P1^7;const uint8 ledcode[]={0xC0,  // 00xF9,  // 10xA4,  // 20xB0,  // 30x99,  // 40x92,  // 50x82,  // 60xF8,  // 70x80,  // 80x90,  // 90x88,  // A0x83,  // B0xC6,  // C0xA1,  // D0x86,  // E0x8E  // F};uint8 i,j;main(){i=0;j=0;TMOD=0x01;TH0=0x4c;TL0=0x00;TR0=1;en=0;while(1){if (TF0==1)  //如果溢出{TH0=0x4c;TL0=0x00;TF0=0;       //重新設(shè)定初始值 恢復(fù)狀態(tài)i++;}if(i==20){i=0;P2=ledcode[j]&0x7f;j++;}if(j==16){j=0;} }}

仿真:




評(píng)論


技術(shù)專區(qū)

關(guān)閉