欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136
標(biāo)題:
編寫蜂鳴器程序時(shí) 單片機(jī)T2定時(shí)器中斷使用出現(xiàn)了問題 希望大家能給予我點(diǎn)指導(dǎo)
[打印本頁]
作者:
我要51啦
時(shí)間:
2020-2-26 23:13
標(biāo)題:
編寫蜂鳴器程序時(shí) 單片機(jī)T2定時(shí)器中斷使用出現(xiàn)了問題 希望大家能給予我點(diǎn)指導(dǎo)
平時(shí)都是用T0,T1 這次兩個(gè)都用完了 所以必須使用T2了 ,所以使用T2時(shí)就出現(xiàn)了不少的問題
我根據(jù)網(wǎng)上的資料 寫了一個(gè)關(guān)于蜂鳴器的程序 但是實(shí)踐中 蜂鳴器無法正常運(yùn)行
單片機(jī)程序如下 , 希望大家能指導(dǎo)我一下 主要是關(guān)于T2定時(shí)器中斷的問題 謝謝大家了
#include <REG52.H>
#define uchar unsigned char
sfr T2MOD=0xC9;
sbit beepIO=P2^7;
uchar m,n;
uchar code T[49][2]={{0,0},
{0xF8,0x8B},{0xF8,0xF2},{0xF9,0x5B},{0xF9,0xB7},{0xFA,0x14},{0xFA,0x66},{0xFA,0xB9},{0xFB,0x03},{0xFB,0x4A},{0xFB,0x8F},{0xFB,0xCF},{0xFC,0x0B},
{0xFC,0x43},{0xFC,0x78},{0xFC,0xAB},{0xFC,0xDB},{0xFD,0x08},{0xFD,0x33},{0xFD,0x5B},{0xFD,0x81},{0xFD,0xA5},{0xFD,0xC7},{0xFD,0xE7},{0xFE,0x05},
{0xFE,0x21},{0xFE,0x3C},{0xFE,0x55},{0xFE,0x6D},{0xFE,0x84},{0xFE,0x99},{0xFE,0xAD},{0xFE,0xC0},{0xFE,0x02},{0xFE,0xE3},{0xFE,0xF3},{0xFF,0x02},
{0xFF,0x10},{0xFF,0x1D},{0xFF,0x2A},{0xFF,0x36},{0xFF,0x42},{0xFF,0x4C},{0xFF,0x56},{0xFF,0x60},{0xFF,0x69},{0xFF,0x71},{0xFF,0x79},{0xFF,0x81}
};
uchar code music[][2]={{0,4},
{22,6},{23,12},{43,6},{22,6},{23,12},{43,6},{22,6},{23,12},{43,6},{22,6},{23,12},{43,6},{22,6},{23,12},
{0xFF,0xFF}};
uchar s;
void delay(uchar p) //延遲函數(shù)
{
uchar i,j;
for(;p>0;p--)
for(i=181;i>0;i--)
for(j=181;j>0;j--);
}
void pause() //延遲函數(shù)
{
uchar i,j;
for(i=150;i>0;i--)
for(j=150;j>0;j--);
}
void T2_int() interrupt 5 //中斷函數(shù)
{
TF2=0;
beepIO=!beepIO;
RCAP2H=T[m][0];
RCAP2L=T[m][1];
TH0=RCAP2H;
TL0=RCAP2L;
}
void main()
{
uchar i=0;
TCLK=0;
RCLK=0;
T2MOD=0X00;
ET2=1;
EA=1;
while(1)
{
m=music[i][0];n=music[i][1];
if(m==0x00)
{TR2=0;delay(n);i++;}
else if(m==0xFF)
{TR2=0;delay(30);i=0;}
else if(m==music[i+1][0])
{TR2=1;delay(n);TR2=0;pause();i++;}
else
{TR2=1;delay(n);i++;}
}
}
復(fù)制代碼
作者:
wulin
時(shí)間:
2020-2-27 09:53
void T2_int() interrupt 5 //中斷函數(shù)
{
TF2=0;
beepIO=!beepIO;
RCAP2H=T[m][0];
RCAP2L=T[m][1];
TH2=RCAP2H;
TL2=RCAP2L;
}
void main()
{
uchar i=0;
T2MOD = 0;
T2CON = 0;
TR2=1;
ET2=1;
EA=1;
while(1)
{
......
歡迎光臨 (http://www.raoushi.com/bbs/)
Powered by Discuz! X3.1