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

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

?? t9py.h

?? msp430的中文輸入程序
?? H
?? 第 1 頁 / 共 2 頁
字號:
/******************************************************************************
//   按鍵是根據(jù)通用手機鍵盤設置的,全部在PC的小鍵盤操作):                    //
//   NumLock   /:上一拼音? *:下一拼音                                        //
//   7:pqrs    8:tuv       9:wxyz   -:前翻頁                                 //
//   4:ghi     5:jkl       6:mno    +:后翻頁                                 //
//   1:?       2:abc       3:def    回車鍵:輸入狀態(tài)和選字狀態(tài)切換            //
//   0:?                   '.'和空格及回車鍵:輸入狀態(tài)和選字狀態(tài)切換          //
//   串口依次輸入: 9466*.1    486*.3   64*.6    426***.5 試試:-)             //
//   程序在IAR中用軟件模擬調(diào)試可以執(zhí)行                                       //
******************************************************************************/

#ifndef __T9PY_H__
#define __T9PY_H__

#include <msp430x14x.h>
#include <string.h>
#include <stdio.h>
#include "t9py_indexa.h"
#include "ocmj12232c-1(并口).h"

extern char x1,y1,x2,y2;//定位lcd顯示位置 

void clr_cpt9PY_Mb(void);
unsigned char T9PY_Get_Match_PY_MB(char *p_PadInput,const struct t9PY_index ** List_match_PY_Mb);
void t9PY_Test(void);
void lcd_test(unsigned char * input_string);

#define CNTLQ      0x11
#define CNTLS      0x13
#define DEL        0x7F
#define BACKSPACE  0x08
#define CR         0x0D
#define LF         0x0A

#define T9PYPTRMAX 16
unsigned char cpt9PY_Mblen;//保存調(diào)用函數(shù) T9PY_Get_Match_PY_MB()的返回值,獲取到完全匹配拼音數(shù)量
const struct t9PY_index * cpt9PY_Mb[T9PYPTRMAX];//主要用于存放匹配的拼音碼表地址,
//只有cpt9PY_Mb[0]存放的是一個不匹配的拼音碼表地址.
//匹配并不是指相比較的字符長短一樣,不是完全匹配.例如:34跟346是匹配的,
//34跟34是完全匹配(在這里我們不需要使用完全匹配)

//====================================================================================
//語法格式:unsigned char T9PY_Get_Match_PY_MB(char *p_PadInput,\
//                                           struct t9PY_index code  ** List_match_PY_Mb)
//實現(xiàn)功能:獲取與輸入相匹配的T9拼音列表
//參數(shù):    p_PadInput:	       輸入的按鍵序列,由'0'~'9'組成的字符串
//	    List_match_PY_Mb:      存儲"獲取到的拼音索引地址"的數(shù)組
//返回值:  獲取到完全匹配拼音數(shù)量
//移植注意:List_match_PY_Mb 所指向的存儲結(jié)構(gòu),即用于存放匹配的拼音碼表地址的存儲結(jié)構(gòu).
//              第一個元素存放的是一個不匹配的拼音碼表地址.其他為匹配的拼音碼表地址
//=====================================================================================

