OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 3891|回复: 7

电阻屏是不是容易坏?

[复制链接]

10

主题

68

帖子

0

精华

高级会员

Rank: 4

积分
500
金钱
500
注册时间
2014-9-1
在线时间
77 小时
发表于 2016-3-16 22:28:31 | 显示全部楼层 |阅读模式
5金钱
之前手上有一块电阻屏,触摸一直没调好,SPI读过来的数据不规律,同一个点附近读过来的(x, y)经常会不一样,移动触笔数据变化感觉也不对,怀疑是坏了。
最近新买了一块,还是出现类似问题,就想问一下是电阻屏坏的可能性大还是程序不对!
上程序,试过两点校正,三点校正。用原子的TP_Adjust(void)直接都不合格!
请大神们帮忙开一下!
[mw_shl_code=c,true]void Touch_Configuration(void)
{
  GPIO_InitTypeDef  GPIO_InitStructure;

  RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA | RCC_APB2Periph_GPIOC ,ENABLE);

  GPIO_InitStructure.GPIO_Pin = GPIO_Pin_5|GPIO_Pin_7;
  GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
  GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_PP;   //¸′óÃíÆíìêä3ö
  GPIO_Init(GPIOA,&GPIO_InitStructure);
       
        GPIO_InitStructure.GPIO_Pin = GPIO_Pin_6;  
  GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IPU;   
        GPIO_Init(GPIOA, &GPIO_InitStructure);
  GPIO_SetBits(GPIOA,GPIO_Pin_6);//éÏà-êäèë       

        //′¥ÃtÆáCSDÅoÅ£¬íÆíìêä3ö£¬μíμçÆ½óDD§£¡
  GPIO_InitStructure.GPIO_Pin = GPIO_Pin_6;
  GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
  GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;   
  GPIO_Init(GPIOC,&GPIO_InitStructure);

        //ÅäÖÃ′¥ÃtÆá±êÖD¶ÏÅäÖÃòy½&#197C4
        GPIO_InitStructure.GPIO_Pin = GPIO_Pin_4;
  GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
  GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IPU;  
  GPIO_Init(GPIOC,&GPIO_InitStructure);
}

// Ñóê±
void SpiDelay(unsigned int DelayCnt)
{
unsigned int i;
for(i=0;i<DelayCnt;i++);
}

void TOUCH_RESET(void)
{
         TCLK=0;
         TCS=1;
         TDIN=0;
         TCLK=0;
         DOUT=0;
         TCS=0;
}


void ADS7843_SPI_Start( void )
{
TCLK=0;
TCS=1;
TDIN=1;
TCLK=1;
TCS=0;
}

void ADS7843_Write (unsigned char cmd )
{
        u8 count=0;   
        for(count=0;count<8;count++)  
        {           
                if(cmd&0x80)TDIN=1;  
                else TDIN=0;   
                cmd<<=1;   
                TCLK=0;
                SpiDelay(1);
                TCLK=1;                //é&#207;éy&#209;&#216;óDD§                
        }
}


unsigned int ADS7843_Read (unsigned char CMD )
{
                u8 count=0;           
        u16 Num=0;
        TCLK=0;                //&#207;èà-μíê±&#214;ó          
        TDIN=0;         //à-μíêy&#190;Y&#207;&#223;
        TCS=0;                 //&#209;&#161;&#214;D′¥&#195;t&#198;áIC
        ADS7843_Write(CMD);//·¢&#203;í&#195;üá&#238;×&#214;
        SpiDelay(6);//ADS7846μ&#196;×a&#187;&#187;ê±&#188;&#228;×&#238;3¤&#206;a6us
        TCLK=0;                          
        SpiDelay(1);              
        TCLK=1;                //&#184;&#248;1&#184;&#246;ê±&#214;ó£&#172;&#199;&#229;3yBUSY
        SpiDelay(1);   
        TCLK=0;                          
        for(count=0;count<16;count++)//&#182;á3&#246;16&#206;&#187;êy&#190;Y,&#214;&#187;óD&#184;&#223;12&#206;&#187;óDD§
        {                                   
                Num<<=1;          
                TCLK=0;        //&#207;&#194;&#189;μ&#209;&#216;óDD§                        
                SpiDelay(1);   
                TCLK=1;
                if(DOUT)Num++;                  
        }         
        Num>>=4;           //&#214;&#187;óD&#184;&#223;12&#206;&#187;óDD§.
        TCS=1;                //êí·&#197;&#198;&#172;&#209;&#161;         
        return(Num);   
}

