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

📄 sci.c

📁 项目是为日本瑞萨工作所做的BAKE炉温控系统 整个文件夹包括设计文档
💻 C
字号:
/*-----------------------------------------------------*
*文件描述:本文件包含了串行通信的4子程序,分别为:        *  
*(1)SCISend1:串行发送1字节                             *
*(2)SCISendN:串行发送n字节                             *
*(3)SCIRe1:串行接收1字节                               *
*(4)SCIReN:串行接收n字节                               *
*-------------《嵌入式应用技术基础教程》--------------*/
#include "SCI.h"

void SCISend1(unsigned char o)
{//判断ReStatusR的第SendTestBit位是否为1,是1可以发送
	while(1)
	{
		if ((ReSendStatusR & (1 << SendTestBit)) != 0)
		{ 
			ReSendDataR = o;
			break;
		}
	}
}

void SCISendN(unsigned char n,unsigned char ch[])
{
	int i;
	for(i = 0; i < n; i++)          
		SCISend1(ch[i]);
}

unsigned char SCIRe1(unsigned char *p)
{ 
	unsigned int k;
	unsigned char i;
	//ReStatusR第ReTestBit位为1表示可接收数据
	for(k = 0; k< 0xfbbb; k++)
	{
		if ((ReSendStatusR & (1 << ReTestBit)) != 0)
		{
			i = ReSendDataR;
			*p = 0x00; 
			break;
		} 
	}
	if(k >= 0xfbbb) 
	{
		i = 0xff;
		*p = 0x01;
	}  	
	return i;             //返回接收到的数据
}

unsigned char SCIReN(unsigned char n, unsigned char ch[])
{
	int m;                  
	unsigned char fp;
	m = 0;
	while (m < n)
	{ 	          
		ch[m]=SCIRe1(&fp); 
		if (fp == 1) return 1;
		m ++;
	}
	return 0;	 
}

⌨️ 快捷键说明

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