0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

基于LM3S3748和ADS7843芯片實(shí)現(xiàn)設(shè)備人機(jī)接口的設(shè)計(jì)

電子設(shè)計(jì) ? 來源:電子元器件應(yīng)用 ? 作者:李培棟,郭勇,謝 ? 2021-04-14 11:57 ? 次閱讀

作者:李培棟,郭勇,謝興紅

醫(yī)用數(shù)據(jù)采集系統(tǒng)能夠?yàn)獒t(yī)務(wù)人員及時(shí)有效的提供患者的第一手?jǐn)?shù)據(jù),有助于加強(qiáng)醫(yī)院的現(xiàn)代化信息管理和提高工作效率。而在家庭保健方面,它能夠滿足人們?cè)诳旃?jié)奏的工作生活中及時(shí)準(zhǔn)確的獲知自身及家人的健康狀況。在設(shè)備的日常使用中,良好的人機(jī)接口設(shè)計(jì),也將為設(shè)備使用人員節(jié)約大量的時(shí)間并提供極大的便捷。本文主要以LM3S3748為核心,并采用TFT液晶作為系統(tǒng)的顯示設(shè)備,而用觸摸屏和手柄控制器作為系統(tǒng)的控制設(shè)備,介紹了其人機(jī)接口的設(shè)計(jì)方法。

1 系統(tǒng)硬件設(shè)計(jì)

系統(tǒng)人機(jī)接口主要包括TFT液晶、觸摸屏和手柄控制器,其結(jié)構(gòu)框圖如圖1所示。其中TFT液晶亮度好,對(duì)比度高,層次感強(qiáng),顏色鮮艷,因此,在不考慮耗電的情況下,TFT液晶是一個(gè)很好的選擇。觸摸屏采用模數(shù)轉(zhuǎn)換芯片ADS7843對(duì)觸摸屏的數(shù)據(jù)進(jìn)行采樣,再對(duì)其采樣的輸出值經(jīng)過校準(zhǔn)程序,即可以得到其觸摸屏的物理坐標(biāo)。手柄控制器采用Modbus協(xié)議,并通過串口對(duì)核心板進(jìn)行控制。

基于LM3S3748和ADS7843芯片實(shí)現(xiàn)設(shè)備人機(jī)接口的設(shè)計(jì)

1.1 控制單元

本系統(tǒng)的控制單元可采用TI公司的LM3S3748,支持主頻為50 MHz的ARM Codex-M3內(nèi)核和128 KByte FIASH、64 KByte SRAM。同時(shí)集成有USB HOST/DEVICE/OTG、睡眠模塊、正交編碼器、ADC、帶死區(qū)刪、溫度傳感器、模擬比較器UART、SSI、通用定時(shí)器,I2C、CCP、DMA控制器等外設(shè)。此外,芯片內(nèi)部還固化有驅(qū)動(dòng)庫,能較好的滿足系統(tǒng)需求。

1.2 液晶接口電路

液晶可選用3.2寸TFT(240×320)26萬色彩屏觸摸模塊,該模塊支持SD卡和DATAFLASH,同時(shí)支持16位/8位模式。該模塊可以實(shí)現(xiàn)顯示畫面的180度任意旋轉(zhuǎn)使用,并帶觸摸屏及觸摸控制芯片。模塊默認(rèn)i8080 16位并行接口,并可選8位并行接口方式。其液晶接口電路如圖2所示。

1.3 觸摸屏控制電路

觸摸屏控制芯片采用的ADS7843是TI公司生產(chǎn)的4線電阻觸摸屏轉(zhuǎn)換接口芯片。它是一款具有同步串行接口的12位取樣模數(shù)轉(zhuǎn)換器。ADS7843具有兩個(gè)輔助輸入(IN3、IN4),可設(shè)置為8位或12位模式。

ADS7843可以通過連接觸摸屏X+將觸摸信號(hào)輸入到A/D轉(zhuǎn)換器,同時(shí)打開Y+和Y-驅(qū)動(dòng),然后再數(shù)字化X+的電壓,從而得到當(dāng)前Y位置的測(cè)量結(jié)果,同理,也可以得到X坐標(biāo)的邏輯坐標(biāo)。當(dāng)?shù)玫絏、Y的邏輯坐標(biāo)后,通過SPI接口將數(shù)據(jù)傳送給LM3S3748進(jìn)行數(shù)據(jù)處理。其ADS7843的外部電路如圖3所示。