/*******************************************************************************
* Function Name  : SPI_ReadWriteByte
* Description    : SPI&#182;áD′ò&#187;&#184;&#246;×&#214;&#189;ú£¨·¢&#203;ííê3éoó·μ&#187;&#216;±&#190;′&#206;í¨&#209;&#182;&#182;áè&#161;μ&#196;êy&#190;Y£&#169;
* Input          : u8 TxData ′y·¢&#203;íμ&#196;êy
* Output         : None
* Return         : u8 RxData ê&#213;μ&#189;μ&#196;êy
*******************************************************************************/
u8 SPI1_ReadWriteByte(u8 TxData)
{
  /* Loop while DR register in not emplty */
  while (SPI_I2S_GetFlagStatus(SPI1, SPI_I2S_FLAG_TXE) == RESET);

  /* Send byte through the SPI1 peripheral */
  SPI_I2S_SendData(SPI1, TxData);

  /* Wait to receive a byte */
  while (SPI_I2S_GetFlagStatus(SPI1, SPI_I2S_FLAG_RXNE) == RESET);

  /* Return the byte read from the SPI bus */
  return SPI_I2S_ReceiveData(SPI1);
}



/******************************************************

                 &#182;á′¥&#195;t&#198;á X

******************************************************/
u16 TPReadX(void) //16&#206;&#187;êy&#190;Y′|àí
{
   u16 x=0;
   TCS=0;
   SpiDelay(10);//&#206;¢&#195;&#235;us,ê&#214;2áé&#207;òa&#199;ó200ns
   x=ADS7843_Read(0xD0);
   x<<=8;
   x+=ADS7843_Read(0xD0);
   SpiDelay(10);
   TCS=1; //êy&#190;Y&#182;áè&#161;íê±&#207;
         SpiDelay(10);
   x = x>>3;
   x&=0xfff;
   return (x);
}


/******************************************************

                 &#182;á′¥&#195;t&#198;á Y

******************************************************/
u16 TPReadY(void)
{
        u16 y=0;
  TCS=0;
  SpiDelay(10);
  y=SPI1_ReadWriteByte(0x90);
  y<<=8;
  y+=SPI1_ReadWriteByte(0x90);
  SpiDelay(10);
  TCS=1;
        SpiDelay(10);
  y = y>>3;
        y&= 0xfff;
  return (y);
}

