Díly: 133MHz-16.2kHz Programovatelný oscilátor (DS1077)

DS1077 je 5Volt, 133MHz do 16kHz programovatelného zdroje hodinového zdroje. Dělidlo vnitřní frekvence je konfigurován přes jednoduché rozhraní I2C, stejně jako čip potřebuje žádné vnější části. Ne chudí za 2 dolary. Využili jsme autobusem pirátem, abychom tuto čip vyzkoušel před použitím v projektu. Získejte datasheet (PDF) stejně jako dodržovat spolu.

DS1077, $ 1,69 Direct z Maxim + $ 10 lodní doprava.

Tento čip není nabízen v žádném typu hlavních distributorů, ale Maxim je má za méně než 2 USD / každý s Flat $ 10 přepravní poplatek. Jedná se o 8pin Soic Povrchová instalace čipu, takže jsme udělali malou breakout desku pro testování.

Zkušební obvod

Pin připojení

Autobus pirát
DS1077 (PIN)

SCL
SCL (8)

SDA.
SDA (7)

Aux.
OUT1 (1)

+ 5Volts.
VCC (3)

Gnd.
GND, Ctrl (4,5,6)

Naposledovali jsme DS1077 z 5Voltového napájení autobusového piráta. Dva rezistory, R1, stejně jako R2, táhnou sběrnici I2C na 5volts, když se nepoužívá. Kondenzátor C1 je 0,01UF, stejně jako C2 je 0,1UF, jak je navrženo datovým listem. Správa pinů nabízejí některé další funkce, ale během našeho testu je obejít na zem. Výstup1 je hlavní signální kolík.

Propojení

Adresa
Účel

0B10110000.
Výchozí základní adresa (0xb0)

0xb0.
Psát adresu

0xb1.
Číst adresu

Dáváme autobus pirát do režimu I2C (m, možnosti: I2C, 100kHz). Vnější tažné odpory drží sběrnici na 5Volts, takže je nezbytné ponechat palubní 3.3volt Pull-up odpor (výchozí).

I2C> {0B10110000} <- DS1077 Skládá adresu 210 I2C Zahájit stav 220 I2C psát: 0xb0 dostal ACK: Opravdu <- dostal Ack 240 I2C Stop stav I2C>

Za prvé, vysíláme adresu DS1077, stejně jako zjistit, zda uznává. Adresa DS1077 je 1011, plus tři programovatelné bity (000 ve výchozím nastavení), stejně jako kontrolované (1) nebo compose (0) bit. Máme ACK, takže chápeme, že obvod pracuje stejně jako naše spojení jsou dobré.

Adresa
Bajtů
Registrovat

0x01.
2.
10 bitové hodiny dělič, n + 2 (div)

0x02.
2.
Prescaler, funkce CTRL PIN. (MUX)

0x0d.
1.
Adresa Select, EEPROM Compose Control Control. (AUTOBUS)

0x3f.
0.
Uložit nastavení do EEPROM (E2)

DS1077 je řízen skládáním hodnot na místa zobrazená v tabulce.

I2C> {0xb0 0x0d 0B00001000}, <-write do rejstříku sběrnice 210 I2C Zahájit stav 220 I2C Write: 0xb0 dostal ACK: Opravdu <-DS1077 Skládejte adresu 220 I2C Psát: 0x0d dostal ACK: Opravdu <- Autobusový registr 220 I2C Psát: 0x08 dostal ACK: Opravdu <- Nastavení autobusového registru 240 I2C Stop stav I2C>

Ve výchozím nastavení DS1077 uloží všechny úpravy EEPROM. Během testování to nepožadujeme, takže jej zakážeme nastavením bitu 3 (0B1000) autobusového rejstříku (0x0d). První čtyři bity by měly být ponechány jako 0, poslední tři bity si vyberou adresu, která se hodí k několika DS1077s na přesně stejném sběrnici I2C. Viz Datasheet Page 7.

