c_main.h

来自「08山东电子电子竞赛智能小车程序基于PIC+红外+电子罗盘ourdev55126」· C头文件 代码 · 共 115 行

H
115
字号
#include "A_head.h"
//PIC初始化=====================
void init_PIC()
{
   setup_psp(PSP_DISABLED);
   setup_wdt(WDT_OFF);
}

//系统初始化====================
void init_sys()
{
init_PIC();
init_adc();
init_LCD();
init_rtclock();	
init_CarCtrl();	
enable_interrupts(GLOBAL);
}	
//获得传感状态
void GetSenser()
{
LightUpdate=0;
LightUpdateS=0;
//================================
if (HS!=input(SRed_Head))
{
	HS=input(SRed_Head);
	LightUpdate=1;
	LCD_setpos(4,0);
	LCD_disp_Putchar('0'+HS);
}
if (LS!=input(SRed_Left_T))
{
	LS=input(SRed_Left_T);
	LightUpdate=1;
	LCD_setpos(3,1);
	LCD_disp_Putchar('0'+LS);
}

if (RS!=input(SRed_Right_T))
{
	RS=input(SRed_Right_T);
	LightUpdate=1;
	LCD_setpos(5,1);
	LCD_disp_Putchar('0'+RS);
}
	
		
if (ES!=input(SNear))
{
	ES=input(SNear);
	LightUpdate=1;
	
}
//底盘巡线禁止控制
if (Butten_Detect==1)
{
	if (BL!=input(SRed_B_Left))
	{
		BL=input(SRed_B_Left);
		LightUpdate=1;
		LCD_setpos(0,3);
		LCD_disp_Putchar('0'+BL);
	}
	
	if (BR!=input(SRed_B_Right))
	{
		BR=input(SRed_B_Right);
		LightUpdate=1;
		LCD_setpos(7,3);
		LCD_disp_Putchar('0'+BR);
	}
}
//================================



if (LightUpdate10==1)
{
	//连续检测到254个相同状态判断为状态改变=消抖
	if (LightUpdate_Last==0 && LightUpdate==0)
	{
		if (LightUpdateCount<Simit)
		{
			LightUpdateCount++;
		}
		else
		{
			LightUpdateCount=0;
			LightUpdate10=0;
			LightUpdateS=1;
		}	
		
	}

}


if (LightUpdate_Last==1 && LightUpdate==0)
{
LightUpdate10=1;
LightUpdateCount=0;
}


//RS=input(SRed_Right_T);
//HS=input(SRed_Head);
//ES=input(SNear); 

//BL=input(SRed_B_Left);
//BR=input(SRed_B_Right);

LightUpdate_Last=LightUpdate;
}

⌨️ 快捷键说明

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