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

📄 depthsensor.c

📁 一个通过方向判别芯片进行角度计算的程序
💻 C
字号:

/********************************************************************************************************
**
**				                               DepthSensor
**
**                                                V1.0
**
**--------------文件信息--------------------------------------------------------------------------------
**文   件   名: DepthSensor.c
**创   建   人: 吕江波
**最后修改日期: 2007年03月03日
**描        述: 深度传感器源代码。
**
**--------------历史版本信息----------------------------------------------------------------------------
** 创建人: 吕江波
** 版  本: V1.0
** 日 期: 2007年03月03日
** 描 述: 深孔摄像系统专用
**
**------------------------------------------------------------------------------------------------------
********************************************************************************************************/

#include <AT89X051.h>
#include <intrins.h>

/********** Port define ***********/

	#define DIR 	P3_7
	#define DIN 	P3_2
	
/********** Funtion define ***********/	

void SysInit ( void ) ;

void main ( void )
{
	SysInit ( ) ;

    while ( 1 ) PCON = PCON | 0x01 ;
}

/******** System initialize *********/

void SysInit ( void )
{
/* ========== SIO define ========== */

	SCON = 0x50 ;
	ES = 0 ;

/* ========== INT define ========== */

	IT0 = 1 ; 
	EX0 = 1 ;

	IT1 = 1 ;
	EX1 = 0 ;

/* ========= TIMER define ========= */

	TMOD = 0x21 ;

	TH1 = 0xfd ; TL1 = 0xfd ;
	TR1 = 1 ;
	ET1 = 0 ;

	TH0 = 0x70 ; TL0 = 0x00 ; 
	TR0 = 1;
	ET0 = 0;

/* ======== GLOBAL define ========= */
	
	DIR = 1 ;
	DIN = 1 ;
	RXD = 1 ;
	TXD = 1 ;
	
	EA = 1 ;
	
	return ;
}	

/******** Interrupt server *********/

void DepthChange ( void ) interrupt IE0_VECTOR
{
	//ISR
	
	P1 = ~P1 ;
	
	if ( DIR == 1 ) SBUF = 0x55 ;
	else if ( DIR == 0 ) SBUF = 0xaa ;

	while ( !TI ) ;
	TI = 0 ;	

	return ;
}

void depthReset ( void ) interrupt IE1_VECTOR
{
	//ISR

	_nop_() ;
	_nop_() ;
	
	EX1 = 0 ;

	return ;
}

#pragma disable
void ErrorISR_SIO ( void ) interrupt SIO_VECTOR
{
	_nop_() ;
	_nop_() ;
	
	RI = 0 ; TI = 0 ;
	ES = 0 ;	

	return ;
}

void ErrorISR_T0 ( void ) interrupt TF0_VECTOR
{
	_nop_() ;
	_nop_() ;

	ET0 = 0 ;

	return ;
}

void ErrorISR_T1 ( void ) interrupt TF1_VECTOR
{
	_nop_() ;
	_nop_() ;

	ET1 = 0 ;

	return ;
}	

/**************************************************************************************
									End Of File
**************************************************************************************/

⌨️ 快捷键说明

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