亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? process.h

?? it is about embeded system
?? H
?? 第 1 頁 / 共 4 頁
字號:
    {

     matrix.matrix_point[1].x=matrix.matrix_point[0].x;
     matrix.matrix_point[1].y=matrix.matrix_point[0].y-property.pointy;
     matrix.matrix_point[2].x=matrix.matrix_point[0].x;
     matrix.matrix_point[2].y=matrix.matrix_point[1].y-property.pointy;

     matrix.matrix_point[3].x=matrix.matrix_point[0].x+property.pointx;
     matrix.matrix_point[3].y=matrix.matrix_point[0].y;
     matrix.matrix_point[4].x=matrix.matrix_point[0].x+property.pointx;
     matrix.matrix_point[4].y=matrix.matrix_point[1].y;
     matrix.matrix_point[5].x=matrix.matrix_point[0].x+property.pointx;
     matrix.matrix_point[5].y=matrix.matrix_point[2].y;

    }
 
   /*****************translate the blind character*****************/





  void  translate(char *syllable[],int count_syl)

  {
    
     int i;     int number; //選擇音節
     
   /*while(SYLLALE_LIST!=EOF)
     {
     }
   while(syl_ret!=NULL)
     {
     }*/
    if(count_syl==0)
         printf("sorry!don't find the syllable.\n");  //use language function
    
    else if(count_syl==1)
         {
         printf("find a syllable.\n");
         printf("-%s-\n",syllable[0]);
         }
    else  
         {

          printf("display all syllables on the touchscreen.\n");          
          for(i=0;i<count_syl;i++)
           {
            
            printf("%d : %s \n",i+1,syllable[i]);

           }                         printf("please choose the number of syllable.\n");        scanf("%d",&number);        //while(1)          //{          switch(number)           {             case 1:                 //syllable[0])                 break;             case 2:                 //syllable[1])                 break;             case 3:                if(count_syl>=2)                 //syllable[2])                 break;                else                   printf("ERROR!please input the number again.\n");             default:                 printf("ERROR!please input the number again.\n");                             }
         //}      }
 }
 /*--------------int to char 轉換-----------------*/  char to_char(int NO)  {        return 48+NO;  }

/***************receive the points from the touchscreen***********/

/*************** two group of points:poi1 poi2****************/

 /*when you click on the screen,the function will save the data include the 
  value of the X AND the Y,when you touch the touchscreen,the calculagragh
  will begin with the 0, when the value is 2,the program will make sure all
  the points,and start to process the data,find the right syllables. In the
  end, it will initialize all variables.*/

 
 
 

 /*----------------the function to receive the points-------------*/

 void * point_receive(void * data)
 {
  TS_RET ts_ret;
  
  int fd,n,i;  /*  static int j;  j=colorchange;  if(j)  {   ShowBitmap(0,0,MY_PICTURE_DISPLAY);
   colorchange=0;   
  }  */    ShowBitmap(0,0,MY_PICTURE_DISPLAY);
  fd = open(DEVICE_NAME_TOUCH,O_RDONLY);


  if (fd<0)
   {
     printf(" open device error!\n");
     exit(1);
   }
   /*-----------------------test-----------------------*/
   /* for(i=0;i<6;i++)
    printf("----X:%d----Y:%d----\n",poi1[i].x,poi1[i].y);
  for(i=0;i<6;i++)
    printf("----X:%d----Y:%d----\n",poi2[i].x,poi2[i].y);
 
   */
   printf("\n--blind points program begin!--\n");      
    
 /*-----------------read value of X,Y from the touchscreen-------------*/
   while(1)
   {
     if(buffer.point_rd)
     {
      
      n=read(fd,&ts_ret,1);
      
      if(ts_ret.pressure==1)
      {
        /*if(color)         {         // ShowBitmap(0,0,MY_PICTURE_DISPLAY);           color=0;         }*/
        pthread_cond_signal(&buffer.timer);        
        printf("----X:%d----Y:%d----\n",ts_ret.x,ts_ret.y);
        
        ShowBitmapWithTS(ts_ret.x,ts_ret.y,MY_PICTURE_POINT);
     
      if(poi2[0].x==0&&poi2[0].y==0) //think
       { 
        if (count==0)
         {
          poi1[p1count].x=ts_ret.x;
          poi1[p1count].y=ts_ret.y;
          p1count++;  
        }
       else
        {
          if(ts_ret.x<POINTS_TO_POINTS||ts_ret.x-poi1[count-1].x<property.pointx ) 
           {//區分聲方盲點和韻方盲點
            poi1[p1count].x=ts_ret.x;
            poi1[p1count].y=ts_ret.y;
            p1count++;
           }
          else                            //exceed the maxnum
           {
            poi2[p2count].x=ts_ret.x;
            poi2[p2count].y=ts_ret.y;
            p2count++;
           }
         } 
       }  
     else
         {
            poi2[p2count].x=ts_ret.x;
            poi2[p2count].y=ts_ret.y;
            p2count++;
         } 
        
      count++;       
    }

    

     /*-----------begin time-----------------------*/
    if(ts_ret.pressure==0)
      {  
                      
     
           buffer.times = 0;     
           pthread_cond_signal(&buffer.timer);
    
     
      }

     /*---------select the area to quit input---------*/     /*
       if(ts_ret.x>STOP_POINT_R_X&&ts_ret.y<STOP_POINT_R_Y)
       {
         count=0;
         p1count=0;                
         p2count=0;                            
         exec=0;                                             
         control = 1;
         if(quit_s=1)
           {
             pthread_cond_signal(&buffer.timer);
           }        
     
         break;
       }
      */ 
     
    }
   }  
   close(fd);

   

  return NULL;

 }

  
 /*----------------the function to process the points------------*/ void * process(void * data )  //caluculate the line and row {  pthread_t *th_b_receive=(pthread_t *)data;  int i,j;  int left ;                     //the left position   int right;                     //the right position  //int up,down;  int linenum =0;              //the number of line  int rownum =0;               //the number of row  int longnum = 0;             //the number of long slash  int shortnum = 0;            //the number of short slash  int long_minus= 0;           //the number of long minus slash  int short_minus= 0;          //the number of short minus slash  int fir_poi_line=0;          //聲母盲文的首點所在行的點的個數  int fir_poi_row=0;           //聲母盲文的首點所在列的點的個數  int sec_poi_line=0;          //韻母盲文的首點所在行的點的個數  int sec_poi_row=0;           //韻母盲文的首點所在列的點的個數  int fir_poi_exist=0;          //聲母盲文是否存在正規矩陣的首點 1表示存在  int sec_poi_exist=0;          //韻母盲文是否存在正規矩陣的首點 1表示存在             matrix_set();      /*      for(i=0;i<6;i++)      {       printf("%d matrix->X:%d matrix->Y:%d\n",i+1,                 matrix.matrix_point[i].x,matrix.matrix_point[i].y);      }      */   while(1)   {     int count_syl=0;       
     int binarynumber1[6];        //盲文     例:101000,哪位為1表示盲文所打的點有效     int binarynumber2[6];        //盲文     例:101000,哪位為1表示盲文所打的點有效
     char number1[6]="\0";        //盲文     例:123456     char number2[6]="\0";        //盲文     例:123456     char data[15]="\0";          //包含盲文里的一切信息 //    char character[20]="\0";       //漢字輸出        
	 for(i=0;i<6;i++)
	 {
          binarynumber1[i] = 0 ;          binarynumber2[i] = 0 ;
	 }   /*-----------------confirm the points by the time-------------------*/          if(exec)     {           pthread_cancel(*th_b_receive);            //pthread_cond_wait(&buffer.exe,&buffer.lock);     /*-----------------------test-----------------------*/       for(i=0;i<p1count;i++)          printf("1-----X:%d-----Y:%d-----\n",poi1[i].x,poi1[i].y);       for(i=0;i<p2count;i++)          printf("2-----X:%d-----Y:%d-----\n",poi2[i].x,poi2[i].y);    /*----------------------test---------------------------*/              printf("--process begin!--\n");       /*       poi1[0].x=827;poi1[0].y=1604;         poi1[1].x=1442;poi1[1].y=2775;      poi1[2].x=1393;poi1[2].y=1963;      // poi1[3].x=3071;poi1[3].y=2731;      // poi1[4].x=2972;poi1[4].y=2202;      // poi1[1].x=2988;poi1[1].y=1192;       */      if(p1count)
	   for(i=0;i<3;i++)

	   {
        
		 if(!activation(poi1,p1count,i,binarynumber1))
		 {                 
                  continue;
		 }

                                  else
		 {                                
                   getnumber(binarynumber1,number1);                   break;
		 }
	   }


      if(p2count)       for(i=0;i<3;i++)
	   {

                 if(!activation(poi2,p2count,i,binarynumber2))
		 {          
                  continue;
		 }

                 else
		 {
                  getnumber(binarynumber2,number2);                  break;
		 }

	   }       printf("number1--%s\n",number1);       printf("number2--%s\n",number2);         /*---------------calculate the variable :linenum,rownum,longnum,                   shortnum,long_minus,short_minus,fir_poi_line,                   fir_poi_row,sec_poi_line,sec_poi_row,                   fir_poi_exist,sec_poi_exist--------------------*/       if(p1count)        {          for(i=0;i<SYLLABLE_MAX;i++)            if(strcmp(List[i].number,number1)==0)               {                  p1count=List[i].point_num;                  linenum=List[i].line;                  rownum=List[i].row;                  longnum=List[i].longslash;                  shortnum=List[i].shortslash;                  long_minus=List[i].longslash_minus;                  short_minus=List[i].shortslash_minus;                  fir_poi_line=List[i].head_line_num;                  fir_poi_row=List[i].head_row_num;                  fir_poi_exist=List[i].head_exist;                  break;               }         if(p2count)         {         for(i=0;i<SYLLABLE_MAX;i++)          if(strcmp(List[i].number,number2)==0)               {                  p2count=List[i].point_num;                  linenum+=List[i].line;                  rownum+=List[i].row;                  longnum+=List[i].longslash;                  shortnum+=List[i].shortslash;                  long_minus+=List[i].longslash_minus;                  short_minus+=List[i].shortslash_minus;                  sec_poi_line=List[i].head_line_num;                  sec_poi_row=List[i].head_row_num;                  sec_poi_exist=List[i].head_exist;                  break;               }         }                }                   data[0]=to_char(p1count);       data[1]=to_char(p2count);          data[2]=to_char(linenum);       data[3]=to_char(rownum);         data[4]=to_char(longnum);       data[5]=to_char(shortnum);          data[6]=to_char(long_minus);       data[7]=to_char(short_minus);        data[8]=to_char(fir_poi_line);       data[9]=to_char(fir_poi_row);          data[10]=to_char(sec_poi_line);       data[11]=to_char(sec_poi_row);       data[12]=to_char(fir_poi_exist);       data[13]=to_char(sec_poi_exist);          data[14]='\0';              ShowBitmap(0,0,MY_PICTURE_DISPLAY);       printf("data--%s\n",data);                 blind_db(data, blind_character);           //printf("\ncharacter:%s\n\n",character);           // pthread_exit((void *)1);       break;  /*---------------------find the syllable--------------------------*/  /*        left = 0;                        right = SYLLABLE_MAX - 1;                               while(left <= right)      {        int middle = (left+right)/2;                if ( p1count < syl_ret[middle].first )          right = middle - 1;        else if ( p1count > syl_ret[middle].first )          left = middle + 1;        else          {           if ( p2count < syl_ret[middle].second )              right = middle - 1;           else if ( p2count > syl_ret[middle].second )               left = middle + 1;           else             {               if( linenum < syl_ret[middle].line )                  right = middle - 1;               else if ( linenum > syl_ret[middle].line )                   left = middle + 1;               else                   {                    if ( rownum < syl_ret[middle].row )                        right = middle - 1;                    else if ( rownum > syl_ret[middle].row )                         left = middle + 1;                                         else                       {                       if(longnum<syl_ret[middle].longslash )

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
中文乱码免费一区二区| jlzzjlzz欧美大全| 在线视频国内自拍亚洲视频| 国产精品午夜电影| 色婷婷综合在线| 一区二区三区中文字幕| 欧美四级电影网| 五月激情丁香一区二区三区| 欧美精品日韩精品| 丝袜诱惑亚洲看片| 国产亚洲制服色| 国产美女视频一区| 一区二区三区欧美日韩| 777午夜精品免费视频| 精东粉嫩av免费一区二区三区| 26uuu国产一区二区三区| 成人午夜精品一区二区三区| 亚洲精品国产第一综合99久久| 欧美精品粉嫩高潮一区二区| 国产精品一区二区男女羞羞无遮挡| 国产精品视频观看| 欧美人狂配大交3d怪物一区| 岛国精品在线播放| 日本欧美韩国一区三区| 亚洲欧美偷拍另类a∨色屁股| 欧美美女bb生活片| 91啪九色porn原创视频在线观看| 亚洲成人av电影在线| 国产情人综合久久777777| 欧美男生操女生| 91麻豆精东视频| 国产91色综合久久免费分享| 日本在线不卡一区| 亚洲 欧美综合在线网络| 中文字幕一区二区不卡 | 国产成人在线免费| 免费高清在线一区| 日韩av电影免费观看高清完整版在线观看| 久久久噜噜噜久久中文字幕色伊伊| 色婷婷综合久久久| 不卡一区二区在线| 成人精品鲁一区一区二区| 麻豆极品一区二区三区| 久久国产精品色婷婷| 天堂一区二区在线| 亚洲伦理在线免费看| 欧美激情资源网| 亚洲欧美自拍偷拍色图| 国产精品电影一区二区| 精品久久一区二区| 精品一区二区免费在线观看| 亚洲人成亚洲人成在线观看图片| 精品欧美久久久| 国产日本一区二区| 国产日韩高清在线| 中文在线一区二区| 精品人伦一区二区色婷婷| 欧美电影免费观看高清完整版在线| 在线不卡的av| 久久久久久久久久电影| 国产精品天天摸av网| 亚洲欧美日韩综合aⅴ视频| 亚洲女子a中天字幕| 亚洲综合久久久久| 美美哒免费高清在线观看视频一区二区| 香蕉成人啪国产精品视频综合网 | 中文字幕成人av| 一区二区在线观看视频在线观看| 亚洲精品日产精品乱码不卡| 午夜精品一区二区三区免费视频 | 成人国产精品免费| 在线精品观看国产| 日韩一区二区免费视频| 国产精品久久网站| 亚洲成人手机在线| 国产成人a级片| 欧美一区二区三区人| 国产精品欧美精品| 蜜臀精品久久久久久蜜臀| 99免费精品视频| 欧美一区二区三区免费大片 | 欧美群妇大交群中文字幕| 精品国产凹凸成av人网站| 中文字幕在线观看不卡视频| 亚洲va国产va欧美va观看| 成人sese在线| 中文成人综合网| 国产一区免费电影| 日韩精品一区二区三区中文不卡| 亚洲视频一区在线观看| 狠狠色狠狠色综合| 7777精品伊人久久久大香线蕉完整版| 国产亚洲精品资源在线26u| 免费成人美女在线观看| 欧美日韩午夜影院| 亚洲成av人片在线| 91精品国产丝袜白色高跟鞋| 性做久久久久久久久| 色香蕉久久蜜桃| 亚洲色图欧美激情| 精品1区2区3区| 午夜精品国产更新| 欧美tickling挠脚心丨vk| 国产精品一二三四| 国产精品久久国产精麻豆99网站| 成人性视频免费网站| 国产日产欧产精品推荐色| 91免费国产在线观看| 亚洲午夜视频在线| 欧美一区二区视频在线观看2020| 午夜日韩在线观看| 日韩欧美的一区二区| 成人免费黄色在线| 亚洲精品乱码久久久久久黑人 | 成人在线视频首页| 亚洲欧美激情插| 日韩一区二区三区视频在线| 麻豆91在线播放免费| 日韩一区在线播放| 精品少妇一区二区三区免费观看 | 一本色道久久综合精品竹菊| 亚洲福利电影网| 国产欧美精品在线观看| 色综合久久中文综合久久97| 秋霞午夜鲁丝一区二区老狼| 亚洲欧美怡红院| 久久欧美一区二区| 欧美美女视频在线观看| 国产成人精品免费视频网站| 日韩精品一级二级| 1024成人网色www| 久久无码av三级| 欧美精品一二三| 粉嫩aⅴ一区二区三区四区五区| 秋霞午夜鲁丝一区二区老狼| 亚洲精品国产高清久久伦理二区 | 成人18视频在线播放| 免费成人在线网站| 香蕉加勒比综合久久| 亚洲一级在线观看| 亚洲男人的天堂在线观看| 久久精品一区二区三区不卡牛牛 | 欧美日韩国产美女| 国产激情91久久精品导航| 三级欧美韩日大片在线看| 亚洲精品乱码久久久久| 中文字幕不卡的av| 国产精品乱人伦| 久久日一线二线三线suv| 久久丝袜美腿综合| 成人免费av在线| 成人网男人的天堂| 午夜精品免费在线观看| 亚洲一区二区三区四区五区黄 | 国产一区二区三区免费看 | 97久久精品人人做人人爽| 成人av高清在线| a级精品国产片在线观看| 91极品视觉盛宴| 欧美变态口味重另类| 精品国产电影一区二区| 国产精品乱码人人做人人爱| 国产精品久久久久7777按摩| 亚洲综合视频在线观看| 久久99久久久久久久久久久| 97se亚洲国产综合自在线不卡| 成人一级视频在线观看| 欧美日韩一区在线观看| 7777精品久久久大香线蕉| 国产欧美日韩另类一区| 天堂va蜜桃一区二区三区| 精品在线观看视频| 色综合天天综合网国产成人综合天| 欧美久久久一区| 国产精品久久久久久久久免费桃花| 亚洲国产视频一区| www.亚洲国产| 精品国产免费一区二区三区香蕉| 国产精品伦一区二区三级视频| 亚洲香肠在线观看| 91免费版在线| 久久―日本道色综合久久| 日韩高清不卡一区| 粉嫩高潮美女一区二区三区| 欧美丰满少妇xxxxx高潮对白| 国产精品久久久久影院色老大| 久久99精品久久久久久久久久久久| 欧美日韩一卡二卡三卡| 一级做a爱片久久| 成人丝袜18视频在线观看| 国产亚洲精品aa午夜观看| 日韩极品在线观看| 欧美色图片你懂的| 亚洲另类在线视频| fc2成人免费人成在线观看播放| 日韩一二在线观看| 日日夜夜精品视频免费| 日韩一区国产二区欧美三区| 日本在线播放一区二区三区| 91精品国产色综合久久久蜜香臀|