generere en 1mhz ursignal fra computer?

D

david90

Guest
Er det muligt at skrive et program, der ville skabe et ursignal til den serielle port, så jeg kunne bruge det til at køre en MCU?

 
Ja, nogle controller ligesom MSP430 har uret outpin, der kan være kilde til intern FLL eller Ur oscilator du kan bruge denne udgang som et signal ur.

Otherwaise det ikke er god idé at generere ursignal bruger software rotuine fordi ursignal genereted kan inerrupted form inde i processor

bedsteBobi

 
ikke, hvad jeg mente.

Jeg ønsker, at computeren til at generere ursignal så jeg kan indtaste den i en AVR ikke omvendt

<img src="http://www.edaboard.com/images/smiles/icon_smile.gif" alt="Smile" border="0" />
 
David ..David ...er du grin med os!

Er som du ønsker at bruge magt i et runing motor til at starte den samme motor!

 
Anyway, det enkle svar er nej, fordi a) RS232 chauffører vil ikke skifte, at hurtige (115kbaud svarende til 57.5khz presser it) og b)
at de ikke kunne løbende skiftes at hurtigt fra en PC, medmindre det gjorde intet andet, hvis det var ikke at gøre noget andet, ville det sandsynligvis være billigere at sætte en krystal på AVR!

Det kunne være posible at få 1MHz fra parallel port (mindst chaufførerne kan skifte hurtigere nok), men
pc'en ikke kunne gøre noget andet, mens det var at gøre dette.

Hvorfor har du lyst til at generere ursignal fra din pc?

 
ok så en 6mhz uret vil ikke fungere.Hvordan vil jeg gøre en 1kHz ur fra seriel port?

 
Så vidt RS 232 som asynch-protokollen og arbejder med start og stop bit s plus der er ingen garranty at PC vil give contiguous datastrøm på COM-port der er mulighed for, at denne plejer arbejde pålideligt.
Tja, hvis du stadig er villig til at bruge data port, skrive et program sender kontinuerlig strøm af bytes til R232 havn som dataværdien skulle gøre det muligt at adskille Start bit.Således kan du let filter start bit
ud og bruge som input til schimtt udløse før afsendelse til AVR OSC input.Når du vil definere 9600
kbod sats, output skal være noget, 1 kHz.Men være opmærksom på pulsen form krav - yiou kan være nødvendigt at opdele det, men før du bruger som OSC kilde hvis MCU OSC kræver firkantede puls.
Du kan forsøge at manipulere værdi af data til at sende - lad sige omfatte koden med 1010101 sekvens, så du kan ændre output freq op til en vis grad via sendt data manipulering (ikke bruger port hastighed indstillinger)

Derudover kan du bruge RS 232 hardware handshake signaler.

 
Hvis du overfører 0xf0 continuoulsy på 9600 baud, i 8-bit, ingen paritet, 1 stop (dvs. i alt 10 bit gange pr indberettes karakter), dette vil give dig en firkantet bølge med en frekvens på 960Hz.

Enkleste måde at gøre dette på er at bruge Visual Basic og en seriel port kontrol, bør du kunne få nogenlunde pålidelige data transmission, eller i det mindste, hvis du sender (sige) 100 tegn på et tidspunkt, de hundred vil komme ud ganske godt sammen, og skulle du være i stand til at få (i bedste fald) ingen huller overhovedet.

HTH
Barny

 
Hej,

prøve at bruge parallel port til frekvens generation, meget mere kontrollerbar, kan få nogle hundrede kHz, ved hjælp af API-funktioner QueryPerformanceFrequency og QueryPerformanceCounter til at beregne de tider er nødvendige for en bestemt output frekvens på en bestemt CPU.Det vil generere temmelig nøjagtig frekvens,
der er uafhængig af CPU frekvens hvis gennemført korrekt.Mange pæne eksempler kan findes på nettet.

Hilsen

 
david90 wrote:Jeg ønsker, at computeren til at generere ursignal så jeg kan indtaste den i en AVR ikke omvendt
<img src="http://www.edaboard.com/images/smiles/icon_smile.gif" alt="Smile" border="0" />
 
Hvis du vil have en nogenlunde stabilt ur, PC's standard software-kontrollerede havne vil give dig sorg.Hvad med at købe en counter-timer bord og sætte det ind på din computer?For eksempel:
http://www.measurementcomputing.com/cbicatalog/directory.asp?dept_id=22

 
Du kan forsøge kodning i ren DOS-mode samling, ved hjælp af bundkort's ombord timeren.

 

Welcome to EDABoard.com

Sponsor

Back
Top