你的位置:首頁 > RF/微波 > 正文

使用可編程振蕩器生成和控制系統(tǒng)時鐘

發(fā)布時間:2023-05-10 責(zé)任編輯:lina

【導(dǎo)讀】在處理器控制的系統(tǒng)中,功耗與處理器的時鐘速度成正比。如果處理器上的計算負(fù)載很小,則大部分功率都會被浪費。將處理器速度調(diào)制到盡可能慢的頻率,同時保持執(zhí)行手頭任務(wù)的最低計算能力可以減少這種浪費。本應(yīng)用筆記描述了使用DS1077通過PC主機控制來控制8051型微處理器的時鐘速度。


在處理器控制的系統(tǒng)中,功耗與處理器的時鐘速度成正比。如果處理器上的計算負(fù)載很小,則大部分功率都會被浪費。將處理器速度調(diào)制到盡可能慢的頻率,同時保持執(zhí)行手頭任務(wù)的最低計算能力可以減少這種浪費。本應(yīng)用筆記描述了使用DS1077通過PC主機控制來控制8051型微處理器的時鐘速度。

介紹

DS1077為固態(tài)CMOS振蕩器,能夠產(chǎn)生8kHz至133kHz的頻率 33.2MHz. 它可以用作固定頻率的獨立振蕩器,或用作處理器控制的頻率 發(fā)電機。兩個同步振蕩器輸出的頻率可由用戶調(diào)節(jié),子倍數(shù)為 主頻率通過使用兩個片上可編程預(yù)分頻器和分頻器。頻率和 模式設(shè)置可“即時”配置,并使用1077線串行接口存儲在EEPROM中,該接口可以 在一條2線總線上最多可容納0個DS1。兩個數(shù)字控制輸入,CTRL1077 和 CTRL3 也是 能夠控制頻率或模式。此外,DS1077L是4V版本的 DS87,能夠產(chǎn)生66.66kHz至3.5MHz的頻率。在其余部分 除非另有說明,否則DS1077的1077V和<>V版本均參考 作為DS<>。

本應(yīng)用筆記將舉例說明DS1077的使用實例。展示DS1077的使用方法代替晶體來為 8051 微控制器和微芯片 PIC 提供時鐘?微控制器。這 應(yīng)用筆記還將說明如何在單條1077線總線上使用多個DS2。最后,示例 8051 包括固件,以展示如何實現(xiàn)2線主站以及下層通信 與總線上每個DS1077通信的例程。

系統(tǒng)概述

圖1中的參考原理圖顯示了兩個相互獨立的系統(tǒng)。兩個系統(tǒng) 工作頻率由DS1077產(chǎn)生。在此示例中,盡管每個系統(tǒng)都獨立于 它們都由一個公共的2線主控器控制。該 2 線主站可以是更大主機的一部分 需要控制其子系統(tǒng)的系統(tǒng)。主站可以決定降低工作頻率 目前不需要的子系統(tǒng),以節(jié)省電力,在某些情況下減少熱量,或者可能甚至減少電磁干擾。有時使用DS1077可以避免高頻運行 整個大型系統(tǒng)的時鐘,如背板上的時鐘。分發(fā)相對容易和安全得多低頻 2 線總線。同樣,也可以設(shè)想使用DS1077來減少系統(tǒng)。工作頻率而不是微控制器(許多微型處理器會降低其速度甚至進(jìn)入低電平 當(dāng)前睡眠模式),因為DS1077可以降低整個系統(tǒng)的頻率,而不僅僅是微型獨自。綜上所述,使用DS1077的應(yīng)用可能很大很復(fù)雜,但為此,應(yīng)用可能很復(fù)雜。 應(yīng)用筆記中,示例原理圖已大大簡化,旨在說明幾點。它顯示了公共總線上的多個DS1077,也顯示了DS1077可以直接驅(qū)動一些流行的微控制器。

使用DS1077作為系統(tǒng)時鐘