1.4 RS232串口通信電路

RS232串口主要用于手柄控制器與核心板的通信,這類似于人機(jī)接口中的鍵盤接口。它們之間通過Modbus協(xié)議進(jìn)行通信。其RS232串口通信電路如圖4所示。

2 系統(tǒng)軟件設(shè)計(jì)

2.1 觸摸屏軟件設(shè)計(jì)

ADS7843具有兩種工作模式,分別為單端基準(zhǔn)模式和差分基準(zhǔn)模式。同時(shí)還可以對(duì)其進(jìn)行12位或8位轉(zhuǎn)換模式的選擇。本設(shè)計(jì)采用差分基準(zhǔn)模式和12位轉(zhuǎn)換模式,即:

WriteCharTo7843(0xD0);∥送控制字10010000,

即用差分方式+12位轉(zhuǎn)換模式,讀X坐標(biāo);

……

WriteCharTo7843(0x90);∥送控制字11010000,

即用差分方式+12位轉(zhuǎn)換模式,讀Y坐標(biāo);

CPU采用中斷方式對(duì)坐標(biāo)進(jìn)行讀取。當(dāng)未對(duì)屏幕進(jìn)行觸摸時(shí),ADS7843的引腳PENIRQ為高電平輸出,當(dāng)對(duì)屏幕有觸摸動(dòng)作時(shí),引腳PENIRQ變?yōu)榈碗娖捷敵?,每?dāng)CPU檢測(cè)到這個(gè)引腳的下降沿時(shí),系統(tǒng)進(jìn)入中斷讀取坐標(biāo)。其坐標(biāo)值讀取的流程如圖5所示。當(dāng)CPU在每一次獲取邏輯坐標(biāo)的過程中,實(shí)際上分別對(duì)X、Y坐標(biāo)進(jìn)行了11次讀取,然后將讀取到的邏輯坐標(biāo)值分別存入兩個(gè)數(shù)組,并且對(duì)這兩個(gè)數(shù)組中的值進(jìn)行冒泡排序,使其從小到大依次排列后,再去掉最大和最小的兩個(gè)數(shù)值,并將中間值作為基準(zhǔn),余下數(shù)值與基準(zhǔn)值進(jìn)行求差的絕對(duì)值運(yùn)算。設(shè)計(jì)中可設(shè)定一個(gè)閥值(此閥值可根據(jù)實(shí)驗(yàn)設(shè)置為5),如果絕對(duì)值大于閥值,則拋棄此值,最后將剩余數(shù)值求和平均,并將其作為最終邏輯坐標(biāo)值。這就是流程圖中“數(shù)據(jù)處理”所完成的功能。

系統(tǒng)中的主程序流程圖如圖6所示。其中觸摸屏校準(zhǔn)處理采用了一種較為通用的校準(zhǔn)算法。由于電阻式觸摸屏有一個(gè)共性,那就是電壓成線性均勻分布,所以,只要求出邏輯坐標(biāo)與物理坐標(biāo)的比例系數(shù),就可以實(shí)現(xiàn)邏輯坐標(biāo)與物理坐標(biāo)的轉(zhuǎn)換。首先可確定5個(gè)物理坐標(biāo)點(diǎn)。并依次在屏幕上用“+”顯示,同時(shí)將其坐標(biāo)值用數(shù)組Set_x保存起來(以X坐標(biāo)為例)。校準(zhǔn)過程中讀出的邏輯坐標(biāo)值則用數(shù)組Read_X存儲(chǔ)。最后求出邏輯坐標(biāo)與物理坐標(biāo)的比例系數(shù):

K1=(Read_x-Read_x[0])/Set_X-Set_x[0]);

K2=(Read_X-Read_X)/Set_X-Set_x);

KX=(K1+K2)/2; ∥對(duì)兩次運(yùn)算的值求平均得到最終的X比例系數(shù)

求得比例系數(shù)后,再以設(shè)置的第5點(diǎn)作為基準(zhǔn)點(diǎn)(Set_X),這樣就可求出任意觸摸點(diǎn)的物理坐標(biāo):

