Piese: oscilator programabil de 133MHz-16,2KHz (DS1077)

DS1077 este o sursă de ceas programabilă de 5Voltă, 133MHz până la 16KHz. Divizorul de frecvență interioară este configurat pe o interfață Easy I2C, precum și cipul nu are nevoie de părți în afara. Nu sunt slabe pentru sub 2 $. Am folosit pirat de autobuz pentru a testa acest cip înainte de ao folosi într-un proiect. Obțineți fișa tehnică (PDF), precum și respectați-vă.

DS1077, 1.69 dolari direct de la maxim + $ 10 de transport maritim.

Acest chip nu este oferit la niciun fel de distribuitori majori, cu toate acestea Maxim le are pentru sub 2 $ / fiecare cu o taxă de transport de 10 USD. Acesta este un cip de instalare de suprafață 8PIN SOIC, așa că am făcut o mică placă de breakout pentru testare.

Circuitul de testare

Conexiuni PIN

Pirat de autobuz
DS1077 (PIN)

SCL.
SCL (8)

SDA.
SDA (7)

Aux.
Out1 (1)

+ 5Volts.
VCC (3)

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

Am alimentat DS1077 de la sursa de alimentare cu 5 vrăjitori ai magistralei. Două rezistoare, R1, precum și R2, trageți magistrala I2C la 5 volum când nu este în uz. Condensatorul C1 este de 0,01UF, precum și C2 este 0.1UF, așa cum este sugerat de fișa tehnică. Gestionarea pinilor oferă câteva funcții suplimentare, cu toate acestea, le-am ocuit la sol în timpul testului nostru. Ieșire1 este codul principal de semnal de ceas.

Interfațare

Abordare
Scop

0B10110000.
Adresa de bază implicită (0xb0)

0xb0.
Scrie adresa

0xb1.
Citiți adresa

Am pus pirat de autobuz în modul I2C (M, Opțiuni: I2C, 100KHz). Rezistențele exterioare de pull-up țin autobuzul la 5 volum, deci este esențial să ieșiți rezistențele de tracțiune de la bord 3.3Volt (implicit).

I2c> {0B10110000} <- DS1077 compune adresă 210 I2C Începeți condiția 220 I2C Scrierea: 0xb0 a primit ACK: într-adevăr <- a primit ack 240 condiția de oprire I2C I2C>

În primul rând, am difuzat adresa DS1077, precum și pentru a vedea dacă recunoaște. Adresa DS1077 este de 1011, plus trei biți programabili (000 în mod implicit), precum și verificați (1) sau compuneți (0) bit. Avem un ACK, așa că înțelegem că circuitul funcționează, precum și conexiunile noastre sunt bune.

Abordare
Octeți
Inregistreaza-te

0x01.
2.
Divizor de ceas de 10 biți, N + 2 (DIV)

0x02.
2.
Prescaler, funcții PIN CTRL. (MUX)

0x0d.
1.
Selectarea adresei, EEPROM compune controlul. (AUTOBUZ)

0x3f.
0.
Salvați setările la EEPROM (E2)

DS1077 este gestionat prin compunerea valorilor în locurile prezentate în tabel.

I2c> {0xb0 0x0d 0B00001000}, <-Write la registrul de autobuz 210 I2C Începeți condiția 220 I2C Scrierea: 0xb0 a primit ACK: într-adevăr <-DS1077 compune adresă 220 I2C Scrieți: 0x0d Got ACK: Într-adevăr <- registrul de autobuz 220 I2C Scrieți: 0x08 Got ACK: Într-adevăr, setarea registrului autobuzului 240 condiția de oprire I2C I2C>

În mod implicit, DS1077 salvează toate modificările aduse EEPROM-ului. Nu ne cerem acest lucru în timpul încercării, așa că îl dezactivăm prin setarea BIT 3 (0B1000) a registrului autobuzului (0x0D). Primii patru biți trebuie lăsați ca 0, ultimii trei biți aleg adresa pentru a se potrivi mai multor DS1077S în exact același autobuz I2C. Consultați Fitsheet Page 7.