在參考原理圖中,U1(DS1077Z-125)用于生成U3(8051 微控制器。用于開發(fā)附錄 A 中發(fā)現(xiàn)的固件的特定 8051 是 DS87C520.DS87C520的工作頻率高達(dá)33MHz。由于U1是125MHz版本 在DS1077中,OUT0只能產(chǎn)生125MHz、62.5MHz、31.025MHz和15.625MHz。雖然這會 如果我們的應(yīng)用只需要全速和半速(使用66MHz版本的DS1077),那就沒問題了, 但同樣,對于固件的開發(fā),希望將微控制器一直運行到千赫范圍。OUT0 沒有分頻器,只有一個除以 1、2、4 或 8 的預(yù)分頻器。另一方面,除了預(yù)分頻器之外,OUT1 還有一個分頻器,可以將頻率進(jìn)一步除以 2 到 1025。因此,選擇了 OUT1 來為 8051 計時。然后,OUT0 仍可用于為系統(tǒng)的其他組件提供時鐘。為了簡單起見,沒有使用 CTRL0 和 CTRL1,而是與 GND 相關(guān)聯(lián)。然而 請注意,如果使用 CTRL0 和 CTRL1 輸入禁用輸出或輸入,則必須小心 省電模式,因為微控制器的晶體輸入浮動會導(dǎo)致不必要的振蕩或 錯誤時鐘。


使用可編程振蕩器生成和控制系統(tǒng)時鐘
圖1.參考原理圖。


參考原理圖所示的第二個系統(tǒng)為U2,DS1077為U1的OSC4引腳提供時鐘。 PIC 微控制器。同樣,DS1077代替固定頻率晶體。此處使用的事先知情同意 示例可以工作在高達(dá) 20MHz 的頻率,因此與 8051 示例一樣,使用 OUT1 以利用 的 2-1025 分頻器,僅由 OUT1 提供。OUT0 可由 系統(tǒng)。但是,如果未使用任一輸出,因此未連接,則明智的做法是禁用 使用相應(yīng)的 CTRL 引腳未使用的輸出。這將導(dǎo)致供應(yīng)明顯減少 電流,以及降低不必要的EMI輻射的可能性。雖然,與 8051 系統(tǒng)一樣, 簡單性 CTRL0 和 CTRL1 未使用并接地。

像往常一樣,提供足夠的解耦很重要。同樣,重要的是 去耦電容C1和C2具有良好的高頻性能,并且物理位置很近盡可能使用短PCB走線,使每個DS1077都走線。

使用DS1077優(yōu)于晶體的優(yōu)勢

DS1077可能優(yōu)于晶體有幾個重要原因。一、DS1077 頻率可以改變。實際上,它可以即時更改,甚至可以禁用。其次,DS1077提供 雙路、同步、可單獨控制的輸出。此外,DS1077 無需使用雜亂的油箱晶體在其諧波頻率之一下工作時的電路(對于高于30MHz的晶體)。最后, DS1077比晶體更不容易受到振動的影響。

控制DS1077

DS1077可用于固定頻率應(yīng)用和變頻應(yīng)用。在固定頻率下 應(yīng)用中,不需要2線主站,CTRL輸入是可選的。但對于 需要控制頻率或模式、CTRL 輸入和/或 2 線主站的應(yīng)用必須 根據(jù)所需的靈活性使用。

CTRL0 和 CTRL1 輸入

如果應(yīng)用需要指示DS1077進(jìn)入關(guān)斷模式以節(jié)省能源,或者如果 應(yīng)用程序想要關(guān)閉(三態(tài))振蕩器輸出,則必須使用 CTRL0 和 CTRL1。 雖然沒有特定的2線命令進(jìn)入省電模式或禁用輸出,但有 可以在固件中完成的一些技巧以達(dá)到相同的結(jié)果。例如,當(dāng) CTRL 輸入是 在已知狀態(tài)下,可以設(shè)置或清除 MUX 寄存器中的相應(yīng)位,以打開和關(guān)閉所需的 功能。

2線接口

當(dāng)應(yīng)用需要生成除 1、2、4 或 8 以外的頻率時,則 2 線接口是必需的。與現(xiàn)有2線總線的接口很簡單。只需連接SDA和SCL(和GND)。確保 總線某處包含總線上拉電阻。這些是參考原理圖中的R1和R2。 雖然本例中使用了4.7kΩ電阻,但可能需要根據(jù)總線進(jìn)行調(diào)整。電容、總線上的設(shè)備數(shù)量以及所需的通信速度。但是,4.7kΩ 會 適用于大多數(shù)應(yīng)用程序。如果沒有現(xiàn)有的總線,則可以使用微型創(chuàng)建一個總線。附錄 A 中提供了 8051 微控制器的示例固件。此外,如果 2 線接口不會 在應(yīng)用中使用,確保SDA和SCL綁定到明確定義的邏輯電平,而不是離開 浮動。

請注意,在本例中,同一總線上有多個DS1077。為了2線主站為了與每個DS1077單獨通信,每個DS8都需要有一個唯一的地址??偩€中的三位寄存器允許總線上同時最多連接1077個DS1。U000被編程為地址為“2”,而U001 被編程為地址為“2”。有關(guān)1077線通信的示例,請參考DS1077或 DS<>L數(shù)據(jù)資料以及附錄A中列出的固件。

DS1077控制2線主機

讀到這里,人們可能想知道為什么在示例應(yīng)用中使用額外的2線主站。 當(dāng)有兩個精細(xì)的微控制器能夠生成所需的2線協(xié)議時 與DS1077通信。雖然可以做到,但很危險,必須格外小心。第一個所有,當(dāng)微控制器的頻率發(fā)生變化時,2線例程的時序也會發(fā)生變化。此外,就像 對于 8051 示例和 PIC 示例,某些微器件可能具有最低工作頻率規(guī)格 添加到最大頻率。最后,禁用輸出是不可能的,因為微會不再計時,因此無法再發(fā)出命令以重新啟用振蕩器。但如果 必須這樣做,檢查正在使用的微控制器的數(shù)據(jù)表非常重要。

固件

基于 8051 的系統(tǒng)的固件包含在附錄 A 中。它旨在展示一個較低的示例需要與DS1077通信的層例程。但是,請注意,固件實現(xiàn)了開環(huán) 系統(tǒng)。閉環(huán)非常特定于應(yīng)用程序。但為了說明示例 與DS1077通信,基于菜單的開環(huán)示例是有益的。一個PC終端程序是 用于發(fā)出DS1077s命令。然后可以在固件中查找命令以準(zhǔn)確查看 正在執(zhí)行什么?;静藛蚊钊缦拢?br style="padding: 0px; margin: 0px auto;"/>
讀取選定的DS1077并顯示寄存器
編輯多路復(fù)用字
編輯 DIV 字詞
編輯總線字
寫入DS1077,地址為“000”
寫入DS1077,地址為“000”
寫入DS1077,地址為“001”
寫入DS1077,地址為“001”
更改固件 2 線通信地址

由于DS1077設(shè)置存儲在EEPROM中,因此DS1077上電至存儲在EEPROM中的值。 可以使用相應(yīng)的菜單命令寫入 MUX、DIV 和 BUS 寄存器的值。菜單命令 2 至 8 的固件顯示了如何執(zhí)行 2 線寫入的示例,而菜單 命令 1 顯示 2 線讀取。最后,菜單命令 9 顯示了如何更改 2 線地址,該地址將 被解決。

以下是將1234h寫入DS1077地址“000”的DIV寄存器的示例:

LCALL START2WIRE ; 2-WIRE START

    MOV A,#0B0H ; DEVICE IDENTIFIER, SLAVE ADDRESS, WRITE
    LCALL WRITEBITS ; SEND COMMAND BYTE
    LCALL ACKSLAVEWRITE ; CHECK FOR SLAVE ACKNOWLEDGE
    MOV A,#01H ; ACCESS DIV COMMAND
    LCALL WRITEBITS ; SEND COMMAND BYTE
    LCALL ACKSLAVEWRITE ; CHECK FOR SLAVE ACKNOWLEDGE
    MOV A,#12H
    LCALL WRITEBITS ; SEND MSB
    LCALL ACKSLAVEWRITE ; CHECK FOR SLAVE ACKNOWLEDGE
    MOV A,#34H
    LCALL WRITEBITS ; SEND LSB
    LCALL ACKSLAVEWRITE ; CHECK FOR SLAVE ACKNOWLEDGE
    LCALL STOP2WIRE ; 2-WIRE STOP
    To write the same to the DS1077 at address ’001’ , simply replace:
    MOV A,#0B0H ; DEVICE IDENTIFIER, SLAVE ADDRESS, WRITE
    with the following:
    MOV A,#0B2H ; DEVICE IDENTIFIER, SLAVE ADDRESS, WRITE

下面是在地址“1077”DIV寄存器處讀取DS000的示例。

LCALL START2WIRE ; 2-WIRE START

    MOV A,#0B0H ; DEVICE IDENTIFIER, SLAVE ADDRESS, READ
    LCALL WRITEBITS ; SEND COMMAND BYTE
    LCALL ACKSLAVEWRITE ; CHECK FOR SLAVE ACKNOWLEDGE
    MOV A,#01H ; READ DIVREG COMMAND
    LCALL WRITEBITS ; SEND COMMAND BYTE
    LCALL ACKSLAVEWRITE ; CHECK FOR SLAVE ACKNOWLEDGE
    LCALL START2WIRE ; REPEATED 2-WIRE START
    MOV A,#0B1H ; DEVICE IDENTIFIER, SLAVE ADDRESS, READ
    LCALL WRITEBITS ; SEND COMMAND BYTE
    LCALL ACKSLAVEWRITE ; CHECK FOR SLAVE ACKNOWLEDGE
    LCALL READBITS ; READ DATA FROM DS1077 A
    MOV DIVDATAMSB,A ; SAVE MUX MSB TO A VARIABLE
    LCALL ACKSLAVEREAD ; ACK SLAVE SO WE CAN READ NEXT BYTE
    LCALL READBITS ; READ DATA FROM DS1077 A
    MOV DIVDATALSB,A ; SAVE MUX LSB TO A VARIABLE
    ;LCALL ACKSLAVEREAD; NO ACK - NO MORE TO READ
    LCALL STOP2WIRE ; 2-WIRE STOP

結(jié)論

DS1077通常可以替代晶體,當(dāng)需要更大的靈活性和控制時。 此外,DS1077還可用于產(chǎn)生從kHz范圍到kHz的寬范圍頻率。 133兆赫。根據(jù)所需的控制量,它可以獨立運行,也可以由處理器控制使用2線接口。雖然示例電路很簡單,但它展示了 DS1077.考慮在下一個應(yīng)用中使用DS1077。


免責(zé)聲明:本文為轉(zhuǎn)載文章,轉(zhuǎn)載此文目的在于傳遞更多信息,版權(quán)歸原作者所有。本文所用視頻、圖片、文字如涉及作品版權(quán)問題,請聯(lián)系小編進(jìn)行處理。


推薦閱讀:

工藝設(shè)計套件將 POI 基板用于 RF 濾波器

如何解決超薄筆記本電腦的音頻挑戰(zhàn)?

什么是PLC?看完就明白

幾種三極管恒流源

ADC參數(shù)如何以及為何變化的四個影響因素


特別推薦
技術(shù)文章更多>>
技術(shù)白皮書下載更多>>
熱門搜索
?

關(guān)閉

?

關(guān)閉