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

📄 text.c

📁 这是个C8051F020单片机的串口通讯程序
💻 C
字号:
#include "c8051f020.h"
sbit led=P3^7;

bit flag=0;
 unsigned char data1;
void SYSCLK_Init();
void PORT_Init();
void UART0_Init();


void SYSCLK_Init()
{   
    unsigned int i;
    OSCXCN=0X67;         //0X67=0110,0111
	for(i=0;i<256;i++);         //等待>1ms
	while(!(OSCXCN&0X80));      //等待XTLVLD变为1
	OSCICN=0X88;         //时钟失效监测器,选择外部时钟源作为系统时钟
}

void PORT_Init()
{
    XBR0 = 0x04;
	XBR1=0X00;
	XBR2=0X40;

}

void UART0_Init()
{
    SCON0=0x50;            //串口方式1
    TMOD=0X20;             //选用定时器1作为波特率发生器
	TH1=0xF4;              //波特率为4800
	TL1=0xF4;
	ES0=1;               //开启串口中断0
	TF1=0;                //定时器1溢出关闭
	TR1=1;               //定时器启动
    PCON=0X00;
    TI0=1;

}



void UART0_ISR() interrupt 4 using 1
{
  

    if(RI0)
	{
	    RI0=0;//中断接收标志清零
       data1=SBUF0;//接收数据
	   SBUF0=data1;//发送数据
       while(TI0==0);
       TI0=0;//发送标志清零
	}

}





main()
{   
    WDTCN=0XDE;
	WDTCN=0XAD;
	SYSCLK_Init();
	PORT_Init();
	UART0_Init();
    EA=1;  //开放中断总允许
    

	while(1);

}

⌨️ 快捷键说明

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