<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 光電顯示 > 設計應用 > 觸摸屏技術(shù)在16位單片機中的應用

觸摸屏技術(shù)在16位單片機中的應用

作者: 時(shí)間:2012-10-18 來(lái)源:網(wǎng)絡(luò ) 收藏

2. 2 X ilinx95144

是一款高品質(zhì)的Comp lex Prog ramm able Logic Device 復雜的可編程邏輯器件( CPLD), 典型工作電壓為3. 3- 5V, 支持ISP即在線(xiàn)編程功能, 編程次數可達上萬(wàn)次, 管腳到管腳信號延遲7. 5ns, 工作頻率可達111MH z, 內部有144個(gè)宏單元均是ROM 結構, 掉電后內部的邏輯數據不會(huì )丟失。每個(gè)I /O管腳在輸出狀態(tài)下: 高電平時(shí)典型值- 4mA, 低電平典型值24mA; 每個(gè)I /O管腳在輸入狀態(tài)下: 高、低電平時(shí)均為uA級。因此輸出電氣特性: 在通常的TTL電平芯片電路中、外接驅動(dòng)不多的情況下, 可以不使用上拉電阻; 輸入電氣特性:

一般的集成芯片都可以直接與其相連, 不會(huì )出現驅動(dòng)力不夠現象, 更不會(huì )出現損壞。

2. 3 觸摸顯示屏

顯示部分的控制芯片是SED1335, 是日本EPSON 公司生產(chǎn)的一款液晶顯示屏專(zhuān)用控制器, 與同類(lèi)產(chǎn)品相比功能最強。其特點(diǎn)主要是: 有較強功能的I /O 緩沖器; 指令功能豐富; 4位數據并行發(fā)送; 圖形和文本方式混合顯示。觸摸部分的控制芯片是模擬數據轉換器ADS7843, 是美國T i公司生產(chǎn)的具有同步串行接口的8 位、12位數據輸出, 四線(xiàn)電阻模數轉換接口芯片。它通過(guò)標準SPI協(xié)議和CPU 通信; 精度高, 當使用12位時(shí)精度達到0. 04mm, 可以達到X, Y 方向上的1/256, 1 /4096精度; 最大可接受電流? 50mA, 典型值為數uA; 工作電壓為- 0. 3- + 6V; 工作時(shí)鐘典型值2MH z即數量級是uS; 當被按下時(shí)( 即有觸摸事件發(fā)生) ,ADS7843會(huì )發(fā)出中斷請求。

在出現數次問(wèn)題后, 我們都發(fā)現顯示部分正常, 而觸摸部分不正常, 也就是ADS7843的使用有問(wèn)題, 其內部結構原理圖如圖3所示。從圖上我們可以看見(jiàn)主要有四通道信號轉換器、逐次逼近寄存器( SAR )、電容型數據/轉換器( CDAC )、比較器、串行接口與控制器功能模塊組成。其中與編程有關(guān)的信號是DCLK、/CS、DIN、DOUT、BUSY、/PENIRQ,數據流向見(jiàn)圖4所示。

圖3 AD7843內部原理結構

圖3 AD7843內部原理結構

圖4 ADS7843接口圖

圖4 ADS7843接口圖

對于A(yíng)DS7843來(lái)說(shuō), 除了電源與地線(xiàn), 輸入模擬信號X+ 、X- 、Y+ 、Y - 、IN3、IN4, 輸入數字信號DCLK、/CS、DIN;輸出數字信號BUSY、DOUT、/PEN IRQ.與編程有關(guān)的均是數字信號, 數據輸入、輸出、時(shí)鐘輸入均為串行方式, 最高轉換速率為1/125KH z, 線(xiàn)路設計結構上比較方便只需要6根端口線(xiàn)就可以建立完全的數據交互。

2. 4 現象分析

