關 閉

        新聞中心

        EEPW首頁 > 工控自動化 > 設計應用 > 一種基于ADC的高性價比鍵盤輸入設計

        一種基于ADC的高性價比鍵盤輸入設計

        作者: 時間:2011-06-23 來源:網絡 收藏

        2 硬件設計
        實際的硬件電路如圖2所示。為了提高按鍵響應速度和減輕CPU掃描按鍵的負擔,增加一個比較器,當按鍵被按下時比較器輸出信號觸發中斷,在中斷中第一時間獲得鍵值。這樣,既避免了把按鍵程序放到主程序中循環查詢過多而占用CPU資源,又提高了CPU的利用率。當然,為了節省硬件成本,也可以不要比較器。

        本文引用地址:http://www.104case.com/article/202443.htm

        c.JPG


        分壓電阻越大越省電,但是實際應用時需要考慮阻抗,不能太大,這里給出經驗值10 kΩ。另外,電壓比較器還要考慮到運放的特性,為確保第一個鍵按下時運放同相端電壓低于4 V,電阻R1的值就要相對大一些,后面的電阻可以取相同的值。為了減小按鍵抖動,在電路中串聯一個電容C1。當沒有鍵按下時,相當于懸空,需接一上拉電阻。這里R21取220 kΩ。

        3 軟件設計
        軟件設計是按鍵的處理核心,一旦檢測到的A/D值不準,按鍵就會得到錯誤的鍵值,帶來誤操作。當按鍵數目很多時,這種現象會更突出。
        ADC按鍵其實就是一個數據采集過程,軟件需要完成數據采集、數據處理、按鍵解析這3個步驟。首先對按鍵要有一個認識,它是一個機械開關,在鍵按下和彈起的過程中很難做到理想的導通和斷開,通常有一個抖動過程,需要經過一段時間才能真正地閉合和斷開。
        在本設計中使用的是自帶8路10位ADC的MCUSTC90C52AD。驅動起來比較簡單,只需要配置幾個寄存器就可以進行A/D轉換了,并且轉換速度很快。ADC代碼如下:
        d.JPG



        關鍵詞: ADC 性價比 鍵盤 輸入

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 沂水县| 富顺县| 宾阳县| 怀柔区| 仁怀市| 桐柏县| 新绛县| 通江县| 吉安县| 普安县| 彩票| 嫩江县| 茌平县| 永新县| 仙居县| 漳州市| 迁安市| 中超| 明溪县| 肥西县| 财经| 江津市| 项城市| 平乡县| 遂溪县| 靖江市| 黑山县| 平凉市| 福泉市| 嘉定区| 宁夏| 剑阁县| 农安县| 株洲县| 台江县| 日喀则市| 潞城市| 舒兰市| 姜堰市| 莆田市| 中方县|