unsigned char T9PY_Get_Match_PY_MB(char *p_PadInput,const struct t9PY_index ** List_match_PY_Mb)
{
    const struct t9PY_index *p_PY_CurrentIndex;
    const struct t9PY_index *p_PY_LastIndex;
    struct t9PY_index PY_TempIndex;
    unsigned char T9PY_Match_NUM=0;      //完全匹配拼音數(shù)量
    char temp_t9PY_T9[8],*str;//保存輸入的數(shù)字 字符串
    int kk;
    if(*p_PadInput == '\0')
      return(0);         //如果輸入空字符返回0//
    clr_cpt9PY_Mb();
    p_PY_CurrentIndex = (&t9PY_index2[1]); //首索引地址賦值,p_PY_CurrenIndex為當前拼音索引地址
    kk = sizeof(t9PY_index2)/sizeof(struct t9PY_index);
    p_PY_LastIndex = t9PY_index2 + kk;
    //最后索引地址之后的地址(作下一語句比較用)
    //程序注釋:sizeof(t9PY_index2[num]); //6(字節(jié)) = 3(個指針)*2(字節(jié)/指針)
    //          sizeof(t9PY_index2);      //2400(字節(jié))= 400(項)*6(字節(jié))
    //所以:    p_PY_LastIndex = &t9PY_index2[0] + 400;
    //str=p_PadInput;
    while(p_PY_CurrentIndex < p_PY_LastIndex)  //遍歷字母索引表.或者使用語句: while((p_PY_CurrenIndex->t9PY_T9[0])!='\n')                       
    {
	memcpy((void *)&PY_TempIndex,(const void *)p_PY_CurrentIndex,sizeof(struct t9PY_index)); 
        strcpy(temp_t9PY_T9,(PY_TempIndex).t9PY_T9);//復制輸入的數(shù)字串
	str=strstr(temp_t9PY_T9,p_PadInput);//查找輸入的數(shù)字串是否在 *t9PY_index2[]中
	if( (str == temp_t9PY_T9) && (T9PY_Match_NUM < T9PYPTRMAX))//指針比較
        {
	  List_match_PY_Mb[T9PY_Match_NUM]=p_PY_CurrentIndex;//
          T9PY_Match_NUM++;//完全匹配數(shù)增加
	}
        p_PY_CurrentIndex ++;
    }
    return (T9PY_Match_NUM);                //輸出完全匹配組數(shù),0為無果而終//
}
//==========================================================================================
//測試程序
//==========================================================================================

