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

📄 uart.h

📁 STC12LE5412RC单片机上通过nRF905芯片实现数据无线收发功能的源码。
💻 H
字号:

#include "reg52stc.h"
//#include "led.h"
#define Tnum  32
unsigned char isr=0;
unsigned flag=0;

unsigned char tBuf[Tnum]; //所发送的数据存放在该数组
unsigned char rBuf[Tnum]; //所接收到的数据存储在该数组

sbit led0=P1^0;
//unsigned char FSmima=0x00;	  //发送判决标志,收到的数据若为0x55,则发送一帧数据(共32字节)

void UART_Init(void);				  //
void UART_Send(unsigned char);
//*****************************************************//
//函数名:
//输入参数:
//输出参数:
//功能描述:
//*****************************************************//
void UART_Init()
{

   RI=0;	           //串口接收中断标志必须软件清0
   TMOD |= 0x20; 	   //设置T1为波特率发生器
   //TMOD=  0x21;
   TH1 =  0xfd;   //9600baud
   TL1 =  0xfd; 
   PCON=  0x00;
   SCON=  0xd8;
   //SCON=  0x50;
   TR1 =  1;
   ES  =  1; //switch on the serial interrupt
   EA  =  1; 

}
//*****************************************************//
//函数名:
//输入参数:
//输出参数:
//功能描述:
//*****************************************************//
void UART_Send(unsigned char uwdata)
{
   //ES  =  0;
   TI  =  0;  //clear serial port sending finished interrupt require flag
   SBUF=  uwdata;
   while(TI==0); //等待发送完成
   TI  =  0;
   //ES  =  1;
}
//*****************************************************//
//函数名:
//输入参数:
//输出参数:
//功能描述:
//*****************************************************//
/*void UART_receive_Interrrupt(void) interrupt 4
{ 
 if(isr<Tnum)
	  {
		 tBuf[isr]=SBUF;
		 isr=isr+1;
	  }
 if(isr==Tnum)  //收到第32个数据
	 {							
	   isr=0;
	   flag=1;
	  }	
  RI=0;       //清串口中断标志

}*/		   	

⌨️ 快捷键说明

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