void touch_calibrate_two(void)//á&#189;μ&#227;D£×&#188;oˉêy
{       
                TouchValue *TpCali;
                ili9320_Clear(0x0000);
                touch_calibrate_point=1;
                touch_calibrate_enable=1;

           while (touch_calibrate_enable)
    {
                        while(touch_calibrate_point==1)
                         {
                                 /*&#187;-×óé&#207;&#189;&#199;μúò&#187;&#184;&#246;μ&#227;*/
                                        ili9320_SetPoint(10,10,0xf800);//&#187;-μúò&#187;&#184;&#246;μ&#227;
                                        PutString(60,140,"lease Adjust!",0xffff,0x0000);
                                 if(PEN==0)
                                                {
                                                        touch_calibrate_point=2;
                                                        Delay(120);
                                                        TpCali=GetXY();
                                                        x1=TpCali->x;
                                                        y1=TpCali->y;
                                                }
                                }
                        Delay(1000);
                        while(touch_calibrate_point==2)
                                {
                                         /*×ó&#207;&#194;&#189;&#197;&#187;-μú&#182;t&#184;&#246;μ&#227;*/
                                         ili9320_SetPoint(470,310,0xf800);//&#187;-μú&#182;t&#184;&#246;μ&#227;
                                        if(PEN==0)
                                                {
                                                         touch_calibrate_point=3;
                                                         Delay(120);
                                                         TpCali=GetXY();
                                                   x2=TpCali->x;
                                                    y2=TpCali->y;
                                                }
                                }
                        Delay(1000);
                        while(touch_calibrate_point==3)
                                {
                                        touch_calibrate_point=1;
                                        touch_calibrate_enable=0;
                                       
                                        fTouchKx=(float)(460)/(x2-x1);
                                        fTouchbx=(10+470)/2-fTouchKx*(x1+x2)/2;
                                        fTouchKy=(float)(300)/(y2-y1);
                                        fTouchby=(10+310)/2-fTouchKy*(y1+y2)/2;                //&#188;&#198;&#203;&#227;&#206;&#239;àí×&#248;±êμ&#189;&#207;&#241;&#203;&#216;×&#248;±ê±&#228;&#187;&#187;μ&#196;&#207;μêy
                                        ili9320_Clear(0x0000);
                                        PutString(60,140,"Adjust OK!",0xffff,0x0000);//D£×&#188;íê3é
                                        Delay(1000);
                                }
                }
}

void touch_calibrate_three(void)//èyμ&#227;D£×&#188;oˉêy
{
                TouchValue *TpCali;
                ili9320_Clear(0x0000);
                touch_calibrate_point=1;
                touch_calibrate_enable=1;

           while (touch_calibrate_enable)
    {
                        while(touch_calibrate_point==1)
                         {
                                 /*&#187;-×óé&#207;&#189;&#199;μúò&#187;&#184;&#246;μ&#227;*/
                                        ili9320_SetPoint(10,10,0xf800);//&#187;-μúò&#187;&#184;&#246;μ&#227;
                                        PutString(60,140,"lease Adjust!",0xffff,0x0000);
                                 if(PEN==0)
                                                {
                                                        touch_calibrate_point=2;
                                                        Delay(120);
                                                        TpCali=GetXY();
                                                        x1=TpCali->x;
                                                        y1=TpCali->y;
                                                }
                                }
                        Delay(1000);
                        while(touch_calibrate_point==2)
                                {
                                         /*×ó&#207;&#194;&#189;&#197;&#187;-μú&#182;t&#184;&#246;μ&#227;*/
                                         ili9320_SetPoint(470,310,0xf800);//&#187;-μú&#182;t&#184;&#246;μ&#227;
                                        if(PEN==0)
                                                {
                                                         touch_calibrate_point=3;
                                                         Delay(120);
                                                         TpCali=GetXY();
                                                   x2=TpCali->x;
                                                    y2=TpCali->y;
                                                }
                                }
                        Delay(1000);
                        while(touch_calibrate_point==3)
                        {
                                ili9320_SetPoint(10,310,0xf800);//&#187;-μúèy&#184;&#246;μ&#227;
                                if(PEN==0)
                                {
                                        touch_calibrate_point=4;
                                        Delay(120);
                                  TpCali=GetXY();
                                  x3=TpCali->x;
                                  y3=TpCali->y;
                                }
                        }
                        Delay(1000);
                        while(touch_calibrate_point==4)
                                {
                                        touch_calibrate_point=1;
                                        touch_calibrate_enable=0;
                                       
                                        A=(float)((XL1-XL3)*(y2-y3)-(XL2-XL1)*(y1-y3))/((x1-x3)*(y2-y3)-(x2-x3)*(y1-y3));
                                        B=(float)((x1-x3)*(XL2-XL3)-(XL1-XL3)*(x2-x3))/((x1-x3)*(y2-y3)-(x2-x3)*(y1-y3));
                                        C=(float)(y1*(x3*XL2-x2*XL3)+y2*(x1*XL3-x3*XL1)+y3*(x2*XL1-x1*XL2))/((x1-x3)*(y2-y3)-(x2-x3)*(y1-y3));
                                        D=(float)((YL1-YL3)*(y2-y3)-(YL2-YL3)*(y1-y3))/((x1-x3)*(y2-y3)-(x2-x3)*(y1-y3));
                                        E=(float)((x1-x3)*(YL2-YL3)-(YL1-YL3)*(x2-x3))/((x1-x3)*(y2-y3)-(x2-x3)*(y1-y3));
                                        F=(float)(y1*(x3*YL2-x2*YL3)+y2*(x1*YL3-x3*YL1)+y3*(x2*YL1-x1*YL2))/((x1-x3)*(y2-y3)-(x2-x3)*(y1-y3));
                                       
                                        ili9320_Clear(0x0000);
                                        PutString(200,200,"Adjust OK!",0xffff,0x0000);//D£×&#188;íê3é
                                        Delay(1000);
                                }
                }       
}

