日韩欧美自拍在线观看-欧美精品在线看片一区二区-高清性视频一区二区播放-欧美日韩女优制服另类-国产精品久久久久久av蜜臀-成人在线黄色av网站-肥臀熟妇一区二区三区-亚洲视频在线播放老色-在线成人激情自拍视频

單片機擴展觸摸屏人機接口的應(yīng)用實例

出處:王愛華 發(fā)布于:2007-09-25 15:18:17

  摘要: 本文介紹了四線電阻式觸摸屏控制器BBADS7843與AVR單片機Atmega128的硬件連接和驅(qū)動程序設(shè)計。
  關(guān)鍵詞: 觸摸屏;ADS7843

觸摸屏

  如圖1,典型觸摸屏的工作部分一般由三部分組成:兩層透明的阻性導(dǎo)體層、兩層導(dǎo)體之間的隔離層、電極。阻性導(dǎo)體層選用阻性材料,如銦錫氧化物(ITO)涂在襯底上構(gòu)成,上層襯底用塑料,下層襯底用玻璃。隔離層為粘性絕緣液體材料,如聚脂薄膜。電極選用導(dǎo)電性能極好的材料(如銀粉墨)構(gòu)成,其導(dǎo)電性能大約為ITO的1000倍。

圖1  觸摸屏
  觸摸屏工作時,上下導(dǎo)體層相當(dāng)于電阻網(wǎng)絡(luò)。當(dāng)某一層電極加上電壓時,會在該網(wǎng)絡(luò)上形成電壓梯度。如有外力使得上下兩層在某一點接觸,則在電極未加電壓的另一層可以測得接觸點處的電壓,從而知道接觸點處的坐標(biāo)。比如,在頂層的電極(X+,X-)上加上電壓,則在頂層導(dǎo)體層上形成電壓梯度,當(dāng)有外力使得上下兩層在某一點接觸,在底層就可以測得接觸點處的電壓,再根據(jù)該電壓與電極(X+)之間的距離關(guān)系,知道該處的X坐標(biāo)。然后,將電壓切換到底層電極(Y+,Y-)上,并在頂層測量接觸點處的電壓,從而知道Y坐標(biāo)。四線制電阻觸摸屏也是目前常用的觸摸屏產(chǎn)品。本系統(tǒng)中選用AMT9502。
  
觸摸屏控制器硬件設(shè)計
  Atmega128 單片機是Atmel公司的8位RISC單片機,片內(nèi)有128Kflash、4K RAM、4K EEPROM、兩個可編程的USART、1個可工作在主機/從機的SPI串行接口。此外還有豐富的I/O接口,8通道10位分辨率ADC轉(zhuǎn)換器等硬件資源。
  單片機系統(tǒng)設(shè)計如圖2所示。低電壓版本的 Atmega 128支持3.3V、5V兩種供電電壓,本系統(tǒng)采用5V供電,便于供電電壓統(tǒng)一。晶振采用常規(guī)直插晶振7.373800M,選用標(biāo)準晶振的目的主要是為了提高USART通訊波特率的準確性,使單片機能夠使用于比較高的通訊波特率。復(fù)位電路采用常規(guī)的RC復(fù)位,沒有使用特殊的復(fù)位器件,Atmega 128已經(jīng)內(nèi)置了看門狗,并且可以通過編程使看門狗在程序啟動前啟動,即上電后程序啟動前,看門狗已經(jīng)啟動,這樣系統(tǒng)的可靠性可以得到保證,看門狗分頻系數(shù)是2048K,分頻系統(tǒng)是16K。系統(tǒng)中PB0(SS)已經(jīng)直接接到+5V,這樣硬件配置了單片機為主機,下面所有外掛的均為從機,本系統(tǒng)外掛只有一個就是ADS7843。單片機和觸摸屏控制器連接如圖3所示,PB1(CLK) 為SPI時鐘,PB2(MOSI)為SPI主機輸出從機輸入, PB3(MISO)SPI主機輸入從機輸出。這三根線為SPI總線。

圖2 單片機系統(tǒng)圖

圖3 單片機和觸摸屏控制器連接圖
  ADS7843是TI公司的觸摸屏控制器芯片 專門應(yīng)用于四線電阻式觸摸屏,達到125K的轉(zhuǎn)換率 8位或者12位可編程。外部參考電壓范圍從1V到VCC均可,VCC電壓為5V,高速低功耗使得ADS7843非常適合于使用電阻觸摸屏的手持設(shè)備。寬溫度設(shè)計使得它很適用于大量的工業(yè)現(xiàn)場。
ADS7843連接觸摸屏的示意圖如圖4所示。

圖4 ADS7843和觸摸屏連接圖
  觸摸屏是一個四線電阻屏幕,可以示意出兩個電阻,測量X方向的時候,將X+,X-之間加上參考電壓Vref,Y-斷開,Y+作為A/D輸入,進行A/D轉(zhuǎn)換獲得X方向的電壓,同理測量Y方向的時候,將Y+,Y-之間加上參考電壓Vref,X-斷開,X+作為A/D輸入,進行A/D轉(zhuǎn)換獲得Y方向的電壓,之后再完成電壓與坐標(biāo)的換算。整個過程類似一個電位器,觸摸不同的位置分得不同的電壓。
  以上所需要的加參考電壓斷開A/D轉(zhuǎn)換等工作都是ADS7843直接完成的,只需要將相應(yīng)的命令傳輸?shù)紸DS7843即可,等待轉(zhuǎn)換周期完成,檢測到BUSY信號不再忙,即可以獲得相應(yīng)電壓的數(shù)據(jù)。
  此外PENIRQ一般需要一個上拉電阻,因為ADS7843是一個OC門輸出結(jié)構(gòu),本系統(tǒng)中直接使用Atmega 128內(nèi)部的上拉電阻。單片機中斷系統(tǒng)中將INT0分配給觸摸屏控制器,并且設(shè)定成低電平觸發(fā),這樣可以檢測按鍵時間,可以用按鍵長短處理不同的功能。

