許多基于MCU的產品使用觸摸和簡單的LCD輸出來實現用戶界面設計,適用于消費,工業和家電應用。這些設備的例子就在我們身邊:恒溫器,警報/時鐘,心率監視器,葡萄糖監視器,計算器,電子玩具,安全系統,萬用表,微波爐和洗衣機/干衣機等。現代MCU采用專用硬件功能來簡化這些類型設計的實現,包括觸摸傳感器接口和面向段的LCD控制器。
為了幫助工程師實現基于這些功能的用戶界面,供應商還提供了廣泛的軟件功能生態系統,軟件庫,參考設計,目標開發工具和開發板。本文概述了實現觸摸感應(電阻式和電容式觸摸)以及基于段的LCD控制所需的一些最重要的硬件功能。還介紹了支持生態系統中的一些關鍵元素示例,以幫助為特定用戶界面設計選擇最佳解決方案。
段式LCD控制
MCU幾乎用于驅動段的每個設備面向LCD的顯示器,由于其低功耗和編程靈活性。即使是具有8位CPU的MCU也具有許多設計所需的計算能力和通用接口。飛思卡爾MC9S08LC60增加了一些特殊用途功能,進一步簡化了基于段的LCD用戶界面的實現。快速瀏覽一些關鍵的LCD控制器功能是評估和比較其他設備中類似功能的良好基準。
在實現基于段的LCD控制器功能時,兩個最重要的參數可能是支持的LCD面板類型和可以驅動的段數。有些LCD面板需要3 V或5 V,而能夠驅動任一電壓電平的MCU(如MC9S08LC60)可提供額外的靈活性。可以驅動的細分數量和組織支持也是需要靈活性的領域。 MCS08LC60最多可支持4個背板(主選擇信號)和最多41個前端(段選擇信號)。段的總數是背板數量和前板數量的乘積。請注意,潛在的字符數取決于每個字符的段數以及支持的段數。有用的表格,如圖1中MC9S08LC60所示,可用于識別支持的各種組合。請注意,封裝上可用的引腳數也會影響段的總數,從而影響潛在字符的數量。
圖1:飛思卡爾MC9S08LC60LK的顯示選項(由飛思卡爾提供)一旦確定了LCD面板的類型和段/字符的數量,就需要探索LCD控制器的一些其他關鍵特性。空間受限設計中的一個有用特性是在MCU本身上包含LCD驅動器。這消除了對外部驅動器和相關電源電路的需要。 MC9S08LC60具有片上電荷泵(用于產生輸出電壓,是參考電壓的兩倍或三倍),為LCD面板產生3 V或5 V電源電壓。在片上包含電荷泵還簡化了LCD模塊波形的產生,以提高功率效率。內部ADC還可用于監控LCD功率水平,以通過軟件調整對比度,從而進一步提高功效當功率效率是關鍵要求時,甚至可以在MCU處于低功率狀態時操作LCD。例如,即使MCU處于Wait或Stop3低功耗狀態,MC9S08LC60也可以生成LCD波形。在這些低功耗狀態下,片上專用LCD SRAM的內容將自動顯示在LCD上,無需CPU干預。靈活的LCD幀頻率和占空比設置也有助于降低與LCD相關的功耗。
除了提供高級硬件功能外,大多數供應商還提供先進的工具,開發套件和參考設計,以簡化簡單用戶的實施接口。例如,德州儀器(TI)為使用TI MSP430系列的目標應用提供了一系列套件和參考設計。針對TI MSP430F6736的參考設計和評估模塊可用于智能計量應用,它為各種面向段的計量設計提供了出色的起點。電路板圖和設計相關框圖如圖2所示。
圖2:具有分段LCD接口的智能電表參考設計(由德州儀器公司提供) 。
TI MSP430F6736上的LCD控制器可以驅動多達320個段,具體取決于器件上可用的引腳數。支持的LCD類型包括靜態和多路復用型設備。多路復用樣式最多使用8個常用信號,以實現一組最多40個單獨的段控制。在上圖中,六個7段數字中的每一個可以用不同的公共信號啟用,以簡化數字結果的顯示。可以使用剩余的兩個公共信號選擇剩余的段(kWh,kW等),并根據它們的顯示時間進行共享。規劃段布局中的一些想法可以節省大量的數據格式和轉換。理想情況下,LCD控制需要很少的處理,因此CPU可以盡可能地保持低功耗模式。
TI MSP430F6736具有多種自動化LCD控制功能,包括自動信號生成(因此CPU)不需要參與低級顯示操作),可配置幀頻,使用單獨的閃爍存儲器(靜態,2到4多路復用LCD)自動段閃爍,集成電荷泵和1/3的分數偏置控制設置, VLCD設置的1/2和2/3。有四個中斷源可用于簡化顯示存儲器的更新,以避免在顯示周期內發生變化。用于設置中斷的示例程序包含在數據表中,并顯示逐周期延遲,以幫助您制作最有效的中斷處理程序。
TI提供了豐富的示例代碼,其中包含智能電表參考設計,并包含預構建的項目,使用IAR編譯器。包含了構建過程的演練,因此不需要以前使用IAR編譯器的經驗來從構建示例設計和查看演示中受益。還包括完整的原理圖,以便輕松利用已經實施和測試的電路板設計和布局。
觸摸界面
使用分段LCD向用戶顯示信息是一種出色的輸出設備,但大多數用戶界面也需要用戶輸入。觸摸界面提供最直觀的輸入樣式之一,通常比機械開關或指示器更強大。制造商正在為MCU添加功能,以實現直觀的觸摸界面。 Silicon Labs EFM32WG990F256具有一些針對電阻式觸摸界面的高級功能Silicon Labs EMF32WG990F256上提供的低能量傳感器接口(LESENSE)與其他外設配合使用,可使用可配置傳感器執行許多自主測量。 LESENSE使用片上模擬比較器與DAC一起測量傳感器信號,以生成準確的參考電壓或執行傳感器激勵。 LESENSE包含自己的定序器,計數和比較塊,以及用于配置和結果存儲的RAM塊。定序器處理與其他外圍設備的交互以及傳感器測量的定時。計數和比較塊用于在與可配置閾值進行比較之前對來自模擬比較輸出的脈沖進行計數。為了自主分析傳感器結果,LESENSE解碼器可以定義一個具有多達16個狀態的可編程狀態機,以及狀態轉換時的可編程動作。這允許解碼器實現寬范圍的解碼方案,例如正交解碼。專用RAM模塊用于存儲配置和測量結果,支持相對較大的結果緩沖器,使芯片能夠在收集傳感器數據的同時長時間保持低能量模式。 LESENSE可以在多種低功耗模式下工作,并可以在可配置事件中喚醒CPU。
LESENSE定序器的操作原理如圖3所示。基本的電阻感應方法是簡單地測量變量上的電壓電阻器,其電阻根據環境因素而變化,例如溫度,光或機械位置。具有可變電阻器的觸摸傳感器僅根據觸摸板上的力(或不足)來改變電阻。 (一些最復雜的觸摸界面也可以根據來自多個傳感器的讀數來定位觸摸的位置,但理論與單個開/關開關的理論相同)。電阻檢測接口的單引腳版本顯示在圖3的左上方。
電容放置在檢測引腳的輸出端,與電阻傳感器“S”并聯。在激勵階段期間,在輸出上施加電壓,對電容器充電。電荷停留在電容上,然后引腳切換到測量模式。如果傳感器處于活動狀態(并且傳感器的電阻因此降低),則電壓放電更快,如圖3左下圖所示。如果傳感器處于非活動狀態(并且傳感器電阻較大) ,電壓電平放電更慢。可以對輸出引腳上的電壓測量進行定時(在一些校準之后),使得樣本將指示傳感器是否已被觸摸。在圖3右上側的配置中,使用了兩個引腳。 LES_ALTEXn引腳用于激勵傳感器,ACMPn引腳用于測量電阻分壓器上的電壓。得到的測量值將指示傳感器是處于高阻態還是低阻態以確定傳感器是否已被觸摸。
圖3:使用Silicon Labs EFM32WG990F256的電阻式觸摸感應(由Silicon Labs提供。)LESENSE外設可以使用非常低的功率從CPU的其余部分自主運行。 CPU可以從不需要更高級別響應的傳感器事件中“屏蔽”,以便管理接口消耗最少的能量。專用SRAM甚至可以緩沖大量讀數,以便CPU可以在低功耗狀態下等待,直到有足夠的樣本可用于批量處理。 EFM32WG-DK3850開發套件包括各種示例程序,可用作自定義接口設計的起點。
Atmel提供各種“觸摸就緒”的MCU(例如ATSAM3U4CA-AU) -ND)并且不僅具有廣泛的硬件功能來支持電容式觸摸,而且可以與功能強大的QTouch庫1結合使用,以使用高級結構快速實現觸摸界面。設計人員可以在各種Atmel MCU上使用通用API嵌入電容式觸摸按鈕,滑塊和滾輪功能。電容觸摸通常使用圖4中所示的技術來實現。如圖的左側所示,電容基于覆蓋物朝向傳感器按壓的量而變化。可以測量在圖的右側示出的結果信號變化以確定是否正在觸摸傳感器。使用更復雜的測量,可以確定滑塊,輪子甚至二維運動的運動(對于觸摸板或觸摸屏)。
圖4:使用Atmel QTouch技術的電容式觸摸實現(由Atmel提供)。
Atmel QTouch Library提供了關鍵的高級功能,用于初始化,配置,校準和測量電容式觸摸傳感器,如庫中可用的API調用列表所示。傳感器的典型呼叫序列顯示在圖5的右側。請注意,可以初始化多個傳感器,然后在單個傳感器回路中進行測量。實現通用元素(如觸摸界面)的庫方法是一個功能強大的方法,可以顯著提高生產力,并且我們可以期待看到其他常見接口,其中低級硬件細節可以輕易地從用戶“隱藏”。 br》 Atmel還提供了一個名為“觸摸解決方案概述”的產品培訓模塊,以幫助工程師進行設計。
圖5:Atmel QTouch API示例和典型的調用序列。
總結
在許多MCU設計中都可以找到面向段的LCD和觸摸接口。制造商正在提供功能,開發系統,參考設計和高級軟件,以便在您的下一個設計中盡可能簡單地包含這些功能。
-
傳感器
+關注
關注
2550文章
51071瀏覽量
753315 -
mcu
+關注
關注
146文章
17141瀏覽量
351097 -
控制器
+關注
關注
112文章
16350瀏覽量
177944 -
lcd
+關注
關注
34文章
4426瀏覽量
167442
發布評論請先 登錄
相關推薦
評論