TouchValue *GetXY(void)//&#182;áè&#161;XY×&#248;±ê2¢×÷&#194;&#203;2¨′|àí
{
                int m0,m1,m2,temp[3];
                uint8_t count=0;
                static TouchValue tp;
                int buffer[2][9]={{0},{0}};  /* ×&#248;±êXoíY&#189;&#248;DD&#182;à′&#206;2é&#209;ù */
                int THRESHOLD=10;             /*2&#238;&#214;μ&#195;&#197;&#207;T&#214;μ,ì&#171;D&#161;μ&#196;&#187;°&#203;&#228;è&#187;&#190;&#171;è·£&#172;μ&#171;ê&#199;&#196;&#209;D£&#209;é3é1|*/
               
                do                                               /* &#209;-&#187;·2é&#209;ù9′&#206; */
                {                  
                        buffer[0][count]=TPReadX();
                        buffer[1][count]=TPReadY();
                        count++;  
                }
                while((1-GPIO_ReadInputDataBit(GPIOC,GPIO_Pin_4))&& count<9);  /* μ±ó&#195;&#187;§μ&#227;&#187;÷′¥&#195;t&#198;áê±TP_INT_IN&#187;á±&#187;&#214;&#195;μí */
               
                if(count==9)   /* 3é1|2é&#209;ù9′&#206;,&#189;&#248;DD&#194;&#203;2¨ */
                {  
                        /* &#206;a&#188;&#245;éù&#212;&#203;&#203;&#227;á&#191;,·&#214;±e·&#214;3×éè&#161;&#198;&#189;&#190;ù&#214;μ ,&#206;&#239;àí×&#248;±êxμ&#196;′|àí*/
                temp[0]=(buffer[0][0]+buffer[0][1]+buffer[0][2])/3;
                temp[1]=(buffer[0][3]+buffer[0][4]+buffer[0][5])/3;
                temp[2]=(buffer[0][6]+buffer[0][7]+buffer[0][8])/3;
                /* &#188;&#198;&#203;&#227;3×éêy&#190;Yμ&#196;2&#238;&#214;μ */
                m0=temp[0]-temp[1];
                m1=temp[1]-temp[2];
                m2=temp[2]-temp[0];
                /* &#182;&#212;é&#207;ê&#246;2&#238;&#214;μè&#161;&#190;&#248;&#182;&#212;&#214;μ */
                m0=m0>0?m0-m0);
                m1=m1>0?m1-m1);
                m2=m2>0?m2-m2);
                /* &#197;D&#182;&#207;&#190;&#248;&#182;&#212;2&#238;&#214;μê&#199;·&#241;&#182;&#188;3&#172;1y2&#238;&#214;μ&#195;&#197;&#207;T£&#172;è&#231;1&#251;&#213;a3&#184;&#246;&#190;&#248;&#182;&#212;2&#238;&#214;μ&#182;&#188;3&#172;1y&#195;&#197;&#207;T&#214;μ£&#172;&#212;ò&#197;D&#182;¨&#213;a′&#206;2é&#209;ùμ&#227;&#206;aò°μ&#227;,&#197;×&#198;ú2é&#209;ùμ&#227;£&#172;2&#238;&#214;μ&#195;&#197;&#207;Tè&#161;&#206;a2 */
                if( m0>THRESHOLD  &&  m1>THRESHOLD  &&  m2>THRESHOLD ) return 0;
                /* &#188;&#198;&#203;&#227;&#203;ü&#195;&#199;μ&#196;&#198;&#189;&#190;ù&#214;μ£&#172;í&#172;ê±&#184;3&#214;μ&#184;&#248;screen */
                if(m0<m1)
                {
                        if(m2<m0)
                                tp.x=(temp[0]+temp[2])/2;
                        else
                                tp.x=(temp[0]+temp[1])/2;       
                }
                else if(m2<m1)
                        tp.x=(temp[0]+temp[2])/2;
                else
                        tp.x=(temp[1]+temp[2])/2;

                /* í&#172;é&#207; &#188;&#198;&#203;&#227;Yμ&#196;&#198;&#189;&#190;ù&#214;μ */
                temp[0]=(buffer[1][0]+buffer[1][1]+buffer[1][2])/3;
                temp[1]=(buffer[1][3]+buffer[1][4]+buffer[1][5])/3;
                temp[2]=(buffer[1][6]+buffer[1][7]+buffer[1][8])/3;
                m0=temp[0]-temp[1];
                m1=temp[1]-temp[2];
                m2=temp[2]-temp[0];
                m0=m0>0?m0-m0);
                m1=m1>0?m1-m1);
                m2=m2>0?m2-m2);
                if(m0>THRESHOLD&&m1>THRESHOLD&&m2>THRESHOLD)  return 0;
                if(m0<m1)
                {
                        if(m2<m0)
                                tp.y=(temp[0]+temp[2])/2;
                        else
                                tp.y=(temp[0]+temp[1])/2;       
                }
                else if(m2<m1)
                         tp.y=(temp[0]+temp[2])/2;
                else
                         tp.y=(temp[1]+temp[2])/2;
                return &tp; //·μ&#187;&#216;&#190;&#171;è·μ&#196;XY&#206;&#239;àí×&#248;±ê£&#161;
                }  
                return 0;
}



