info@panadisplay.com
Procesorski pogon izvršava naredbu,

Procesorski pogon izvršava naredbu,

Apr 26, 2019

5.12 CMD_DLSTART - pokreće novu listu prikaza

Kada motor ko-procesora izvrši ovu naredbu, on čeka dok se ne prikaže trenutni prikaz

lista se skenira, zatim postavlja REG_CMD_DL na nulu

image

Primjeri

cmd_dlstart ();

...

cmd_dlswap ();


5.13 CMD_SWAP - zamjena trenutne liste prikaza

Kada motor ko-procesora izvrši ovu naredbu, on zahtijeva zamjenu popisa prikaza

odmah nakon skeniranja trenutne liste prikaza. Interno, ko-procesorski motor

implementira ovu naredbu pisanjem u REG_DLSWAP. Molimo pogledajte REG_DLSWAP

Definicija.

Ova naredba ko-procesorskog motora neće generirati nikakvu naredbu popisa prikaza u

prikaz memorije memorije RAM_DL.

C prototip

void cmd_swap ();

image

Primjeri

Nema


5.14 CMD_COLDSTART - postavite stanje ko-procesora na zadane vrijednosti

Ova naredba postavlja mehanizam ko-procesora za resetiranje zadanih stanja.

C prototip

void cmd_coldstart ();

image

image


5.15 CMD_INTERRUPT - prekidanje okidača INT_CMDFLAG

Kada motor ko-procesora izvrši ovu naredbu, on pokreće prekid

INT_CMDFLAG.

C prototip

void cmd_interrupt (uint32_t ms);

Parametri

gospođa

Odgoda prije prekidnih okidača, u milisekundama. Prekid je zagarantovan

da ne puca pre ovog kašnjenja. Ako je ms nula, prekida se odmah aktivira.

image

Primjeri

Za aktiviranje prekida nakon što se JPEG završi učitavanje:

cmd_loadimage ();

...

cmd_interrupt (0); // prethodna slika punjenja je dovršena, okidač prekida

Za aktiviranje prekida za 0,5 sekundi:

cmd_interrupt (500);


5.16 CMD_APPEND - dodavanje memorije za prikaz liste

Dodaje blok memorije trenutnoj adresi memorijske liste prikaza na kojoj se nalazi pomak

je naveden u REG_CMD_DL.

C prototip

void cmd_append (uint32_t ptr,

uint32_t num);

Parametri

ptr

Početak komandi izvora u glavnoj memoriji

num

Broj bajtova za kopiranje. Ovo mora biti više od 4.

image

Opis

Nakon što je dodavanje završeno, co-procesor će povećati REG_CMD_DL za

num da biste bili sigurni da je lista prikaza u redu.

Primjeri

...

cmd_dlstart ();

cmd_append (0, 40); // kopirajte 10 naredbi iz glavne memorijske adrese 0

cmd (DISPLAY); // završi prikaz liste

cmd_swap ();


5.17 CMD_REGREAD - čitanje vrijednosti registra

C prototip

void cmd_regread (uint32_t ptr,

uint32_t rezultat);

Parametri

ptr

Adresa registra za čitanje

rezultat

Vrijednost registra koja se čita na adresi ptr. image

Primjeri

Za hvatanje točnog vremena završetka naredbe:

uint16_t x = rd16 (REG_CMD_WRITE);

cmd_regread (REG_CLOCK, 0);

...

printf ("% 08x", rd32 (RAM_CMD + x + 8));


5.18 CMD_MEMWRITE - upisivanje bajtova u memoriju

Piše sledeće bajtove u FT800 memoriju. Ova naredba se može koristiti za postavljanje

registrujte vrijednosti ili ažurirajte sadržaj memorije u određeno vrijeme.

C prototip

void cmd_memwrite (uint32_t ptr,

uint32_t num);

Parametri

Ptr

Memorijska adresa koju treba napisati

num

Broj bajtova koje treba napisati.

Opis

Bajt podataka treba odmah slijediti u međuspremniku naredbi. Ako je broj bajtova

nije višestruko od 4, onda 1, 2 ili 3 bajta treba dodati da bi se osigurao 4-bajt

poravnavanje naredne naredbe, ovi bajtovi popunjavanja mogu imati bilo koju vrijednost. The

završetak ove funkcije može se otkriti kada je vrijednost REG_CMD_READ jednaka

na REG_CMD_WRITE.

Oprez: ako koristite ovu naredbu, ona može oštetiti memoriju FT800 ako se koristi

nepravilno.

image

Primjeri

Za promjenu osvjetljenja pozadinskog osvjetljenja na 64 (pola intenziteta) za određeni snimak zaslona:

...

cmd_swap (); // završi prikaz liste

cmd_dlstart (); // sačekajte do zamene

cmd_memwrite (REG_PWM_DUTY, 4); // upis u PWM_DUTY registar

cmd (100);