I2C> {0xb0 0x02 0b00011000 0B00000000} <-SET 16bitová hodnota Mux 210 I2C Zahájit stav 220 I2C Write: 0xb0 dostal ACK: Opravdu <-DS1077 Skládejte adresu 220 I2C Write: 0x02 dostal ACK: Opravdu <-mux registr 220 I2C Write: 0x18 dostal ACK: Opravdu <-Data Byte 1 220 I2C Write: 0x00 dostal ACK: Opravdu <-Data Byte 2 240 I2C Stop stav I2C>

MUX registr ovládá prescalers, funkce CTRL PIN, stejně jako frekvenční dělič. Zakázali jsme prescaler stejně jako Ctrl kolíky, stejně jako umožnit 10bitové frekvenční dělič. Registr MUX je vysvětlen na straně 5 datového listu.

Specifické frekvence jsou vyráběny dělením frekvence doporučení 133MHz s prescalers, stejně jako 10bitové (1025 úrovně) programovatelného dělení. Hodiny jsou rozděleny částkou uvedenou v registru div, plus dva. Pokud je DIV = 0, výstup je 133MHz / 2 = 66MHz.

Tento plán poskytuje velmi nejlepší kmitočtové rozlišení v nízkých rozsahech, stejně jako žádné kroky mezi 133MHz, stejně jako 66mhz.

I2C> {0xb0 1 0B11111111 0B11000000} <-div = 1025 210 I2C Zahájit stav 220 I2C Write: 0xb0 dostal ACK: Opravdu <-DS1077 Skládejte adresu 220 I2C Psát: 0x01 Máte ACK: Opravdu <- div 220 I2C Write: 0xff dostal ACK: Opravdu <- bity 9: 2 220 I2C Write: 0xc0 GOT ACK: Opravdu <- bity 1: 0 240 I2C Stop stav I2c> f <-Do frekvence 9xx freq počet na AUX: 16128Hz (16kHz) <- DS1077 Frekvence I2C>

Nastavíme všechny bity v diveckém registru na 1 pro maximální frekvenční dělení. ‘F’ Kroky frekvence na kolíku AUX, která je spojena s výstupem hodin DS1077. S DIV = 1025, frekvence je asi 16kHz.

I2C> {0xb0 1 0 0} <- DIV = 0, 133MHz Rozdělit 2 ... 9xx freq počet na AUX: 0Hz <-66MHz, stejně jako rychle počítat ------ I2C> {0xb0 1 0 0B10000000} <- Div = 2 ... 9xx freq počet na AUX: 3339696Hz (33MHz) <-133MHz / 4 ------ I2C> {0xb0 1 0B00000001 0B00000000} <-div = 4 ... 9xx freq počet na AUX: 22192384Hz (22MHz) <-133MHz / 6 Můžeme hrát s děličem, stejně jako vyrábět různé frekvence. Výstup se vždy rovná frekvenci doporučení (133MHz) Split By Div + 2. Vstupní kolík sběrnicového piráta je schopen měřit pouze asi 50mHz, takže největší rychlosti se nezaregistrují. Budoucí verze autobusuPirát by měl zahrnovat gigahertz prescaler pro vysokofrekvenční měření. I2C> {0xb0 0x3f} <-write e2 registr Nakonec můžeme sestavit registr E2 (0x3f) pro uložení těchto nastavení v EEPROM. DS1077 se nyní vrátí k těmto nastavením při zapnutí. Závěr DS1077 zjednodušuje komplexní zdroje hodin pohybem programovatelného oscilátoru, stejně jako frekvenční dělič do jediného čipu. Není nabízeno od distributorů, ale můžete si jej koupit přímo z Maxim. Pokud požadavek mnohem lépe zvládnout vysoké frekvence, zkontrolujte DS1085 s 10kHz kroky od 133MHz do 8kHz. DS1085L je 3,3volt, 66MHz verze nabízená v Digikey.

Leave a Reply

Your email address will not be published. Required fields are marked *

Related Post