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

📄 uartsentreceive.c

📁 该程序是pic单片机程序
💻 C
字号:
#include	<pic.h>
///该程序实现单片机双机异步通信功能,该程序是发送部分///
unsigned	char	tran[8];		///定义一个数组存储发送数据///
unsigned	char	k,data;	///定义通用寄存器///


///SCI部件初始化子程序///
void		sciint()
{
	SPBRG=0X19;			///将传输的波特率设为约9 600位/秒///
	TXSTA=0X04;			///选择异步高速方式传输8位数据///
	RCSTA=0X80;			///允许同步串行口工作///
	TRISC6=1;
	TRISC7=1;				///将RC6、RC7设置为输入方式,对外部呈高阻状态///
}	

///主程序///
main()
{

	sciint();					///SCI部件初始化///
	di();					///中断禁止///
	TXEN=1;				///发送允许///
	CREN=1;				///接收数据允许///
   	for(k=0;k<8;k++){	
		TXREG=tran[k];		///发出一个字符///
   		while(1){
			if(TXIF==1) break;
	}					///等待写入完成///
while(1){
			if(RCIF==1)	break;///若收到响应字节,则终止等待///
		}
		RCREG=RCREG;	///读响应字节,清RCIF///	
     }	
//	display();				///显示发送的数据///
while(1){
	;
	}
}

/////////////////////////////////////////////////////////////////////////////////////////
#include	<pic.h>
///该程序实现单片机双机异步通信功能,该程序是接收部分,并把接收的数据显示在8
//个LED上///
unsigned	  char		rece[8];///定义一个数组存储接收数据///
unsigned	  char	   k,data;///定义通用寄存器///

///SCI部件初始化子程序///
void		sciint()
{
	SPBRG=0X19;			///波特率设置与PIC1相同,为约9 600位/秒///
	TXSTA=0X04;			///异步高速传输///
	RCSTA=0X80;			///串行口工作使能///
	TRISC6=1;
	TRISC7=1;				///将RC6、RC7设置为输入方式,对外部呈高阻状态///
}

///主程序///
main()
{
//	SPIINIT();				///spi显示初始化///
	sciint();					///SCI部件初始化///
	di();					///中断禁止///
	CREN=1;				///接收允许///
	TXEN=1;				///发送允许///
for(k=0;k<8;k++){
while(1){
			if(RCIF==1)	break;
}					///等待接收数据///
		rece[k]=RCREG;		///读取接收数据,同时清掉RCIF///
		TXREG=rece[k];		///发送接收到的数据///
while(1){
			if(TXIF==1)	break;
}					///等待写入完成///
}
//	display();				///显示接收的数据///
while(1){
		;
	}
}

⌨️ 快捷键说明

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