Dom > Novosti > Sadržaj

FT800 od prenosa podataka na zemlju

Nov 02, 2018

3 Prenos podataka


FT800 podržava zajedničku šemu komunikacije podataka, bez obzira na to da li SPI ili I2C

odabran je interfejs.

FT800 koristi 4MB adresnog prostora za registre grafičkih, dodirnih i audio kontrolera, kao i

Memorijski baferi za upotrebu sa svakim kontrolerom. Kartica memorije je definisana u Poglavlju 5

FT800 Datasheet.

Domaćin čita i piše FT800 adresni prostor koristeći SPI ili I²C transakcije. Ovo

transakcije su definisane kao čitanje memorije, memorisanje i pisanje naredbe kao što je opisano u

sledeće sekcije.

Oba interfejsa koriste isti bajtni nalog. Više bajtova se šalju kao "Little Endian". Za

primjer, REG_FREQUENCY registar ima podrazumevanu vrijednost 0x02DC6C00 nakon resetovanja. Kada

čitajući ovu vrijednost, redosled bajtova na MCU sučelju je: 0x00, 0x6Ch, 0xDC, 0x02.

 SPI podaci se šalju po najznačajnijem bitnom prvom, nulu režima.

 I²C transakcije su enkapsulirane u I²C protokolu.

Za SPI operaciju, svaka transakcija počinje sa SS_N-om, a završava se kada SS_N ide visoko.

Nema ograničenja u dužini podataka unutar jedne transakcije, sve dok su memorijske adrese

kontinuirano.

Pristup adresnom prostoru se vrši preko tri komande interfejsa:

 Host Memory Memory Read

 Host Memory Memory Write

 Host Command Write

Ne postoji čitanje naredbe.

-3.1 Čitanje Host Memory-a

Za transakciju čitanja SPI memorije, host piše dva nula bitova, a zatim 22-bitnu adresu

i lažni bajt. Nakon lažnog bajta, FT800 odgovara na svaki bajt domaćina sčitanim podacima

bajtova.

image

Tabela 3.1 FT800 Pročitajte podatke o memoriji preko SPI-a

"X" = ne zanima me, obično je postavljeno na 0.

Tokom vremena čita se sa FT800 na MISO signalu, aktivnost na MOSI signalu

se zanemaruje.

Za I2C memoriju čitanja memorije, bajtovi se pakuju u I2C protokol kao što slijedi. Lutka

bajt nije potreban:

image

-3.2 Write Host Host

Za transakciju zapisivanja SPI memorije, host piše jedan bit, nakon čega sledi nulti bit, a zatim sledi

22-bitnu adresu, a zatim slijedi podaci za pisanje. Svi podaci se emituju jednim odabirom čipa.

Imajte na umu da nema baze podataka između adrese i podataka za pisanje.

Tokom vremena podaci se upisuju na FT800 na MOSI signal, aktivnost na MISO signalu

se zanemaruje.

Za I2C memoriju za pisanje memorije, bajtovi se pakuju u I2C protokol na sledeći način:

image


-3.3 Host Command Write

Za SPI zapis komande za pisanje zapisa, host piše nulti bit, a zatim jedan bit,

zatim 5-bitna naredba, a zatim dva bita nule. Svi podaci se emituju pojedinačno

chip select.

image

Tabela 3.5 FT800 Napišite naredbu nad SPI

Tokom vremena komanda se piše na FT800 na MOSI signalu, aktivnost na MISO signalu se zanemaruje.

Za I2C memoriju za pisanje memorije, bajtovi se pakuju u I2C protokol na sledeći način:

image

Tabela 3.6 FT800 Napišite naredbu preko I2C

NAPOMENA: Izdavanje naredbe ACTIVE budi FT800 iz stanja spavanja ili pripravnosti. ACTIVE

komanda se postiže pisanjem tri bajta od 00h kako bi se adresirala nula.

Postoji samo šest komandi, pa bi bilo poželjno kreirati pojedinačne pozive u firmware-u za svaku

jedan:

Komanda Vrijednost (uključujući
bita 6 i 7)
Opis
Režimi napajanja

ACTIVE 0x00 Prebacite iz režima pripravnosti / spavanja u aktivni režim. Pisati
tri bajta od 00h za izdavanje ACTIVE komande
PRIČEKAJ 0x41 Stavite FT800 jezgro u režim mirovanja. Isključi sat, PLL i
Oscilator ostaje uključen (podrazumevano).
SLEEP 0x42 Stavite FT800 jezgro u režim spavanja. Isključi sat, PLL i
Oscilator je isključen.
PWRDOWN 0x50 Isključite unutrašnji regulator od 1.2V. Sat, PLL i
Oscilator je isključen.
Prebacivanje sata

CLKEXT 0x44 Omogućite PLL ulaz iz kristalnog oscilatora ili eksternog ulaza
sat.
CLK48M 0x62 Prebacite PLL izlazni sat na 48MHz (podrazumevano).
CLK36M 0x61 Prebacite PLL izlazni sat na 36MHz.
Razno

CORERST 0x68 Pošaljite resetuj puls na FT800 jezgro. Svi registri i stanje
mašine će biti resetovane.

Tabela 3.7 Komande FT800