X=(ReadX-Read_X)/KX+Set_X;

同理,也可求出Y軸的物理坐標(biāo)。

2.2 Modbus通信協(xié)議

本系統(tǒng)采用Modbus作為手柄控制器與核心板之間的通信協(xié)議。Modbus通信使用主-從技術(shù),即僅一設(shè)備(主設(shè)備)能初始化傳輸(查詢),其它設(shè)備(從設(shè)備)根據(jù)主設(shè)備查詢提供的數(shù)據(jù)作出相應(yīng)反應(yīng),主機(jī)查詢和從機(jī)回復(fù)的消息結(jié)構(gòu)如圖7所示。主設(shè)備可單獨(dú)和從設(shè)備通信,也可以廣播方式和所有從設(shè)備進(jìn)行通信。如果單獨(dú)通信,則從設(shè)備返回一消息作為回應(yīng);而如果是以廣播方式查詢。則不作任何回應(yīng)。Modbus協(xié)議建立了主設(shè)備查詢格式,包括設(shè)備(或廣播)地址、功能代碼、所有要發(fā)送的數(shù)據(jù)錯(cuò)誤檢測(cè)域。從設(shè)備回應(yīng)消息也由Modbus協(xié)議構(gòu)成,包括確認(rèn)要行動(dòng)的域、任何要返回的數(shù)據(jù)、和錯(cuò)誤檢測(cè)域。如果在消息接收過程中發(fā)生錯(cuò)誤,或從設(shè)備不能執(zhí)行其命令,那么,從設(shè)備將建立一個(gè)錯(cuò)誤消息并把它作為回應(yīng)發(fā)送出去。

Modbus協(xié)議有ASCII和RTU兩種傳輸模式,但在同一個(gè)Modbus網(wǎng)絡(luò)上的所有設(shè)備都必須選擇相同的傳輸模式和串口參數(shù)。本設(shè)計(jì)采用RTU模式,即在消息中的每8 Bit字節(jié)都包含兩個(gè)4 Bit的十六進(jìn)制字符,因而在同樣的波特率下,可比ASCII方式傳送更多的數(shù)據(jù)。RTU模式的消息結(jié)構(gòu)如圖8所示。當(dāng)手柄控制器檢測(cè)到有按鍵被按下時(shí),就將被按下鍵的鍵碼按RTU消息幀的結(jié)構(gòu)并通過串口發(fā)送給核心板。核心板接收到手柄控制器發(fā)送的信息后,首先進(jìn)行CRC校驗(yàn),校驗(yàn)正確后,核心板將根據(jù)鍵碼進(jìn)行相應(yīng)操作,并且回應(yīng)手柄控制器,若CRC校驗(yàn)出錯(cuò),則核心板回應(yīng)手柄控制器錯(cuò)誤信息,從而完成一次通信后,系統(tǒng)便等待下一次通信。

3 結(jié)束語

本文所設(shè)計(jì)的人機(jī)接口通過實(shí)際使用證明其通訊穩(wěn)定可靠,操作簡(jiǎn)單方便,完全可以滿足醫(yī)用數(shù)據(jù)采集系統(tǒng)的要求。并且該設(shè)計(jì)具有很強(qiáng)的移植性,可以根據(jù)使用系統(tǒng)的復(fù)雜性進(jìn)行完善。因而具有相當(dāng)廣泛的使用范圍。