void Touch_Adjust(void)
{        
         u16 pos_temp[4][2];//×&#248;±ê&#187;o′&#230;

         u8  cnt=0;
         u16 d1,d2;
         u32 tem1,tem2;
         float fac;   
         cnt=0;
         ili9320_Clear(0x0000);
               
         ili9320_SetPoint(20,20,0xffff);//&#187;-μúò&#187;&#184;&#246;μ&#227;
         ili9320_Delay(1000);

         while(1)
         {
                if(GPIO_ReadInputDataBit(GPIOC,GPIO_Pin_4)==0)//&#191;éò&#212;&#197;D&#182;&#207;&#182;áè&#161;±ê&#214;D&#182;&#207;òy&#189;&#197C4&#189;&#197;
                {                         
                        pos_temp[cnt][0]=TPReadX();
                        pos_temp[cnt][1]=TPReadY();
                        cnt++;
                        ili9320_Delay(100);  
                 switch(cnt)
                 {     
                        case 1:
                         ili9320_Clear(0x0000);
                         ili9320_Delay(1000);
                         ili9320_SetPoint(460,20,0xffff);//&#187;-μú&#182;t&#184;&#246;μ&#227;
                         break;
                        case 2:
                         ili9320_Clear(0x0000);
                         ili9320_Delay(1000);
                         ili9320_SetPoint(20,300,0xffff);//&#187;-μúèy&#184;&#246;μ&#227;
                         break;
                        case 3:
                         ili9320_Clear(0x0000);
                         ili9320_Delay(1000);
                         ili9320_SetPoint(460,300,0xffff);//&#187;-μú&#203;&#196;&#184;&#246;μ&#227;
                         break;
                        case 4:  //&#203;&#196;&#184;&#246;μ&#227;ò&#209;&#190;-è&#171;2&#191;μ&#195;μ&#189;
                         tem1=abs(pos_temp[0][0]-pos_temp[1][0]);//x1-x2
                         tem2=abs(pos_temp[0][1]-pos_temp[1][1]);//y1-y2
                         tem1*=tem1;
                         tem2*=tem2;
                         d1=sqrt(tem1+tem2);//μ&#195;μ&#189;1,2μ&#196;&#190;àà&#235;
                         
                         tem1=abs(pos_temp[2][0]-pos_temp[3][0]);//x3-x4
                         tem2=abs(pos_temp[2][1]-pos_temp[3][1]);//y3-y4
                         tem1*=tem1;
                         tem2*=tem2;
                         d2=sqrt(tem1+tem2);//μ&#195;μ&#189;3,4μ&#196;&#190;àà&#235;
                         fac=(float)d1/d2;
//                         if(fac<0.6||fac>1.4||d1==0||d2==0)//2&#187;o&#207;&#184;&#241;&#199;é&#191;&#246;£&#161;
//                         {
//                                cnt=0;
//                                ili9320_Clear(0x0000);
//                                ili9320_SetPoint(20,20,0xffff);//&#187;-μúò&#187;&#184;&#246;μ&#227;
//                                continue;
//                         }
//                         tem1=abs(pos_temp[0][0]-pos_temp[2][0]);//x1-x3
//                         tem2=abs(pos_temp[0][1]-pos_temp[2][1]);//y1-y3
//                         tem1*=tem1;
//                         tem2*=tem2;
//                         d1=sqrt(tem1+tem2);//μ&#195;μ&#189;1,3μ&#196;&#190;àà&#235;
//                         
//                         tem1=abs(pos_temp[1][0]-pos_temp[3][0]);//x2-x4
//                         tem2=abs(pos_temp[1][1]-pos_temp[3][1]);//y2-y4
//                         tem1*=tem1;
//                         tem2*=tem2;
//                         d2=sqrt(tem1+tem2);//μ&#195;μ&#189;2,4μ&#196;&#190;àà&#235;
//                         fac=(float)d1/d2;
//                         if(fac<0.6||fac>1.4)//2&#187;o&#207;&#184;&#241;
//                         {
//                                cnt=0;
//                                ili9320_Clear(0x0000);
//                                ili9320_SetPoint(20,20,0xffff);//&#187;-μúò&#187;&#184;&#246;μ&#227;
//                                continue;
//                         }//&#213;yè·£&#161;
//                                               
//                         //&#182;&#212;&#189;&#199;&#207;&#223;&#207;àμè
//                         tem1=abs(pos_temp[1][0]-pos_temp[2][0]);//x1-x3
//                         tem2=abs(pos_temp[1][1]-pos_temp[2][1]);//y1-y3
//                         tem1*=tem1;
//                         tem2*=tem2;
//                         d1=sqrt(tem1+tem2);//μ&#195;μ&#189;1,4&#190;àà&#235;
//         
//                         tem1=abs(pos_temp[0][0]-pos_temp[3][0]);//x2-x4
//                         tem2=abs(pos_temp[0][1]-pos_temp[3][1]);//y2-y4
//                         tem1*=tem1;
//                         tem2*=tem2;
//                         d2=sqrt(tem1+tem2);//μ&#195;μ&#189;2,3&#190;àà&#235;
//                         fac=(float)d1/d2;
//                         if(fac<0.6||fac>1.4)//2&#187;o&#207;&#184;&#241;
//                         {
//                                cnt=0;
//                                ili9320_Clear(0x0000);
//                                ili9320_SetPoint(20,20,0xffff);//&#187;-μúò&#187;&#184;&#246;μ&#227;
//                                continue;
//                         }//&#213;yè·
//                         //&#188;&#198;&#203;&#227;&#189;á1&#251;£&#161;
                                xfac=(float)(240-40)/(pos_temp[1][0]-pos_temp[0][0]);//μ&#195;μ&#189;xfac                 
                                xoff=(240-xfac*(pos_temp[1][0]+pos_temp[0][0]))/2;//μ&#195;μ&#189;xoff
                                               
                                yfac=(float)(320-40)/(pos_temp[2][1]-pos_temp[0][1]);//μ&#195;μ&#189;yfac
                                yoff=(320-yfac*(pos_temp[2][1]+pos_temp[0][1]))/2;//μ&#195;μ&#189;yoff  
                         
                         ili9320_Clear(0x0000);
                         PutString(120,120,"Touch Screen Adjust OK!",0x0000,0xffff);//D£×&#188;íê3é
                         ili9320_Delay(1000);
                         ili9320_Clear(0x9876);
                         return;//D£×&#188;3é1|£&#161;   
         }
  }
}

}
[/mw_shl_code]

