freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于單片機的plc中文輸入系統(tǒng)設(shè)計-文庫吧在線文庫

2025-08-24 20:36上一頁面

下一頁面
  

【正文】 ................... 10 4 系統(tǒng)制作過程 ........................................... 16 硬件制作和調(diào)試 ....................................................... 16 軟件調(diào)試 ............................................................. 17 按鍵部分調(diào)試 ....................................................... 17 12864LCD部分 ...................................................... 17 中文全拼輸入法調(diào)試 ................................................. 18 5 操作說明 ............................................. 19 輸入漢字 ............................................................. 20 輸入英文字母 ......................................................... 21 輸入數(shù)字 ............................................................. 21 輸入符號 ............................................................. 22 退格鍵 ............................................................... 22 總效果圖 ............................................................. 22 6 結(jié)論 ................................................... 22 謝 辭 ................................................... 24 參考文獻(xiàn) .................................................. 25 附錄一 電路原理圖 ........................................ 26 附錄二 電路 PCB........................................... 26 附錄三 顯示過程圖 ........................................ 27 附錄四 實物圖 ............................................ 28 第 1 頁 共 28 頁 引言 隨著 3C 的融合和 3G 牌照的發(fā)放,智能終端設(shè)備 , 如 手機,小靈通,機頂盒 , PDA,手持終端,智能電話,嵌入設(shè)備,工業(yè)控制設(shè)備,信息家電, 將進(jìn)入尋常百姓家中,中文人機交互界面是這類智能終端設(shè)備所必須具備的功能,越來越多的用戶還要求嵌入式系統(tǒng)支持中文文本輸入。用戶在同音漢字串中選擇一個漢字就可以得到該漢字的 GB2312 編碼。 本設(shè)計方案在 AT89C55WD 單片機平臺上構(gòu)造簡 易的拼音輸入法, 輸入形式是用戶通過數(shù)字鍵盤輸入一個數(shù)字串 , LCD 顯示出該數(shù)字串對應(yīng)的各種拼音讓用戶進(jìn)行選擇 , 拼音數(shù)組中的每一個元素都指向一個同音漢字串。 TS12864A3 LCD。本文提出了一種將統(tǒng)計語言模型應(yīng)用到嵌入式設(shè)備上的方案。 方案選擇與論證 人機接口模塊 的選擇 方案一: 采用 44 按鍵 采用自制 的 44 按鍵, 電路配置靈活,線路簡單明了, 資源使用少,使用 方便, 不需要 對按鍵進(jìn)行太多的控制,直接采用查詢的方式獲取鍵值。 方案二大大減少了輸入時按鍵的次數(shù),能夠大大提高輸入效率,因此,本系統(tǒng)選擇了方案二。 第 4 頁 共 28 頁 根據(jù)選中拼音在拼音碼表中查找對應(yīng)的漢字 串 , 把 漢字的區(qū)位編碼和英文, 標(biāo)點的 ASCII碼 , 液晶顯示模塊會自動計算國標(biāo)碼和機內(nèi)碼 , 根據(jù)命令立即將字符在指定位置 在 LCD上 顯示出來 。 下圖為按鍵按下的整個過程: 10ms 穩(wěn)定期 10ms 圖 按鍵按下過程圖 AT89C55WD 單片機 AT89C55WD 是一個低電壓,高性能 CMOS 8 位單片機,片內(nèi)含有 20KB 的可重寫快速閃存存儲器和只讀程序和 256 bytes 的隨機存取數(shù)據(jù)存儲器( RAM),器件采用ATMEL 公司的高密度、非易失性存儲技術(shù)生產(chǎn),兼容標(biāo)準(zhǔn) MCS51 指令系統(tǒng),引腳兼容工業(yè)標(biāo)準(zhǔn) 89C51 和 89C52 芯片,采用通用編程方式,片內(nèi)置通用 8 位中央處理器和 Flash 存儲單元 。256x8bit 內(nèi)部 RAM 3 級加密位 當(dāng)采用并行傳送方式時 , 12864 的 DB0~DB7 接單片機 AT89C55WD的 P0 口 , 此時 4 引腳為 RS 腳 , 即并行傳送的數(shù)據(jù) /指令選擇信號 , 5 引腳為 RW 引腳 ,即并行的讀寫選擇信號 , 6 引腳為 E 引腳 , 即并行傳送的使能信號。指令執(zhí)行的時間請參考指令表中的指令執(zhí)行時間說明。 文字輸入 : 通過 44 鍵盤輸入漢字(拼音輸入法 )、英文、 字符、數(shù)字等 , 并在 LCD 上顯示出來,以便于用戶編輯通訊錄條目。 調(diào)用 LCD_Wcode ()函數(shù)寫入命令到液晶顯示模塊中,可以確定顯示的位置,調(diào)用 LCD_Wdata ()函數(shù)可以將要顯示的漢字或字符的 國標(biāo)碼傳送到液晶顯示器中 , 調(diào)用 delay(int t)函數(shù)可以通過參數(shù)控制延時若干 ms,調(diào)用LCD_Rbusy ()函數(shù)可以判斷液晶顯示模塊是否處于忙狀態(tài)。 //寫命令 void LCD_Rbusy()。 所有的拼音編碼組成一個數(shù)組常量 t9py_table[],每個拼音編碼作為數(shù)組中的一個元素存在,下面是該數(shù)組的片段: 第 11 頁 共 28 頁 struct t9py_index code t9py_table[] ={ {24,ai,PY_mb_ai}, {24,bi,PY_mb_bi}, {2,a,PY_mb_a}, {3,e,PY_mb_e}, …… …… {,}, //作為查找結(jié)束標(biāo)志 } ( 2) 當(dāng)用戶通過 按 鍵輸入一個數(shù)字序列后, 首先將鍵值轉(zhuǎn)化為字符,然后把字符添加到字符串末尾,將字符串與數(shù)字字母索引表中的 t9_str。 str = idxt9_str。 } return success。 // 當(dāng)前讀音候選漢字字符串指針 }。 LCD_ShowString(dizhi)。 LCD_Wcode(0x98)。 char xx=0。 for(i=0。 數(shù)字 的輸入首先 需要 按下 轉(zhuǎn)換狀態(tài)鍵 10 鍵 ,再按下相應(yīng)數(shù)字鍵值直接寫命令寫數(shù)據(jù)輸出, 每次輸出一個數(shù)字必須先按 10 鍵, 再按對應(yīng)數(shù)字鍵。 比如 要 輸出數(shù)字,按下 8 鍵 得到的 數(shù)字 是 1,有時候 也會出現(xiàn)其它 隨機值。這些要根據(jù)液晶的命令和時序來寫。 中文全拼輸入法調(diào)試 在對 全拼輸入法 編程調(diào)試時,由于 C 語言學(xué)得不是很好,所以經(jīng)常會遇到一些問題,例如內(nèi)存的分配,指針 、數(shù)組、結(jié)構(gòu)體 的使用,定義錯誤,語法結(jié)構(gòu)錯誤等等,這些錯誤都會影響程序的編譯??梢詮睦碚撚^察 是否有錯,按下是 低電平還是高電平, 對 按鍵 進(jìn)行消抖和 按鍵釋放判斷。當(dāng) 單片機 程序運行到斷點被設(shè)置處,程序被暫停。 ④ 漢字串的顯示在測試中比較明顯的錯誤的是沒有意識到一個漢字占兩個字節(jié),只調(diào)用 LCD_Wdata 一次,這導(dǎo)致漢字?jǐn)?shù)只能顯示一半 。經(jīng)過分析,知道了原因,因為 漢字是兩個字節(jié), 每個漢字需要寫兩次。按 Up 或 Dn 鍵選中所需的拼音,再按確定鍵即可進(jìn)入漢字選擇狀態(tài)。 LCD 與單片機有并行和串行兩種連接方法,并行接口較串行復(fù)雜,但是并行接口可以大大提高液晶顯示模塊顯示字符和漢字的速度 ,在寫 LCD 的驅(qū)動程序時要特別注意時序的問題 。 除此之外還要感謝 周圍的同學(xué),因為很多問題都是向他們請教 才能解決 ,無論是一個多么小的問題,他們都給予 耐心的 講解。 Komuro, S.。這珍貴的師生情,同學(xué)情,是 作者 永遠(yuǎn)舍棄不了的。 ( 2)拼音和字母的選擇并沒有設(shè)置確認(rèn)標(biāo)志,就是單純地通過默數(shù)的方式來選擇,因為它占的一個字節(jié),不像漢字占一個 RAM 位置可以采用閃動的方式,也想過用反白的方式,但到最后都沒能解決這個問題。 且數(shù)字是直接顯示在指定的位置,不需要在進(jìn)行選擇??梢?把 幾個模塊 分開進(jìn)行調(diào)試。再 采用 “ ai” 這個拼音測試時,ai 碼表為: code char PY_mb_ai[] ={哎哀唉埃挨皚癌愛 }。 ② 在 字符 添加成功之后,這樣就可以將 key_str 與拼音碼表中的數(shù)字序列進(jìn)行比較,數(shù)字 序列 從 數(shù)組 地址為 0 處開始依次比較,當(dāng)比 較結(jié)果為相等時則把指向該數(shù)組的指針 第 19 頁 共 28 頁 放到 T9 數(shù)字字母索引結(jié)果 的結(jié)構(gòu)體 中,指針繼續(xù)往下指,繼續(xù)比較,直到遇到結(jié)束標(biāo)志(“”),查找結(jié)束。 在上面的測試結(jié)果都正確后,可以從以下幾個步驟 進(jìn)行檢測: ① 按下鍵之后, 把按鍵數(shù)字值添加到 key_str 字符串的末尾,這可以在單步調(diào)試中查看結(jié)果 。在 執(zhí)行完 液晶初始化 函數(shù)之后 ,直接寫LCD_Wdata(“大家好” ),觀察液晶上是否有顯示。 PSB 采用硬件置高電平,表示采用并行方式,所以軟件上不用再進(jìn)行設(shè)置。 首先確定按鍵按下是高電平還是 低 電平,在本系統(tǒng)中按下為低電平 ,然后 在軟件 上對按鍵 進(jìn)行消抖處理, 消抖時間一般取 10ms~ 20ms 為好, 因為按鍵按下由于其機械特性,按下時需要一個過程。 ( 3) 通上 5V 電壓,觀察液晶是否亮,及其背光程度,在電壓低于 5V 時,會發(fā)現(xiàn)LCD 比較暗,電壓不穩(wěn)定時會出現(xiàn)雪花屏。 weizhi++。 LCD_Wcode(0x80+weizhi)。 } ( 6) 所有相同讀音的漢字顯示出來后, 這樣用戶就可以通過 上下 鍵選取所需的漢字了 ,選中字會有顯示光標(biāo)和 閃動 。 同音漢字串顯示函數(shù): display_hanzi(struct t9py_list *ptr) { int i, char_num。 LCD_Wcode(0x88)。 // 拼音個數(shù) char ele_idx。) { if (!strcmp(str, key_str)) { success=1。 struct t9py_index *idx。 拼音輸入法設(shè)計框架 如下 : 圖 拼音輸入法設(shè)計框架 ( 1) 每個拼音編碼的數(shù)據(jù)結(jié)構(gòu)為: struct t9py_index { char code *t9_str。 //復(fù)位函數(shù) 4 3 2 1 8 7 6 5 4 3 2 1 確定 Dn Up 取消 標(biāo) 英文 數(shù)字 9 第 10 頁 共 28 頁 void LCD_Clear()。 圖
點擊復(fù)制文檔內(nèi)容
研究報告相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1