Is dit het probleem met baudrate?

B

blueshero

Guest
Ik heb c8051f005 microcontroller met 11MHz externe klok gemonteerd.Mijn project gaat over:
1) het weergeven van real-time gegevens (die komen van real-time klok) random gegenereerde nummer in HyperTerminal (via seriële comm UART met 115200 baudrate, ook MAX232)
2) sla ze in eeprom
3) lezen in HyperTerminal

Im gebruik van de timer 3 interrupt routine om de real-time data RGN en om deze op te slaan in eeprom.Alles werkt prima wanneer mijn bemonsteringsfrequentie lager is dan 150Hz.Im using LED oscilloscoop en het controleren van de frequentie.
Nu mijn probleem is:
1) Nadat ik stelde de bemonsteringsfrequentie tot (laten we zeggen) 500Hz, vond ik dat de frequentie bleef op ongeveer 150Hz, het cant hoger.
2) Als ik de weergave van functie, de frequentie kunt bereiken 500Hz, maar toen ik het ophalen van de gegevens van eeprom en geeft deze weer in HyperTerminal, alle gegevens eruit ziet ... beschadigd
3) Ik heb geprobeerd om mijn baudrate in HyperTerminal instelling maar ik duno waarom ik cant veranderen in een hoger.

Nu im me af of mijn snelheid is te laag of is er een andere reden.
Bedankt voor uw hulp

<img src="http://www.edaboard.com/images/smiles/icon_biggrin.gif" alt="Very Happy" border="0" />
 
Dla każdego fana gier RPG premiera rodzimej gry "Wiedżmin 3: Dziki Gon" zaplanowana na 24 lutego 2015 z pewnością będzie wielkim świętem. CDProjekt co i rusz raczy nas kolejnymi zwiastunami i informacjami na temat ich nadchodzącego tytułu, skutecznie podsycając apetyty graczy. Podczas ostatnich targów PGA 2014 został zaprezentowany obszerny fragmen...

Read more...
 
Hoi,
Ik kan niet veel zeggen zonder dat je code, maar het klinkt alsof je alleen het verzenden van uw gegevens rechtstreeks naar de haven (bij het schrijven van een register) in de belangrijkste lus.Doen dit ook snel zal overschrijven de huidige verzenden byte met een nieuwe byte en uw gegevens zullen kijken onleesbaar.
Onder meer te maken (dwz de weergave van routinematige) in uw belangrijkste lus verhinderd dit gebeurt.

Als dit het geval is, moet u de buffer uw gegevens in de belangrijkste lus en het gebruik interrupt routines voor het verzenden en ontvangen (u
zult ook goed moet synchroniseren toegangen tot de buffer tussen de lus en de interrupt routines).
Zelfs in dit geval zult u niet in staat te sturen meer gegevens (bytes) dan de baudrate vergunningen (dus u hoeft te doen, een goede bandbreedte begroting), maar deze methode zal behandelen en barst van de gegevens die anders zal uw corrupte transmissies.

Arthur

 

Welcome to EDABoard.com

Sponsor

Back
Top