PIC Som FIFO

S

suwaii

Guest
Hvordan vi implment PIC microcontroler som FIFO .... noen informasjon

 
Utdyp programmet inkludert FIFO hastighet, data størrelse, dybde.

 
min søknad er å angi høy hastighet 8 bits data, som kommer fra ADC til PIC og

sende den på nytt for å parallellport slik at datamaskinen kan lese data fordi vi kan

ikke grensesnittet høyhastighets ADC chip direkte til parallellporten

hastighet PIC vil kjøre på 10MHZ

 
Så det pic gjør en serie av a / d konverteringer og lagre den resulterende verdier i sin interne ram.Når sprekker av konverteringsdata er fullstendig ervervet, på a / d konverteringer vil stoppe og bilde vil laste ADC data til PC via PC's parallellport.PC vil da forbruker ADC data fra pic "FIFO" på hvilken hastighet den er komfortabel med, til FIFO er tom.

Er dette riktig?

 
dette er riktig, men siden inngangssignalet er video PAL dette behovet

stor RAM til å lagre og bilde RAM ikke har mer enn 2kb

og engasjert ikke sikker på om vi avbryte pic å overføre data fra pic RAM til PC

vil video signal også avbruddsordrelinje

 
Hei, ikke vil fungere.PIC hastigheten er lav.10 MHz = 2.5 MIPS, du trenger 6 instruksjoner min.hvis heldig.så.2,5 / 6 = 416 ksps uansett hva ADC gjør.Dette gir deg en 208 KHz båndbredde video signal

<img src="http://www.edaboard.com/images/smiles/icon_smile.gif" alt="Smil" border="0" />

..Du vil ikke se dette.Kanskje hvis du bruker en PIC24H kan du gjøre det kjører på 40 MIPS.Bedre å bruke en enkel CPLD!

Paul.

 
Noe er ikke her!

1.Du trenger en FIFO fordi pc kan ikke bruker data i en sanntid hastighet.

2.Digital video data kontinuerlig streaming i FIFO.Jeg antyde dette på grunn av bekymring for at FIFO kan falle innkommende data mens den overfører bufrede data til PC.

Til sammen
har disse kravene har ingen løsning.FIFO kan aldri bli store nok fordi gjennomsnittlig data blir produsert av videokilden raskere enn den kan brukes av PC!

 
Slik lambtron:

Jeg tror fyr eller jente som ønsker å gjøre en video grabben eller noe sånt.

Paul.

 
PaulHolland wrote:

Jeg tror fyr eller jente som ønsker å gjøre en video grabben eller noe sånt.
 
Slik PAUL

Hva er forholdet mellom ksps og båndbredde for video signal

hvorfor hvis vi øker antall instruksjonene i PIC båndbredden av video

signal vil redusereLagt til etter 17 minutter:
Slik Paul

hvis vi kjører bilde på 10MHZ dette bety 2.5mips og å skanne linje med

det NTSC kreves 64microsecond dette betyr pic løper

160 instruksjon per 64microsecond som er nok til å konvertere

fra analoge til digitale ... er dette riktig ... behage hjelpe meg

 
Slik suwaii:

Hvis du vil prøve en video og har et bilde som er litt OK du trenger 200 - 300 prøver per 64us video linje.OK betyr dette får du 200 eller 300 8 bits ord per 64us.leser dette fra å gi eksempler på kommando til ADC, lese den med PIC port, lagre det i RAM eller sender den til parallellporten på PCen også tar tid.du bare ikke har tid til å gjøre dette på 2.5mips.Jeg tror du trenger litt 6 - 10 instruksjoner per 8 bits ord fra ADC, og du vil ha denne 300 ganger per video linje med 64us.så hvis vi tar 200 ganger og 6 instruksjonene vi snakker om 1200 instruksjoner per 64us !!!!!Det er 19 MIPS !!!!!minimum.

Den printerport kan håndtere noen 12MB / s om du skrive en driver for parallellporten selv.IKKE Windows-drivere !!!..

Video har en båndbredde for noen 6MHz, hvis du bare snakke om svart / hvitt bilde vi snakker om noen 3 MHz.Så du må prøve på 6 msps (mega samplinger per sekund) for å få et normalt bilde.hvis du prøve på 200ksps du har et veldig dårlig bilde, vil du kunne se folk og store objekter, men ingen detaljer!.

Paul.

 
paul

takk til deg ...du har rett ...antar vi vil lese rammer per sekund og størrelsen på rammen er 640 x 480 pikslers dette bety total pixel i hver ramme = 640x480 = 307200 bildepunkter per sekund .....og anta det kreves 10 Undervisningsspråk

konvertere fra analoge til digitale dette bety for hver piksel krever 10 Undervisningsspråk

per piksel dette bety at det kreves 3.072.000 undervisning per sekund til å konvertere

en ramme og 12mhz = 3mips er nok .... er dette riktig

 
[quote = "suwaii"] paul

takk til deg ...du har rett ...antar vi vil lese rammer per sekund og størrelsen på rammen er 640 x 480 pikslers dette bety total pixel i hver ramme = 640x480 = 307200 bildepunkter per sekund .....og anta det kreves 10 Undervisningsspråk

konvertere fra analoge til digitale dette bety for hver piksel krever 10 Undervisningsspråk

per piksel dette bety at det kreves 3.072.000 undervisning per sekund til å konvertere

en ramme og 12mhz = 3mips er nok .... er dette riktig [/ quote

Ikke helt sant.Du antar nå at videoen er jevn i løpet av 1 sekund er det sant ????..Hvis ja, det regnestykket er omtrent riktig.men hvis ikke,
vil regnestykket er feil.Du har 25 bilder per sekund, så 25 ganger 3 MIPS = 75 MIPS.

Jeg tror dette prosjektet det skal vanskelig for deg, eller en god start hvis du virkelig legger mye arbeid og tid inn i det.

 
Slik Paul

Jeg ser i Dataarkvisning Fro pic18f452 at ADC kan

kjøre 30-ksps ..dette bety at det kan konvertere analog til digital

30000 pixel pr second.However, som du nevner, hvis vi kjører

pic på 10MHz du får 2.5mips ...... og hvis ADC ta 10 Undervisningsspråk

vi kan slik at vi kan kjøre pic AS ADC for 250 ksps som er forskjellig fra

Dataark .... behage hjelpe meg

 
uhmmmm ...Du kan ikke prøve mer enn 30.000 samples per sekund uansett microcontroller hastighet du bruker med PIC18F ADC.Du trenger en video ADC som er 8 biter og kan gjøre noen 50MSPS.Bedre å bruke en CPLD eller FPGA og koble den til en video ADC.

Paul.

 

Welcome to EDABoard.com

Sponsor

Back
Top