責(zé)任編輯:gt

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 控制器
    +關(guān)注

    關(guān)注

    112

    文章

    16104

    瀏覽量

    177080
  • 接口
    +關(guān)注

    關(guān)注

    33

    文章

    8447

    瀏覽量

    150724
  • 觸摸屏
    +關(guān)注

    關(guān)注

    42

    文章

    2284

    瀏覽量

    115796
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    觸摸屏控制芯片ADS7843中文資料

    觸摸屏控制芯片ADS7843中文資料
    發(fā)表于 08-16 15:34

    8051單片機(jī)驅(qū)動(dòng)ADS7846/ADS7843芯片

    [table][tr][td] 8051單片機(jī)驅(qū)動(dòng)ADS7846/ADS7843芯片,ADS7846/7843
    發(fā)表于 07-19 04:36

    使用LM3S3748芯片,但是I2C讀取數(shù)據(jù)不正常,請(qǐng)高手支招!!

    I2C問題本人使用LM3S3748芯片, 使用內(nèi)部的I2C1模塊做主機(jī), 訪問從機(jī)模塊,從機(jī)也是TI的芯片, 是數(shù)字電源芯片(UCD3028),現(xiàn)在遇到的問題是:I2C讀取數(shù)據(jù)不正常,
    發(fā)表于 04-09 09:05

    求一款ADS7843觸摸屏控制器的設(shè)計(jì)方案

    ADS7843觸摸屏控制器的工作原理是什么?觸摸屏輸入系統(tǒng)由哪些部分組成?觸摸屏控制器的控制方式有哪幾種?
    發(fā)表于 04-20 06:22

    ADS7843無中斷響應(yīng)是什么原因造成的

    ADS7843 無中斷響應(yīng)問題定位問題描述使用stm32f207 + ADS7843 實(shí)現(xiàn)觸摸屏,發(fā)現(xiàn)觸摸屏每次斷電之后都不好用,但是一旦好用了,不斷電就會(huì)一直好用。有時(shí)候讀取的數(shù)據(jù)一直是0xff
    發(fā)表于 03-02 07:04

    ADS7843 pdf datasheet (TOUCH S

    The ADS7843 is a 12-bit sampling analog-to-digitalconverter (ADC) with a synchronous serial
    發(fā)表于 12-19 19:14 ?75次下載

    ads7843中文資料

    ads7843是Ti公司生產(chǎn)的4線電阻觸摸屏轉(zhuǎn)換接口芯片。它是一款具有同步串行接口的12位取樣模數(shù)轉(zhuǎn)換器。在125KHZ吞吐速率和2.7V電壓下的功耗為750UW,而在關(guān)閉模式下的功耗
    發(fā)表于 04-10 08:51 ?356次下載

    ADS7843觸摸屏接口

    簡(jiǎn)單介紹了ADS7843的功能特點(diǎn)和工作原理,探討了ADS7843觸摸屏接口芯片的模式選擇和應(yīng)用技巧Œ最后給出了基于該系統(tǒng)的一個(gè)實(shí)際使用方案.
    發(fā)表于 04-10 08:56 ?6次下載

    ADS7843的功能特點(diǎn)和工作原理及應(yīng)用

    ADS7843的功能特點(diǎn)和工作原理及應(yīng)用:摘要:簡(jiǎn)單介紹了ADS7843的功能特點(diǎn)和工作原理,探討了ADS7843觸摸屏接口芯片的模式選擇和
    發(fā)表于 10-02 17:51 ?87次下載

    ADS7845,pdf(ADS7843: Touch Scr

    The ADS7843 is a 12-bit sampling Analog-to-Digital Converter (ADC) with a synchronous serial
    發(fā)表于 06-10 10:34 ?43次下載

    觸摸屏控制芯片ADS7843中文文檔

    觸摸屏控制芯片ADS7843中文文檔 不收積分,需要的看下
    發(fā)表于 11-23 18:16 ?46次下載

    LM3S3748_IAR工程

    LM3S3748_IAR工程源代碼,有需要的下來看看。
    發(fā)表于 05-20 15:55 ?10次下載

    LM3S3748開發(fā)板原理圖

    LM3S3748開發(fā)板原理圖,下來看看
    發(fā)表于 12-14 22:08 ?0次下載

    ADS7843一款12位采樣模數(shù)轉(zhuǎn)換器(ADC)數(shù)據(jù)表

    電子發(fā)燒友網(wǎng)站提供《ADS7843一款12位采樣模數(shù)轉(zhuǎn)換器(ADC)數(shù)據(jù)表.pdf》資料免費(fèi)下載
    發(fā)表于 07-27 09:40 ?0次下載
    <b class='flag-5'>ADS7843</b>一款12位采樣模數(shù)轉(zhuǎn)換器(ADC)數(shù)據(jù)表

    LM3S3748微控制器數(shù)據(jù)表

    電子發(fā)燒友網(wǎng)站提供《LM3S3748微控制器數(shù)據(jù)表.pdf》資料免費(fèi)下載
    發(fā)表于 08-06 11:52 ?0次下載
    <b class='flag-5'>LM3S3748</b>微控制器數(shù)據(jù)表