void t9PY_Test(void)
{
  //PYEnter:輸入拼音狀態(tài)和選字狀態(tài)(功能選擇狀態(tài))切換 標志位 
  //0x00:輸入拼音狀態(tài)   0xff:選字狀態(tài)
  unsigned char PYEnter=0;
  //HZok   :漢字是否選定標志位
  //0x00:漢字沒有選定  0xff:漢字選定
  unsigned char HZok=0;
    int temp,i=0;
    int out_temp;
    unsigned char t9PYn=0;
    unsigned char * tempMB;//指向漢字的指針
    char oneline[8]={0x00} ;//輸入的拼音碼 
    char pyma[8];//拼音碼臨時變量
    unsigned char chinese_word[3]="  ";//保存選中的漢字
    char tempchar;
    signed char Add=0;
    struct t9PY_index cpTemp = t9PY_index2[0];//存放字庫里面數(shù)據(jù)的臨時變量
    puts("按鍵    /:上一拼音  *:下一拼音  .:輸入狀態(tài)和選字狀態(tài)切換");
    puts("請按鍵:2-abc 3-def 4-ghi 5-jkl 6-mno 7-pqrs 8-tuv 9-wxyz ");
    while(!HZok)//HZok 初始值為 0。漢字沒有ok
    {           //漢字選定,則退出程序
        tempchar=getchar();//接收串口發(fā)送來的數(shù)據(jù)
        switch (tempchar)
        {   //拼音輸入只對 2~9 處理
            //case '0':拼音輸入狀態(tài)對'0','1'屏蔽
            //case '1':.
            case '2':
            case '3':
            case '4':
            case '5':
            case '6':
            case '7':
            case '8':
            case '9':
                  if (!PYEnter)//PYEnter = 0x00:輸入拼音狀態(tài)
                  {
                    oneline[i]=tempchar;
                    i++;
                    t9PYn=0;
                    Add=0;//Add:漢字定位位置
                    cpt9PY_Mblen=T9PY_Get_Match_PY_MB(oneline,cpt9PY_Mb);//獲取與輸入相匹配的T9拼音列表(該函數(shù)比較完整了)
                  }
                  break;
            case '/'://上一拼音
                if (t9PYn > 0) t9PYn --;//上下拼音指示標志位
                break;
            case '*'://下一拼音
                t9PYn ++;//上下拼音指示標志位
                if (t9PYn >= cpt9PY_Mblen) //cpt9PY_Mblen :匹配的拼音數(shù)目
                  t9PYn = 0;//循環(huán)
                break;
            
            //漢字顯示在這里溢出 ===== 在這里進行處理
            case '-'://上一頁 漢字 定位
                if (Add >= 18) 
                  Add -= 18;//Add:漢字定位位置
                break;
            
            case '+'://下一頁 漢字
                if(strlen((const char *)(cpTemp.PY_mb)) < 18)
                  break;
                else if ((Add < strlen((const char *)(cpTemp.PY_mb)) - 18))
                  Add += 18;
                break;
            case BACKSPACE://????刪除一個拼音字母
                if (i>0) i--;
                oneline[i]=0x00;
                Add=0;
                
                //獲取與輸入相匹配的T9拼音列表,存入 *cpt9PY_Mb[16]中
                cpt9PY_Mblen=T9PY_Get_Match_PY_MB(oneline,cpt9PY_Mb);
                break;
            case '.':                        //輸入狀態(tài)和選字狀態(tài)切換
            case '\n':
                Add = 0;
                PYEnter ^= 0xff;//PYEnter = 0xff:選字狀態(tài)
                break;
            case ' '://擴充為漢字拼音,英文字母輸入法切換 --- 未加入
                
                break;
            case '=':
                break;
            default :
                break;
        }

        if (PYEnter)
        {//PYEnter = 0xff:選字狀態(tài)
	    memcpy(&cpTemp,cpt9PY_Mb[t9PYn],sizeof(struct t9PY_index));
            if((tempchar >= '1') && (tempchar <= '9'))//選擇漢字
            {
                HZok=1;
                t9PYn=0;
                //printf ("                                                 \n");
		printf ("Target of Chinese word you had selected :  ");
		tempMB = (unsigned char *)cpTemp.PY_mb;
		tempMB += (Add + (tempchar - '1')*2);
                memcpy((void *)chinese_word,(const void *)tempMB,2);
		puts ((const char *)chinese_word);//顯示最后選擇的一個漢字
                printf ("\n");
            }
            else
            {
		printf ("The spell of your Selection : ");
		strcpy (pyma,cpTemp.PY);

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
99re这里只有精品首页| 26uuu亚洲综合色| 精品噜噜噜噜久久久久久久久试看| 久久综合精品国产一区二区三区| 亚洲精品国产成人久久av盗摄| 国产精品自拍网站| 91精品国产91综合久久蜜臀| 亚洲日本免费电影| 丰满亚洲少妇av| 精品国产一区二区三区四区四 | 国产精品久久久久精k8| 人妖欧美一区二区| 欧美日韩国产一二三| 亚洲欧美一区二区三区久本道91| 国产成人一级电影| 精品人在线二区三区| 麻豆国产欧美日韩综合精品二区| 欧美自拍偷拍一区| 夜夜嗨av一区二区三区四季av| 成人免费视频网站在线观看| 国产清纯在线一区二区www| 九色综合狠狠综合久久| 日韩欧美不卡一区| 国产一区亚洲一区| 欧美精品一区二区久久久| 男人的天堂久久精品| 欧美一区二区三区在线视频 | 一区二区高清在线| 9人人澡人人爽人人精品| 国产精品成人免费精品自在线观看| 国产成人在线观看| 国产精品美女久久久久av爽李琼| 国产sm精品调教视频网站| 欧美国产日韩在线观看| 不卡视频免费播放| 亚洲精品写真福利| 一本久久综合亚洲鲁鲁五月天| 亚洲视频一二区| 91国在线观看| 日韩电影在线观看电影| 日韩欧美一区中文| 国产一本一道久久香蕉| 国产精品蜜臀在线观看| 一本久道久久综合中文字幕| 亚洲成人动漫一区| 精品欧美一区二区三区精品久久| 国产乱一区二区| 国产精品久久久久久久蜜臀| 91无套直看片红桃| 天天做天天摸天天爽国产一区| 在线播放国产精品二区一二区四区| 麻豆国产精品一区二区三区| 国产日韩欧美一区二区三区乱码| 国产99精品国产| 亚洲午夜av在线| 久久综合中文字幕| 色噜噜久久综合| 精品中文av资源站在线观看| 国产精品视频免费| 欧美日精品一区视频| 精久久久久久久久久久| 日韩久久一区二区| 日韩一区二区三区四区五区六区| 福利一区福利二区| 婷婷开心激情综合| 国产精品免费av| 欧美一区二区三区免费观看视频 | 久久综合综合久久综合| 国产日韩av一区二区| 欧美日韩国产一区二区三区地区| 国产一区二区三区四区在线观看| 亚洲人成在线播放网站岛国| 欧美电视剧在线看免费| 色婷婷久久久综合中文字幕| 国产一区二区三区免费播放| 亚洲第一搞黄网站| 国产三级欧美三级日产三级99| 欧美性猛交xxxxxx富婆| 国产一区二区在线观看免费| 亚洲第四色夜色| 国产精品乱人伦| 精品毛片乱码1区2区3区| 欧美色综合网站| av电影在线观看一区| 久久精品国产一区二区三区免费看| 国产精品黄色在线观看| 久久久美女毛片| 欧美一区二区三区成人| 欧美性感一类影片在线播放| 国产麻豆视频精品| 日韩黄色免费电影| 亚洲一二三四在线观看| 国产丝袜在线精品| 久久久久国色av免费看影院| 日韩一区二区免费在线观看| 一本久久综合亚洲鲁鲁五月天| 国产成人日日夜夜| 狠狠狠色丁香婷婷综合激情 | 日韩欧美中文字幕制服| 欧美日韩色一区| 欧美在线观看一区二区| av在线不卡电影| 91在线视频免费91| 成人动漫一区二区三区| 国产成人亚洲综合a∨婷婷| 久久99精品国产| 美女高潮久久久| 久久精工是国产品牌吗| 日本aⅴ亚洲精品中文乱码| 亚洲最大的成人av| 午夜精品福利一区二区蜜股av| 一区二区三区鲁丝不卡| 亚洲小说春色综合另类电影| 亚洲一区二区三区精品在线| 一区二区三区在线高清| 亚洲主播在线播放| 一区二区三区不卡视频在线观看| 亚洲乱码国产乱码精品精98午夜 | 国产精品美女久久久久久久| 国产欧美精品一区aⅴ影院| 久久精品一区二区| 中国av一区二区三区| 国产精品你懂的| 亚洲欧洲无码一区二区三区| 亚洲天堂免费看| 日韩精品亚洲专区| 麻豆精品一区二区av白丝在线| 亚洲主播在线观看| 捆绑变态av一区二区三区| 激情综合一区二区三区| 国产99一区视频免费| 色综合中文字幕国产 | 亚洲bt欧美bt精品| 精品综合免费视频观看| 丁香六月久久综合狠狠色| 色先锋久久av资源部| 日韩一区二区免费电影| 国产欧美日韩在线观看| 一区二区在线看| 久久电影网电视剧免费观看| 国产91精品精华液一区二区三区| 91丨porny丨首页| 欧美一区二区三区四区在线观看| 精品福利视频一区二区三区| 最新国产成人在线观看| 日本午夜一区二区| 成人涩涩免费视频| 91精品麻豆日日躁夜夜躁| 精品盗摄一区二区三区| 亚洲精品成人精品456| 美女尤物国产一区| 91麻豆高清视频| 精品久久久网站| 亚洲国产一区二区三区| 国产一区欧美日韩| 欧美日精品一区视频| 国产日产精品一区| 午夜精品久久久久| 成人精品视频一区二区三区尤物| 欧美日韩不卡在线| 国产精品国产三级国产aⅴ中文| 日韩国产精品久久| 91丨porny丨国产入口| 久久久久久**毛片大全| 日韩黄色一级片| 在线观看三级视频欧美| 国产视频一区在线播放| 蓝色福利精品导航| 欧美日韩国产影片| 亚洲精品乱码久久久久久黑人| 国产精品一区二区无线| 欧美日本一区二区三区四区| 日韩美女啊v在线免费观看| 久久av资源站| 欧美一区二区三区白人| 亚洲尤物在线视频观看| 不卡av免费在线观看| 国产欧美日韩不卡免费| 久久精品999| 欧美一卡二卡在线| 天堂av在线一区| 色妞www精品视频| 亚洲欧美一区二区在线观看| 成人性生交大片免费看视频在线| 精品动漫一区二区三区在线观看| 日韩av午夜在线观看| 欧美日韩视频专区在线播放| 亚洲免费av高清| 在线观看区一区二| 亚洲精品第一国产综合野| 成人午夜短视频| 国产精品天美传媒沈樵| 国产69精品久久久久毛片| 久久久综合网站| 国产福利一区二区三区视频| 国产欧美精品一区| 成人免费观看男女羞羞视频| 国产精品色眯眯| 99久久99久久精品免费观看| 亚洲日本在线天堂|