觸摸屏控制器驅(qū)動程序
  驅(qū)動程序的編寫與硬件的設(shè)計是直接相關(guān),驅(qū)動程序是以上面所設(shè)計的硬件為基礎(chǔ)的。

表1 ADS7843的控制字及數(shù)據(jù)傳輸格式
  根據(jù)ADS7843的Datasheet,ADS7843的控制字及數(shù)據(jù)傳輸格式如表1。其中S為數(shù)據(jù)傳輸起始標(biāo)志位,該位必為“1”。A2~A0進行通道選擇。MODE用來選擇A/D轉(zhuǎn)換的,“1”選擇8位,“0”選擇12位。SER/選擇參考電壓的輸入模式。PD1、PD0選擇省電模式:“00”省電模式允許,在兩次A/D轉(zhuǎn)換之間掉電,且中斷允許;“01”同“00”,只是不允許中斷;“10”保留;“11”禁止省電模式。
為了完成電極電壓切換和A/D轉(zhuǎn)換,需要先通過串口往ADS7843發(fā)送控制字,轉(zhuǎn)換完成后再通過串口讀出電壓轉(zhuǎn)換值。標(biāo)準的轉(zhuǎn)換需要24個時鐘周期。由于串口支持雙向同時進行傳送,并且在讀數(shù)與下發(fā)控制字之間可以重疊,所以轉(zhuǎn)換速率可以提高到每次16個時鐘周期。如果條件允許,CPU可以產(chǎn)生15個CLK的話(比如FPGA和ASIC),轉(zhuǎn)換速率還可以提高到每次15個時鐘周期。
  所以我們選擇控制字 :
0x94-----X+輸入得到Y(jié) AD值    0xe4----Y+輸入得到X AD值
SPI初始化程序:
void spi_init(void)
{
 SPCR = 0x53; //setup SPI
 SPSR = 0x00; //setup SPI
}
SPI主機傳輸函數(shù):
void SPI_MasterTransmit(char cData)
{
SPDR = cData; /* 啟動數(shù)據(jù)傳輸 */
while(!(SPSR & (1<<SPIF))); /*等待傳輸
  結(jié)束*/
}
讀取ADS7843的模擬量值;
unsigned int Get_Touch_Ad(unsigned char
  channel)
{
unsigned int ad_tem;            
SPI_MasterTransmit(channel);//發(fā)送控制字
if(PING&&0x08==0)  ;      //判斷busy 
delayms(1);
SPI_MasterTransmit(0);
delayms(1);              //等待發(fā)送完畢 
ad_tem=SPDR; 
ad_tem=ad_tem<<8;
SPI_MasterTransmit(0);       //啟動spi傳送
delayms(1);    //等待發(fā)送完畢   
 ad_tem|=SPDR;
ad_tem=ad_tem>>4;
return(ad_tem);  //返回的參數(shù) 
}
不同的用戶還需根據(jù)自己設(shè)計的系統(tǒng),做一個簡單的四點校正程序,這樣可以獲得一個度較高的觸摸屏坐標(biāo)體系。
結(jié)語
  本系統(tǒng)已經(jīng)在國家重點建設(shè)項目揚州二電廠工程2×600MW發(fā)電機組的自動化設(shè)備中得到應(yīng)用,共使用了64套,運行一年以來使用情況良好。


  
關(guān)鍵詞:單片機擴展觸摸屏人機接口的應(yīng)用實例ATMEGA128ATMEGACHANNEL

版權(quán)與免責(zé)聲明

凡本網(wǎng)注明“出處:維庫電子市場網(wǎng)”的所有作品,版權(quán)均屬于維庫電子市場網(wǎng),轉(zhuǎn)載請必須注明維庫電子市場網(wǎng),http://www.hbjingang.com,違反者本網(wǎng)將追究相關(guān)法律責(zé)任。

本網(wǎng)轉(zhuǎn)載并注明自其它出處的作品,目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀點或證實其內(nèi)容的真實性,不承擔(dān)此類作品侵權(quán)行為的直接責(zé)任及連帶責(zé)任。其他媒體、網(wǎng)站或個人從本網(wǎng)轉(zhuǎn)載時,必須保留本網(wǎng)注明的作品出處,并自負版權(quán)等法律責(zé)任。

如涉及作品內(nèi)容、版權(quán)等問題,請在作品發(fā)表之日起一周內(nèi)與本網(wǎng)聯(lián)系,否則視為放棄相關(guān)權(quán)利。

ATmega8來自AVR微控制器單片機,業(yè)界號稱“一線打天下”!
廣告
OEM清單文件: OEM清單文件
*公司名:
*聯(lián)系人:
*手機號碼:
QQ:
有效期:

掃碼下載APP,
一鍵連接廣大的電子世界。

在線人工客服

買家服務(wù):
賣家服務(wù):
技術(shù)客服:

0571-85317607

網(wǎng)站技術(shù)支持

13606545031

客服在線時間周一至周五
9:00-17:30

關(guān)注官方微信號,
第一時間獲取資訊。

建議反饋

聯(lián)系人:

聯(lián)系方式:

按住滑塊,拖拽到最右邊
>>
感謝您向阿庫提出的寶貴意見,您的參與是維庫提升服務(wù)的動力!意見一經(jīng)采納,將有感恩紅包奉上哦!