//====================================================================================
int Read_Y(void) 
{ 
    int i;
    WR_CMD(CHY);
    //while(TP_BUSY);
    Delayus(10);
    i=RD_AD();
    return i;    
}
Exemplo n.º 2
0
/*******************************************************************************
* Function Name  : Read_Y
* Description    : ¶ÁÈ¡ADS7843ͨµÀY+µÄADCÖµ
* Input          : None
* Output         : None
* Return         : ADS7843·µ»ØͨµÀY+µÄADCÖµ
* Attention		 : None
*******************************************************************************/
int Read_Y(void)
{
  int i;
  TP_CS(0);
  DelayUS(1);
  WR_CMD(CHY);
  DelayUS(1);
  i=RD_AD();
  TP_CS(1);
  return i;
}
Exemplo n.º 3
0
/*******************************************************************************
* Function Name  : Read_X
* Description    : 读取ADS7843通道X+的ADC值 
* Input          : None
* Output         : None
* Return         : ADS7843返回通道X+的ADC值
* Attention		 : None
*******************************************************************************/
int Read_X(void)  
{  
  int i; 
  TP_CS_LOW(); 
  DelayUS(1); 
  WR_CMD(CHX); 
  DelayUS(1); 
  i=RD_AD(); 
  TP_CS_HIGH(); 
  return i;    
} 
Exemplo n.º 4
0
/*******************************************************************************
* Function Name  : Read_X
* Description    : 读取ADS7843通道X+的ADC值 
* Input          : None
* Output         : None
* Return         : ADS7843返回通道X+的ADC值
* Attention		 : None
*******************************************************************************/
int Read_X(void)  
{  
  int i; 
  TP_CS(0); 	//CS作用有待考虑。。。。写指令读数据时候需将CS拉低?
  DelayUS(1); 
  WR_CMD(CHX); 	 /* 通道Y+的选择控制字 */
  DelayUS(1); 
  i=RD_AD(); 
  TP_CS(1); 
  return i;    
} 
Exemplo n.º 5
0
Arquivo: XPT2046.c Projeto: alepnm/lcd
uint16_t Read_X(void)  
  {  
    uint16_t curr_X;
    
    reset_CS(); 
    Delay(1); 
    WR_CMD(CHX); 
    Delay(1); 
    curr_X=RD_AD(); 
    set_CS(); 
    return curr_X;    
  } 
Exemplo n.º 6
0
Arquivo: XPT2046.c Projeto: alepnm/lcd
uint16_t Read_Y(void)  
  {  
    uint16_t curr_Y; 
    
    reset_CS(); 
    Delay(1); 
    WR_CMD(CHY); 
    Delay(1); 
    curr_Y=RD_AD(); 
    set_CS(); 
    return curr_Y;     
  } 
Exemplo n.º 7
0
//====================================================================================
int Read_Y(void)
{ 
    int i;
   // T_CS=0;
    WR_CMD(CHY);
   // T_CLK=1;
   // T_CLK=0;
    //while(TP_BUSY);
    //DelayUs(10);//changed from 5
    i=RD_AD();
   // T_CS=1;
    return i;    
}
Exemplo n.º 8
0
/*******************************************************************************
 * Function Name  : Read_X
 * Description    : Read ADS7843 ADC value of X + channel
 * Input          : None
 * Output         : None
 * Return         : return X + channel ADC value
 * Attention		 : None
 *******************************************************************************/
static int Read_X(void)
{

	TP_CS(0);
	DelayUS(1);

	WR_CMD(CHX);
	DelayUS(1);

	int i = RD_AD();

	TP_CS(1);
	return i;
}
Exemplo n.º 9
0
u16 Read_XY(u8 xy) 
{ 
 u16 i, j;
 u16 buf[ReadLoop];
 uint32 sum;
 u16 val;
    
    for(i=0; i<ReadLoop; i++)
    {
       WR_CMD(xy);
       //while(TP_BUSY);
       Delayus(5);
       buf[i]=RD_AD();
       
       //sum += buf[i];
    }
    
    //排序
    for(i=0; i<ReadLoop-1; i++)
    {
       for(j=i+1; j<ReadLoop; j++)
       {
          if(buf[i]>buf[j])
          {
             val=buf[i];
             buf[i]=buf[j];
             buf[j]=val;
          }
       }
    }
    
    sum=0;
    for(i=LOSS_DATA; i<ReadLoop-1-LOSS_DATA; i++)
       sum += buf[i];
    val=sum/(ReadLoop-2*LOSS_DATA);
    
    return (val);    
}