采用飛思卡爾Freedom開發平臺的觸摸界面(1)
最近由Erich Styger撰寫的一篇博客文章介紹了飛思卡爾Freedom開發平臺,這是一款面向Kinetis L系列微控制器(MCU)的新型經濟高效開發平臺。這款小型81 mm x 54 mm的線路板由飛思卡爾Kinetis L系列MCU和大量實用的外設組成,可以促進新型低功耗嵌入式軟件應用的設計水平。為您提供用于實驗的板載外設包括以下部件:
本文引用地址:http://www.ex-cimer.com/article/142531.htm * 全速USB 2.0接口(第二個USB接口作為調試端口)
* 飛思卡爾MMA8451Q慣性傳感器
* 提供MCU信號訪問權限、實現附加屏蔽的I/O接頭
* RGB LED,帶有每種顏色的獨立控制行
* 可以執行滑塊的電容敏感的觸摸板
上述提及的最后一種外設——觸摸板引起了我的注意。此前我完成了觸摸接口的工作,特別是在編寫iPhone應用程序的時候。如你所預料的一樣,面向iOS設備的Apple Cocoa Touch API僅允許在極高電平下能夠訪問觸摸屏幕??梢栽诘碗娖较逻M行觸摸接口的實驗,這個機會激起了我的興趣。
棘手的硬件
在采用外設操作與裸金屬關系密切的工作時,第一個步驟便是研究硬件接口。除非屬于片上外設,這需要獲得接線圖,以便了解外設與MCU之間的關系。除此之外,你還需要MCU參考手冊,它會描述外設控制與數據寄存器的情況,以及它們駐留在存儲器映射的位置。我找到該線路板產品頁面的FRDM-KL25Z線路板電路圖。KL25子系列參考手冊內包括與寄存器和存儲器映射相關的其他詳細信息。
圖1展示了該款開發平臺觸摸板接口的簡化結構框圖。線路板上的觸摸板區域采用了一對電容敏感式電極,它可以移動滑塊。電極由兩個形狀類似直角三角形的導體元件組成。由于觸摸板區域在生產過程中進行了輕微的改造,兩個電極(而非元件)的布局可以降低微小的測量誤差。每個電極都擁有通向引腳的自身信號線,它屬于MCU的通用型I/O (GPIO)模塊。端口控制和中斷模塊(PORT)可以配置GPIO模塊,選擇電極線并且設置它們的運行?! ?/p>
因為這會是一個裸金屬程序,我需要一種簡單的方式來顯示滑塊的運動。我計劃占用RGB LED實現這個目的,這就是為何這個部件及其連接在圖中如此所示的原因。
這其中涵蓋了外部硬件和連接線情況。我會繼續描述內置在MCU之中的觸摸感應輸入(TSI)模塊。該線路板采用Kinetis MKL25Z128VLK4 MCU作為其主處理器。它是一款基于ARM Cortex-M0+內核的低功耗32位器件,帶有128 KB的閃存和16 KB的RAM。這款MCU可以提供大量十分有用的片上外設,其中包括16位ADC、12位DAC、各種定時器、USB OTG控制器、兩個I2C模塊、多個UART和TSI模塊。
linux操作系統文章專題:linux操作系統詳解(linux不再難懂)
評論