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

📄 fangbo400.txt

📁 使用的是新华龙单片机 100脚 的 在一个口输出任意频率的方波
💻 TXT
字号:
#include<c8051f020.h>

#define uchar unsigned char
#define uint unsigned int
#define SYSCLK 22118400 
#define         f      100
#define			AUX1   (22118400/288)/f 
#define			AUX2   -AUX1                    
#define			AUX3   AUX2&0x00FF
#define			AUX4   ((AUX2&0xFF00)>>8)
sbit shuc= P1^6;
sbit shuc1=P1^7;
sbit rs=P2^5;
sbit en=P2^7;

uchar temp,num,keynum,n,n1,n2,n3;

void delay(uchar z)
{
  uchar i,j;
  for(i=z;i>0;i--)
   for(j=110;j>0;j--);
}

void SYSCLK_init()
{
	OSCXCN=0x67;
	delay(5);
	OSCICN=0x04;
	CKCON=0X00;
}

void Port_Init ()
{
                                           
   XBR2 = 0x40;
   P1MDOUT = 0x40;                   
}

void write_com(uchar com)
{
	rs=0;
	P7=com;
	en=1;
    delay(3);  
	en=0;
}

void write_data(uchar date)
{  

	rs=1;
	P7=date;
	en=1;
	delay(4);
	en=0;
}
void write_anjian(uchar x,uchar y)
{
  uchar g,s;
  s=y/10; 
  g=y%10;
  write_com(0x80+x);
  write_data(0x30+s);
  write_data(0x30+g);

}


                                //主函数
void main()
{

	WDTCN = 0xDE;                       
    WDTCN = 0xAD;
    SYSCLK_init();
    Port_Init ();

    shuc=1;
	shuc1=0;
	                      //初始化计时器
    TMOD=0x11;
    TL0=AUX3;
    TH0=AUX4;
	TL1=AUX3;
	TH1=AUX4;
                     	//打开计时器
	TR0=1;
	TR1=1;
                         	//开中断
	ET0=1; 
	ET1=1;
    EA=1;
	while(1);
}
void timer0() interrupt 1 using 0
{	
    TL0=AUX3;
    TH0=AUX4;
    shuc= ~shuc;

}

void timer1() interrupt 3 
{

	TL1=AUX3;
	TH1=AUX4;
    shuc1= ~shuc1;

}

⌨️ 快捷键说明

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