專注電子技術(shù)學(xué)習(xí)與研究
當(dāng)前位置:單片機(jī)教程網(wǎng) >> MCU設(shè)計(jì)實(shí)例 >> 瀏覽文章

51單片機(jī)方波發(fā)生器程序100HZ和200HZ按鍵控制

作者:佚名   來源:本站原創(chuàng)   點(diǎn)擊數(shù):  更新時(shí)間:2013年11月02日   【字體:

//本機(jī)晶振11.0592,采用stc89c51單片機(jī),P3.2 P3.3兩個(gè)按鍵控制方波發(fā)生器的輸出頻率.

#include <reg52.h>
#define uchar unsigned char
#define uint unsigned int
sbit output=P1^7;   //輸出點(diǎn)
sbit oneset=P3^2;   //設(shè)置100HZ
sbit twoset=P3^3;    //設(shè)置200HZ
uint number1=0;  //定時(shí)器0高8位
uint number2=0;  //定時(shí)器0低8位


void main()
{

TMOD=0x01;
TH0=0xee;  //任意設(shè)定初值
TL0=0x0b;
EA=1;
ET0=1;
TR0=1;
while(1)
{
 if(oneset==0)  //鍵值判斷 oneset為100HZ 實(shí)際是100.027HZ略有誤差
 {number1=0xee;
 number2=0x0b;
 }
 if(twoset==0) //鍵值判斷 twoset為200HZ 實(shí)際是200.143HZ略有誤差
 {
 number1=0xf7;
 number2=0x0b;
 }

}
}

void init()interrupt 1
{
 TH0=number1;
 TL0=number2;
 output=~output;
 TR0=1;
}

關(guān)閉窗口

相關(guān)文章