2017年8月25日 星期五

觸摸感應Sensor

要實現一個簡易的觸摸感應Sensor來控制其他裝置,可以透過簡單的555 ICMCU來實現,
US6844713 B2專利為用來做Stud finder的應用,是用來做牆體木材角料的偵測,但其實可以透過這樣的應用將其改成作為觸摸控制的應用!

要如何實現觸控可以透過規劃555振盪器在無穩態工作模式,

555無穩態電路
無穩態工作模式下555計時器可輸出連續的特定頻率的方波。電阻R1接在VCC與放電引腳(引腳7)之間,另一個電阻(R2)接在引腳7與觸發引腳(引腳2)之間,引腳2與閾值引腳(引腳6)短接。工作時電容通過R1R2充電至2/3 VCC,然後輸出電壓翻轉,電容通過R2放電至1/3 VCC,之後電容重新充電,輸出電壓再次翻轉。
無穩態模式下555振盪器輸出波形的頻率由R1R2C決定:
輸出高電平時間由下式給出:
輸出低電平時間由下式給出:
R1的額定功率要大於.
對於雙極型555而言,若使用很小的R1會造成OC門在放電時達到飽和,使輸出波形的低電平時間遠大於上面計算的結果。為獲得占空比小於50%的矩形波,可以通過給R2並聯一個二極體實現。這一二極體在充電時導通,短路R2,使得電源僅通過R1為電容充電;而在放電時截止以達到減小充電時間降低占空比的效果。

一般自電容感測都是用ADC來檢測因為電容的變化量造成充電時間的改變,因此在取樣時會因為電容變化與沒有電容變化時有電壓差,但本文範例是以偵測震盪頻率為主,當555在固定的電容底下會產生固定的震盪頻率稱為Base line,我們可以將固定電容改成pad(copper pad),以pad當作電容來產生震盪頻率震出Base line的頻率,當有手指觸摸到pad時,電容值改變了,因此震盪頻率改變,與Base line產生頻率差異,藉此可以用MCU計算出變化量,進而產生對應的控制!

以下是範例程式



新增說明文字





STM32於IAR 9.3以後的版本將uart導向至printf

首先,請先參考如以下IAR提供的"在IAR Embedded Workbench中实现打印输出技術資料" https://www.iar.com/cn/knowledge/support/technical-notes/general/implementing-printf-ou...