?? in_test.c.bak
字號:
#include "hardware_reg.h"
#include "my_string.h"
int DI[4];
void in_test(void)
{
int i = 0;
int DI_Temp = 0;
int ii = 0;
unsigned long datatemp;
/***************************?D???aè?á?×′ì?*******************************************/
static int DI_Enable_Sample[4] ; //óD??μ?????ò?
static int DI_Disable_Sample[4] ; //óDμíμ?????ò?
/// ****************************************************/
*(volatile unsigned long *)PORTF_SEL |= 0xF; //for common use
*(volatile unsigned long *)PORTF_DIR |= 0xF; //intput
/****************************************************
* 3?ê??ˉ?a3?á?
*
****************************************************/
*(volatile unsigned long *)PORTG_SEL |= 0x17; //for common use
*(volatile unsigned long *)PORTG_DIR &= ~0x17; //output
for (; ii < 40; ii++)
{
datatemp = *(volatile unsigned long *)PORTF_DATA;
for( i= 0; i <4; i++ )
{
if( (datatemp >>i)& 0x1)
{
DI_Disable_Sample[i]++;
}
else
{
DI_Enable_Sample[i] ++;
DI_Disable_Sample[i] = 0;
}
if( DI_Disable_Sample[i] > 10)
{
DI[i] = 0;
DI_Enable_Sample[i] = 0;
DI_Disable_Sample[i] = 0;
}
if( DI_Enable_Sample[i] > 10)
{
DI[i] = 1;
DI_Enable_Sample[i] = 1;
}
}
for ( DI_Temp = 0; DI_Temp < 75000*0x4; DI_Temp++ ) ;
}
for (DI_Temp = 0; DI_Temp < 4; DI_Temp++)
{
//if ( DI[DI_Temp] )
my_printf("%d input:%d\n\r", DI_Temp, DI[DI_Temp]);
DI[DI_Temp] = 0;
}
}
/*------------------end ?D???aè?á?×′ì?--------------------------------------*/
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -