新聞中心

        EEPW首頁 > 模擬技術 > 設計應用 > 構建DS1803/DS1805數字電位器的按鍵控制器

        構建DS1803/DS1805數字電位器的按鍵控制器

        作者: 時間:2007-08-01 來源:網絡 收藏

        概述

        本應用筆記介紹了一種使用幾個按鍵和一個微控制器控制DS1803或DS1805的簡易方法。Microchip PIC12F509微控制器用于連接四個開關和數字器,僅需極少的元件。


        硬件

        該應用的硬件原理圖如圖1、圖2所示。PIC12F509有6個I/O口,用于SDA、SCL輸出控制、一個LED和4個開關的接收。

        圖1 給出了PIC12F509的內部控制原理圖,R1 、R2和R3為上拉電阻,使用PIC12F509時無需安裝這些電阻。圖2是DS1803的電路連接,跳線用于選擇地址引腳、分離共用的VCC (VDD)以及斷開SDA、SCL連接。

        3個開關為觸摸式按鍵,用于增(UP)/減(DWN)和中間值(MID)控制。當按鍵按下時,微控制器通用I/O (GP0、GP1、GP3)中的一路拉低。由于這些I/O均有內部上拉(可選擇),在器件已進入低電流SLEEP模式時可以產生中斷喚醒,做出正確的I/O識別。另外一路輸入開關為雙刀雙擲配置,用于觸發(fā)GP2,用來選擇POT0或POT1的編程。

        SDA、SCL和LED輸出分別分配由GP5、 GP4和GP0控制。 SDA和SCL具有4.7kΩ上拉電阻,直接連接到數字器的通信引腳。LED 和MID瞬時開關均采用GP0引腳控制。GP0引腳在大部分時間內作為輸入,MID按鍵可將其拉至低電平。但如果一個或兩個其它觸摸式按鍵被按下,該引腳輸出低電平,使LED點亮。通過這種方式,LED在MID按鍵按下時點亮,或在其它按鍵按下時由PIC點亮。

        圖1. PIC12F508接口電路

        圖2. DS1803數字電位器與PIC控制器的連接

        固件

        本工程固件用匯編語言編寫,在MPLAB IDE (7.31版本)上編譯。目前此工具由Microchip免費提供,整個程序包括:程序空間(閃存)低于512個指令,數據空間(RAM)為11位置數據。

        程序分為5塊:初始化、讀數據、UP、DWN和MID。由于這款PIC不提供任何中斷,固件簡單地循環(huán)運行,連續(xù)檢測輸入引腳。程序通過內部延時和邏輯流程自動完成開關去抖。

        PIC上電或喚醒后(如果SLEEP使能)執(zhí)行一次初始化程序。初始化程序執(zhí)行完畢后,工作寄存器、標志位和變量均被置為已知狀態(tài)。這些指令執(zhí)行完畢后,其它幾個程序可以連續(xù)循環(huán),檢測開關狀態(tài),通過I2C接口讀、寫新的電位器值。

        只有在RD_FLAG置位后,才能通過I2C讀取電位器值。該標志位在初始化時被置位,按鍵按下時可調用電位器寄存器的寫操作,寫入一個新的數值。只有在電位器數值發(fā)生變化或上電時才進行I2C讀操作,所以在增、減控制和中點設置按鍵均沒有按下時,總線不會出現(xiàn)多余的通信。例如,如果數字電位器用于控制電源的參數,連接按鍵以實現(xiàn)在線編程。執(zhí)行I2C寫操作之前,可讀取當前的電位器值。每當I2C寫操作完成后,RD_FLAG重新置位,產生I2C讀操作讀取新的電位器值。

        讀程序后按順序執(zhí)行UP、DWN和MID指令。執(zhí)行每個子程序時將相應的引腳拉至低電平。如果相應的引腳為高電平,將迅速退出子程序,不產生任何I2C通信。如果檢測到低電平,則運行流程圖所示程序。

        可從Dallas Semiconductor的FTP網站下載固件流程圖(PDF)、源代碼(ASM)和可執(zhí)行指令(HEX),獲取本工程設計的完整說明。

        http://files.dalsemi.com/system_extension/AppNotes/AN4011
        功能說明

        本工程的固件和硬件在設置DS1803/DS1805電位器時允許進行多種不同的操作。開關和LED的功能如下:

        結論

        本應用筆記介紹了DS1803或DS1805電位器的使用和控制方法。系統(tǒng)將按鍵輸入轉換為I2C指令,完成增、減和中點設置。本設計無需計算機主機,只需要少量的外部元件即可實現(xiàn)電位器控制。

        有關該應用筆記的問題/說明/建議,請發(fā)送email至MixedSignal.Apps@dalsemi.com。



        關鍵詞: 電位 阻值 信號 評估

        評論


        相關推薦

        技術專區(qū)

        關閉
        主站蜘蛛池模板: 隆尧县| 濮阳市| 普定县| 察雅县| 巫山县| 神农架林区| 武夷山市| 武义县| 中超| 凤山县| 盖州市| 尚志市| 普安县| 万盛区| 巴塘县| 广安市| 连平县| 安乡县| 都昌县| 德化县| 东阳市| 靖州| 尼勒克县| 门源| 黑水县| 新乡县| 如东县| 石河子市| 嵩明县| 依安县| 蒲城县| 庄河市| 罗田县| 富川| 北安市| 贵港市| 威远县| 景宁| 迁西县| 葫芦岛市| 仪征市|