I2c> {0xb0 0x02 0B00011000 0B00000000} <- Setați valoarea 16bit Mux 210 I2C Începeți condiția 220 I2C Scrierea: 0xb0 a primit ACK: într-adevăr <-DS1077 compune adresă 220 I2C Scrieți: 0x02 Got ACK: într-adevăr <-mux Înregistrare 220 I2C Scrieți: 0x18 GO ACK: Într-adevăr <-Data byte 1 220 I2C Scrieți: 0x00 ACK: Într-adevăr <-Data octeți 2 240 condiția de oprire I2C I2C>

Registrul MUX controlează prescalerii, funcțiile PIN CTRL, precum și divizorul de frecvență. Dezactivați prescalerul, precum și știfturile CTRL, precum și permit divizorul de frecvență de 10bit. Registrul MUX este explicat la pagina 5 din fișa tehnică.

Frecvențele specifice sunt produse prin împărțirea frecvenței de recomandare de 133MHz cu prescalerii, precum și un divizor programabil de 10bit (1025). Ceasul este împărțit de suma specificată în registrul DIV, plus două. Când Div = 0, ieșirea este de 133MHz / 2 = 66MHz.

Acest plan oferă rezoluția cea mai bună frecvență în intervalele mici, precum și nici o etapă între 133MHz, precum și 66MHz.

I2c> {0xb0 1 0B11111111 0B11000000} <-Div = 1025 210 I2C Începeți condiția 220 I2C Scrierea: 0xb0 a primit ACK: într-adevăr <-DS1077 compune adresă 220 I2C Scrieți: 0x01 Got ACK: într-adevăr <- Div Register 220 I2C Scrieți: 0xfF GO ACK: Într-adevăr <- biți 9: 2 220 i2c Scrieți: 0xc0 a primit ACK: într-adevăr <- biți 1: 0 240 condiția de oprire I2C I2c> f <-do un număr de frecvență 9xx Freq conta pe AUX: 16128Hz (16khz) <- DS1077 Frecvență I2C>

Am stabilit toți biții din registrul DIV la 1 pentru divizia maximă de frecvență. “F” treptează frecvența pe PIN-ul AUX, care este legat de ieșirea ceasului DS1077. Cu DIV = 1025, frecvența este de aproximativ 16 kHz.

I2c> {0xb0 1 0 0} <- div = 0, 133MHz Divideți cu 2 ... 9xx Freq conta pe AUX: 0hz <-66Mhz, de asemenea rapid pentru a număra ----- I2c> {0xb0 1 0 0B10000000} <- DIV = 2 ... 9xx Freq conta pe AUX: 3339696HZ (33MHz) <-133MHz / 4 ----- I2c> {0xb0 1 0B00000001 0B00000000} <-Div = 4 ... 9xx Freq conta pe AUX: 22192384HZ (22MHz) <-133MHz / 6 Putem juca cu divizorul, precum și cu o varietate de frecvențe. Ieșirea este întotdeauna egală cu frecvența de recomandare (133MHz) împărțită de DIV + 2. Pivințul de intrare al pirat a autobuzului este capabil numai de a măsura aproximativ 50MHz, astfel încât cele mai mari viteze nu se înregistrează. O versiune viitoare a autobuzuluiPirate ar trebui să includă un prescaler Gigahertz pentru măsurarea înaltă frecvență. I2c> {0xb0 0x3f} <-Write E2 Înregistrează-te În cele din urmă, putem compune registrul E2 (0x3F) pentru a salva aceste setări în EEPROM. DS1077 va reveni acum la aceste setări la Power-On. Concluzie DS1077 simplifică sursele complexe de ceas prin deplasarea unui oscilator programabil, precum și divizorul de frecvență într-un singur cip. Nu este oferit de distribuitori, totuși îl puteți cumpăra direct de la Maxim. Dacă aveți nevoie de o gestionare mult mai bună a frecvențelor înalte, inspectați DS1085 cu pași de 10 kHz de la 133MHz la 8KHz. DS1085L este o versiune de 3.3Voltă, 66MHz oferită la Digikey.

Leave a Reply

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

Related Post