⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 main.c

📁 波形发生器 波形发生器
💻 C
字号:
//#include <reg51.h>

#include<ABSACC.H>
#include<intrins.h>
#include<math.h>
#include <Stc12c5412.H>



unsigned char count1=0;

unsigned char count2=0;

unsigned char count3=0;

unsigned char count4=0;

unsigned char count5=0;

unsigned char count6=0;
unsigned char count7=0;
//unsigned char count0=0;



void initial_timer0_1(void )         //定时器0的初始化,作为定时器,定时器1作为波特率发生器
 {
    TR0=0;
	TR1  = 0;	
    TMOD=0x51;/////////////
    IE=0x82;
 
    
//	TH0=0xfc;//1k
 //  TL0=0x17;


   TH0=0xff;//4k
    TL0=0x05;
  	//  TH0=0xf0;//0.25k
   // TL0=0x5f;

    /*
     TH0=0xff;//4k
    TL0=0x05;
	  TH0=0xfe;//2k
    TL0=0x0b;
	  TH0=0xf8;//0.5k
    TL0=0x2f;

		  TH0=0xf0;//0.25k
    TL0=0x5f;
	//*/
   // TCON =TCON | 0x50;// start timer 1 and timer 0

	TR0 = 1;		//First before start the Timer we should shut it down. (TCON)
//	TCON = 0X40;      //open Timer1
    
    TH1=0x00;
    TL1=0x00;
	TR1  = 1;		//Start the Timer 1

 }



 void INT_TIMER0_overflow() interrupt 1///////////1ms
                                //定时器0的溢出中断处理函数,作为时间计时用  1ms
 {
 // TH0=0xfc;//1k
//  TL0=0x17;

 TH0=0xff;//4k
    TL0=0x05;
//	  TH0=0xf0;//0.25k
   // TL0=0x5f;

   TF0=0;     //must be cleared by soft
   if(P1_0)
     P1_0=0;
   else
      P1_0=1;



	    count1++;

		 count2++;
		
		 count3++;
		
		 count4++;
		
		 count5++;
		
		 count6++;

		 count7++;


		 if(count1>2)///////////1k
		 {
		   count1=0;
		   
		   if(P1_1)
		     P1_1=0;
		   else
		      P1_1=1;
		 }

		 		 if(count2>4)/////////////0.5k
		 {
		   count2=0;
		   
		   if(P1_2)
		     P1_2=0;
		   else
		      P1_2=1;
		 }
		 		 if(count3>8)///////////////////0.25k
		 {
		   count3=0;
		   
		   if(P1_3)
		     P1_3=0;
		   else
		      P1_3=1;
		 }
		 		 if(count4>16)//////////////////////0.125k
		 {
		   count4=0;
		   
		   if(P1_4)
		     P1_4=0;
		   else
		      P1_4=1;
		 }
		 		 if(count5>3)///////////////0.66k
		 {
		   count5=0;
		   
		   if(P1_5)
		     P1_5=0;
		   else
		      P1_5=1;
		 }
		 		 if(count6>5)//////////////////0.4k
		 {
		   count6=0;
		   
		   if(P1_6)
		     P1_6=0;
		   else
		      P1_6=1;
		 }
		 		 if(count7>10)//////////////////0.2k
		 {
		   count7=0;
		   
		   if(P1_7)
		     P1_7=0;
		   else
		      P1_7=1;
		 }



		 //*/

 }







main()
{

   initial_timer0_1();


   //WDT_CONTR=0x3c;
   while(1);



		
            
  }/////////////////////////////main()













 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -