關鍵詞:數字簽名 液晶顯示 觸摸屏 SED1335 ADS7846
電子簽名技術是通過電子設備來采集和驗證個人簽名,并將信息捆綁在一起,達到與紙上簽名同樣的效果,從而實現無紙化辦公的一種技術。在物品配送市場中,減少紙張作為投遞證據所采用的首選技術就是簽名采集技術。當業(yè)務交換中發(fā)生問題時,數字簽名將是強有力的證據。為此,希望有一種體積小、簡便易操作的手持式簽名信息采集器能夠替代現在普遍使用的紙質簽名。
1 硬件電路及其工作原理
在很多應用領域中,觸摸屏作為基本的輸入設備,而顯示屏作為輸出設備。要完成對簽名等圖像的采集,需要在觸摸屏上輸入信息,顯示屏上顯示輸入信息。本文采用SED1335液晶顯示控制器對液晶屏讀寫數據,用ADS7846對四線式電阻觸摸屏采集數據。下面介紹一下硬件的實現過程。
圖1
1.1 液晶顯示控制器
SED1335是日本SEIKO EPSON公司生產的液晶顯示控制器,它在同類產品中是功能最強的。其結構如圖1所示。SED1335硬件結構可分成接口部分、內部控制部和驅動液晶模塊LCM的驅動部分。接口部分由指令輸入緩沖器、數據輸入緩沖器、數據輸出緩沖器和標志寄存器組成。這些緩沖器通道的選擇是由引腳A0和讀、寫操作信號聯(lián)合控制??刂撇縎ED1335的核心,它由振蕩器、功能邏輯電路、顯示RAM管理電路、字符庫及其管理電路以及產生驅動時序的時序發(fā)生器組成,振蕩器工作頻率可在1~10MHz范圍內選擇。SED1335能在很高的工作頻率下迅速解譯MPU發(fā)來的指令代碼,將參數置入相應的寄存器內,并觸發(fā)相應的邏輯功能電路運行??刂撇糠挚梢怨芾?4KB顯示RAM,顯示內藏的字符發(fā)生器及外擴的字符發(fā)生器CGRAM或EXCGROM。驅動部分具有各顯示區(qū)的合成顯示能力,傳輸數據的組織功能及產生液晶顯示模塊所需要的時序脈沖信號。
圖2
1.2 ADS7846觸摸屏控制器
ADS7846是美國Burr-Brown公司推出的與ADS7846是美國Burr-Brown公司推出的與ADS7843兼容的新一代4線制電阻式觸摸屏控制器,通過機械式觸摸,可以迅速得到觸摸點的位置信號。它是一種典型的帶有連續(xù)逼近型寄存器的A/D轉換器,內部自帶+2.5V參考電壓,微處理器的串行接口,可測量溫度和觸摸壓力,有可編程的8位或12位的分辨率(最大精度可分辨4096×4096個點),自動進入低功耗模式。在2.7V電壓下和125kHz的轉換速率下,功耗為750μW;關閉模式下,功耗僅為0.5μW。提供TSSOP-16和SSOP-16兩種封裝。引腳功能如表1所示。
表1
引腳名 | 功能描述 |
+Vcc | 邏輯正電源 |
X+,Y+ | 接觸摸屏正電極 |
X-,Y- | 接觸摸屏負電極 |
GND | 接地 |
VBAT | 電源監(jiān)控輸入端 |
PENIRQ | 中斷輸出端 |
VREF | 參考電壓輸入輸出端 |
DOUT | 串行數據輸出端 |
DCLK | 外部時鐘輸入端 |
DIN | 串行數據輸入端 |
BUSY | 忙信號輸出端(低電平有效) |
CS | 片選 |
為了完成一次A/D轉換,在觸摸屏有觸摸事件發(fā)生時,PENIRQ為低電平??刂破鞅O(jiān)測到PENIRQ為低電平時,通過串行口往ADS7846發(fā)控制字。在片選CS為低是電平時,DIN在DCLK上升沿輸入8位方式控制字后,DOUT在DCLK下降沿得到控制字相對應的輸出。圖2為ADS7846在每次轉換為16個時鐘周期下的時序圖。
1.3 觸控顯示電路
終端觸控顯示部分硬件電路如圖3所示。該電路主由微控制器、液晶屏和液晶顯示控制器、觸摸屏和觸摸屏控制器、存儲器以及供電電路等其它部分組成。其中微處理器采用了Winbond公司的W78E58,此單片機與工業(yè)標準MCS-51系列單片機兼容,它具有3個16位定時器,12個中斷源,2個中斷優(yōu)先級,2個增強型串口,32KB Flash EPROM,可編程Watchdog,雙DPTR指針。2片62256分別作液晶屏的顯存和簽名數據存儲器,液晶顯示觸摸屏控制器采用前兩節(jié)介紹的控制器。
設計中采用的顯示屏是由北京蓬遠公司生產的液晶顯示屏PDA320240A。PDA320240液晶顯示屏是一種精度高的點陣型顯示器,具有體積小,重量輕,顯示靈活等優(yōu)點。它具有兩種顯示方式:文本顯示和圖形顯示。為了向用戶提供更為簡單的操作界面,許多顯示屏的輔助功能模塊都已經集成化,對于PDA320240A只需要對18根信號線進行操作(引腳定義如表2所列),就可以完成相應的顯示功能。
表2
引腳名 | 功能描述 |
EL1、EL2 | 顯示屏背光輸入線 |
X+,Y+ | 接觸摸屏正電極 |
X-,Y- | 接觸摸屏負電極 |
CL1 | 顯示數據鎖存脈沖信號 |
CL2 | 顯示使能信號輸入 |
PENIRQ | 中斷輸出端 |
D0~D3 | 顯示數據輸入線 |
VDD | +5V電源 |
VSS | 接地輸入線 |
VLCD | 顯示屏驅動電源(+18) |
FLM | 幀掃描信號輸入線 |
RESET | 液晶屏復位 |
DISP | 顯示屏的驅動輸出(接地) |
由圖3可以看出,觸摸屏上的4個模擬信號X+、X-、Y+、Y-,通過ADS7846轉化成量化的數字坐標,坐標轉換后由SED1335控制顯示在液晶屏上。簽名完畢后,圖像信息通過SED1335上的XD0~XD3讀取簽名信息采集存入RAM62256(1)中,W78E58上的串口可將簽名數據通過RS-232-C傳到打印機,或用藍牙接口無線傳輸至其它設備上。
2 軟件設計
數字簽名的軟件實現是將觸摸坐標即時地轉換為顯示坐標,直接在屏幕上打點顯示,然后交給液晶顯示控制器處理,將其按顯示的格式存儲簽名等圖像信息。實際證明,該方法可操作性強,處理速度快。
流程如圖4所示。MCU上電后一直處于等待觸摸狀態(tài),一旦檢測INT0為低電平,在延時10ms后INT0仍為低電平,即有觸摸發(fā)生。執(zhí)行觸摸控制程序touch(),得到觸摸位置的12位精度坐標TOUC_XY,計算出屏上的顯示坐標SIGN_XY。通過坐標判斷是否為簽名區(qū)域,如果是則在屏上顯示出觸摸點。簽名結束后,同樣通過坐標判斷跳出觸摸控制程序,讀出簽名框內的所有信息并保存。
圖3
數據保存的方法有多種,其一是每次有效觸摸事件發(fā)生時,記錄下當前點的坐標,存儲于存儲中;其二是在簽名完成后,按行掃描液晶屏上顯示的簽名框,讀取簽名框內的數據,然后存于存儲器中。比較上面兩種方法,第一種由于每個點對應兩個簽名坐標,對于160×50點陣的簽名框,在全部涂黑的情況下,存儲量多達160×50×2=16000字節(jié),因此該方法比較適合少量數據的采集;第二種方法相對比靈活,無論簽名量的多少,對于同樣的簽名框,存儲量最多為160×50/8=1000字節(jié),因此我們采用此方法。
3 應用實例
目前無論是我國郵政還是物品投遞公司,其物品投遞確認信息都是以紙質介質形式進行存儲的,其信息采集和使用都很不方便。比如包裹投遞的操作是郵政投遞人員驗證收件人的證件后,由包裹收件人在包裹單上填寫相應的接收信息并簽收,簽收后的包裹單由投遞人員交給郵局保存?,F在使用我們開發(fā)物品投遞確認手持式設備,代替原有的紙質簽名,其中簽名數據經過壓縮編碼處理后。數據量小、保密性強;數據存入非易失性存儲器中,能在掉電情況下恢復數據;簽名數據可以通過設備上的藍牙模塊,向上位機發(fā)送簽名數據,數據經過觸密后可以還原為簽名時的狀態(tài)。
4 結論
利用SED1335和ADS7846組成的用51系列單片機控制數字簽名手持式設備,具有成本低、簽名效果清晰等優(yōu)點。在嵌入式領域中,隨著新器件的不斷涌現,一些微控制器(比如EPSON系列單片機、Motorola的龍珠芯片)可以直接驅動液晶屏顯示,這樣可以大大降低硬件電路的設計。