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

📄 obstacle.c

📁 主要供用户进行学习和简单设计
💻 C
字号:
//====================================================================================
//文 件 名: Obstacle.c
//功能描述: 避障程序
//维护记录: 2006年6月27         by hongyan.Feng
//====================================================================================
#include "SPCE061A.h"
extern void Tx_Init(void);
extern void Rx_Init(void);
extern void INT_Init(void);
extern void RN_Tx(unsigned int ms,unsigned int lel);

extern unsigned int Rcounter;
//====================================================================================
//语法格式: void Obstacle(void)
//功能描述: 避障函数,如果遇到障碍物,返回1,否则返回0
//入口参数: 无
//出口参数: 返回1,检测到障碍物;返回0,没有检测到障碍物
//维护记录: 2006年6月27         by hongyan.Feng
//====================================================================================
unsigned int Obstacle(void)
{
	unsigned int RFlag=0;
	Tx_Init();								//避障端口初始化
	Rx_Init();
	
	INT_Init();								//设置TimerA,使IOB8输出38KHz的PWM波形,供红外发射调制作;开1KHz中断
//--------------下面的数据序列可以任意发送,发送什么样的数据可自行决定-------------------//
	RN_Tx(16,0);							//发送起始位
	RN_Tx(3,1);								//发送bit0
	RN_Tx(1,0);
	RN_Tx(3,1);								//发送bit1
	RN_Tx(1,0);
	RN_Tx(1,1);								//发送bit2
	RN_Tx(1,0);
	RN_Tx(1,1);								//发送bit3
	RN_Tx(1,0);
	RN_Tx(3,1);								//发送bit4
	RN_Tx(1,0);                         
	RN_Tx(1,1);								//发送bit5
	RN_Tx(1,0);                         
	RN_Tx(1,1);								//发送bit6
	RN_Tx(1,0);                          
	RN_Tx(1,1);								//发送bit7
	RN_Tx(1,0);
//---------------------------------------------------------------------------------------//
	if(Rcounter>16)							//判断是否接收到发送数据,Rcounter在RN_Rx函数中改变
	{
		RFlag = 1;							//如果接收到数据,接收到标志置1
	}
	Rcounter = 0;							//计数器清零
	*P_Watchdog_Clear = 0x0001;
	return RFlag;							//返回接收标志 
}

⌨️ 快捷键说明

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