最佳答案

查看完整内容[请看2#楼]

是电阻触摸屏的问题。换个好的触摸屏就好了。 我之前用的是个7寸的,自带的那个触摸屏实在是不怎么样,后来换个好的电阻触摸屏以后,可以和电容屏媲美了。
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

30

主题

705

帖子

1

精华

新手上路

积分
21
金钱
21
注册时间
2013-3-14
在线时间
52 小时
发表于 2016-3-16 22:28:32 | 显示全部楼层
是电阻触摸屏的问题。换个好的触摸屏就好了。
我之前用的是个7寸的,自带的那个触摸屏实在是不怎么样,后来换个好的电阻触摸屏以后,可以和电容屏媲美了。
原子哥是不是又要出黑科技了呀。^_^...
回复

使用道具 举报

10

主题

68

帖子

0

精华

高级会员

Rank: 4

积分
500
金钱
500
注册时间
2014-9-1
在线时间
77 小时
 楼主| 发表于 2016-3-17 21:18:28 | 显示全部楼层
走过路过帮忙看看,有事没事随便说说
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2016-3-17 22:30:54 | 显示全部楼层
是我们的么?
回复

使用道具 举报

3

主题

71

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
472
金钱
472
注册时间
2015-3-1
在线时间
123 小时
发表于 2016-3-17 22:35:44 | 显示全部楼层
跟时序有点关系,我同在原子的板,自己写的偶尔读书会偏大,后来直接复制开发板的驱动就好了- -####
- -个性的签名
回复

使用道具 举报

10

主题

68

帖子

0

精华

高级会员

Rank: 4

积分
500
金钱
500
注册时间
2014-9-1
在线时间
77 小时
 楼主| 发表于 2016-3-21 10:18:01 | 显示全部楼层
cheng8152 发表于 2016-3-17 21:18
走过路过帮忙看看,有事没事随便说说

不是的呢!
回复

使用道具 举报

10

主题

68

帖子

0

精华

高级会员

Rank: 4

积分
500
金钱
500
注册时间
2014-9-1
在线时间
77 小时
 楼主| 发表于 2016-3-21 11:03:20 | 显示全部楼层
fanghuiopenedv 发表于 2016-3-21 10:59
是电阻触摸屏的问题。换个好的触摸屏就好了。
我之前用的是个7寸的,自带的那个触摸屏实在是不怎么样,后 ...

嗯 多谢指点!真是硬件问题也就跪了,以后买东西还是得买靠得住的,不能图便宜
回复

使用道具 举报

10

主题

68

帖子

0

精华

高级会员

Rank: 4

积分
500
金钱
500
注册时间
2014-9-1
在线时间
77 小时
 楼主| 发表于 2016-3-21 11:03:46 | 显示全部楼层
fanghuiopenedv 发表于 2016-3-21 10:59
是电阻触摸屏的问题。换个好的触摸屏就好了。
我之前用的是个7寸的,自带的那个触摸屏实在是不怎么样,后 ...

嗯 多谢指点!真是硬件问题也就跪了,以后买东西还是得买靠得住的,不能图便宜
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-6-19 17:16

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表