a一级爱做片免费观看欧美,久久国产一区二区,日本一二三区免费,久草视频手机在线观看

新聞中心

EEPW首頁 > 嵌入式系統 > 設計應用 > 單片機應用中的實用技巧(二)

單片機應用中的實用技巧(二)

作者: 時間:2012-09-29 來源:網絡 收藏

5、用一個帶A/D的I/O口實現16個鍵盤輸入。

許多帶有A/D轉換功能,在實際運用中,如果利用其中的一路A/D轉換,可以很方便地實現4×4鍵盤輸入。

如圖一所示,由于鍵盤的縱向電阻R1~R4的阻值為遞增狀態,其增幅超過橫向最大阻值電阻R8,因此當按鍵從S1至S16按下時,縱向電阻與橫向電阻串聯的阻值也會相應由低到高增加,如S1按下時串聯阻值為11k,S2按下時阻值為13.9k,S5按下時為25k,…,由于每個鍵按下后的串聯阻值均不同,并且依按鍵的次序呈逐漸增大趨勢,經與R9分壓后,會在的輸入端產生不同的電壓值,該電壓經過A/D轉換后進行相應處理,即可判斷出是哪個鍵按下。

單片機應用中的實用技巧(二)

在實際應用中,由于阻值與電壓為非線性關系,因此在電阻選用及編程時需要注意,同時A/D轉換應進行相應的軟件處理(如重復檢測兩次才確認),以消除按鍵抖動引起的誤判斷。

6、用軟件產生PWM實現模擬量輸出。

應用中,常需要通過輸出模擬量來對外部進行控制,但增加D/A轉換芯片不僅需要占用I/O口資源,同時也會使成本增加。下圖提供一種通過單片機的定時器中斷來用軟件的方法產生PWM,并經過濾波與跟隨電路產生準確的模擬量輸出。

單片機應用中的實用技巧(二)

該電路只用單片機的一個I/O腳實現D/A轉換功能。其輸出的模擬量電壓Vout=VDD*D1/(D1+D2)。該輸出電壓帶有紋波,當RC值足夠大時,該紋波值幾乎為零,可忽略不計。D1與D2可通過單片機內部的定時器中斷來準確產生。該模擬量從輸出PWM到穩定狀態,需要一定的時間,若要縮短達到穩定的時間,可以減小R1和C1的值,但紋波會增大,這在設計時需要注意。

7、用2個I/O口實現多按鍵掃描及鍵盤喚醒

在一些低功耗的單片機應用場合中,常常需要讓單片機平時工作于睡眠狀態,而在有鍵盤輸入時喚醒單片機以做相應控制。單個按鍵喚醒單片機容易實現,但多個按鍵都能喚醒單片機有一定的困難,本文提供一種解決該問題的思路。

單片機應用中的實用技巧(二)

其工作過程說明如下:

1. 單片機的GP1口具有電平變化喚醒單片機功能,單片機在進入睡眠前將GP1口設置為輸入狀態,GP2設置為輸出高電平狀態。

2. 當任一鍵被按下時,GP1口將變為高電平,使單片機喚醒。此時將GP2口設置為輸出低電平,短延時,使C1電容放電。

3. 將GP1設置為輸出高電平,GP2設置為輸入狀態,定時器開始記時。

4. 當GP2由低電平變為高電平的瞬間,記錄定時器時間。由于不同的按鍵按下時,分壓器電路改變了RC電路的電壓上升速度,因此根據測得的定時器值的大小通過查表法可判斷出是哪個鍵被按下。

以上方法只適用于單鍵判斷,當多鍵同時按下時是無法判斷的。該方法需要占用單片機的定時器資源。

8、單片機的自動關機功能及開機按鍵兼做功能按鍵。

在許多電池供電的應用場合,要求電路平時處于關機狀態以節省電能,而當開機鍵按下后單片機才開始工作,工作完后又能自動關機。

下圖所示電路即可完成此種功能。在上電后,由于V1處于關斷狀態,單片機并不耗電,整個電路所消耗電流只有不到10μA。

當S1按下后,V1導通,78L05獲得電源,輸出穩定的5V使單片機開始工作,同時單片機的GP0送出高電平,使V2導通,這使V1保持在導通狀態,單片機獲得持續的電源進行工作,當單片機任務處理完成后,單片機的GP0輸出低電平,將V2關斷,使V1也處于關斷狀態,單片機的電源又被關斷,電路又恢復到低功耗狀態,其消耗電流小于10μA。

在單片機獲電工作后,原作為電源開關按鍵的S1也可以作為功能按鍵來使用,當S1未按下時,GP1口為高電平,而當S1按下后,GP1變為低電平,因此單片機可以檢測該按鍵,并做相應的功能控制。例如可將S1定義為開關機按鍵或其它功能按鍵。

單片機應用中的實用技巧(二)



關鍵詞: 單片機 實用技巧

評論


相關推薦

技術專區

關閉