采用80196的P1口的6個(gè)端口專(zhuān)門(mén)與其打交道, 從硬件上講是完全可以的。然而由于在編程中P1口有些端口是作輸入、有些端口需要作為輸出, 80196又沒(méi)有對位直接進(jìn)行操作的指令, 對P1某一個(gè)端口作輸出操作, 通常196會(huì )先讀P1口的8個(gè)管腳, 然后再進(jìn)行 寫(xiě)!的操作, 根據P1口結構, 必然會(huì )帶來(lái)若作為輸入端口的管腳在其外部輸入信號為低時(shí), 執行 寫(xiě)!指令后出現了將其輸入狀態(tài)改為了輸出狀態(tài)。此時(shí)在80196與ADS7843的DOUT與/PEN IRQ這兩根線(xiàn)上都將出現了同一根線(xiàn)上出現兩個(gè)輸出信號、爭搶信號的問(wèn)題, 這是數字電路中絕對不允許的, 它的出現就有可能損壞芯片。

根據資料介紹, 在編程操作中, 當P1口中有些管腳作為輸入, 有些管腳作為輸出時(shí)要特別注意對P1 口寫(xiě)指令操作,它是一個(gè)讀、寫(xiě)過(guò)程, 最好借助于一些單元。

3 軟件設計分析

對于按鍵的處理, 系統采用中斷方式, 流程如圖5所示。

圖5按鍵流程圖

圖5按鍵流程圖

主要相關(guān)程序如下:

/* 寫(xiě)控制指令、讀數據子程序* /

LDB R6, # 08H ; 寫(xiě)8位控制指令代碼

CLRC; LDB AL, COM ; 指令代碼準備發(fā)送

ADS7843_W: SHLB AL, # 1 ; 數據串行發(fā)送

JC S_D I_1; JMP S_DI_0

S_DI_1: LDB BL, IOPORT1 ; 將P1 口狀態(tài)保存在BL 寄存器中

ORB BL, # 03H ; 將數據出DOUT置高, 數據入DIN 為信號輸入狀態(tài)

LDB IOPORT1, BL ; 將修改后的狀態(tài)送至P1口

JMP SKCLK

S_DI_0: LDB BL, IOPORT1 ; 將P1 口狀態(tài)保存在BL 寄存器中

ANDB BL, # 0FEH ; 將數據出DOUT 置低

ORB BL, # 02H ; 數據入D IN為信號輸入狀態(tài)

LDB IOPORT1, BL; 將修改后的狀態(tài)送至P1口

SKCLK: LDB BL, IOPORT1 ; 將P1口狀態(tài)保存在BL寄存器中

ANDB BL, # 0F7H ; 時(shí)鐘信號DCLK為低

ORB BL, # 01H ; 將數據出DOUT 置高

LDB IOPORT1, BL ; 將修改后的狀態(tài)送至P1口

LDB BL, IOPORT1 ; 將P1口狀態(tài)保存在BL寄存器中

ORB BL, # 09H ; 時(shí)鐘信號DCLK 為高, 將數據出DOUT置高

LDB IOPORT1, BL ; 將修改后的狀態(tài)送至P1口

DJNZ R6, ADS7843_W ; 8位指令送完

LDB BL, IOPORT1 ; 將P1口狀態(tài)保存在BL寄存器中

ANDB BL, # 0F7H ; 時(shí)鐘信號DCLK為低

ORB BL, # 01H ; 將數據出DOUT 置高

LDB IOPORT1, BL ; 將修改后的狀態(tài)送至P1口

/* 準備接受觸摸屏按鍵讀14 位數據數據, 先接受低8位數據* /

LDB R6, # 08H ; 鍵值設定方向讀低8位數據程序

DATA_OUT: LDB BL, IOPORT1 ; 將P1口狀態(tài)保存在BL寄存器中

ORB BL, # 09H ; 時(shí)鐘信號DCLK 為高, 將數據出DOUT置高

LDB IOPORT1, BL ; 將修改后的狀態(tài)送至P1口

LDB BL, IOPORT1 ; 將P1口狀態(tài)保存在BL寄存器中

ANDB BL, # 0F7H ; 時(shí)鐘信號DCLK為低

ORB BL, # 01H ; 將數據出DOUT 置高

LDB IOPORT1, BL ; 將修改后的狀態(tài)送至P1口

SHLB AL, # 1 ; 數據左移一位

JBS IOPORT1, 0, DI_O_1 ; 判數據入DIN 高?



關(guān)鍵詞: 應用 單片機 技術(shù) 觸摸屏

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>