Forum: Mikrocontroller und Digitale Elektronik usart per software gekillt?


von Bernd S. (mms)


Lesenswert?

Hallo,

kann man eigenltich einen USART per Software killen? So dass man gar 
keine Möglichkeit mehr hat einen string zum HyperTerminal zu übertragen?

Ich hatte ein sehr seltsames problem: hab ein globaleas struct array 
definiert und wollte es initializieren - das programm lief zwar noch 
(kein data abort etc. error oder warnung) aber über die USART 
schnittstelle kam kein laut...

jetzt hab ich ein ganz einfaches programm getestet, welches nur die 
usart überprüft und wieder kommt gar nichts an... das programm an sich 
funktioniert aber.

Ich arbeite mit dem AT91RM9200 Controller - kennt jmd solche Probleme 
mit USART? die serielle Schnittstelle lief zuvor sehr gut und stabil


Bernd

von Peter D. (peda)


Lesenswert?

Welche UART, die vom PC oder die vom ARM?

Beim PC kann es vorkommen, daß ein Programm vor Beendigung die UART 
nicht wieder freigegeben hat -> Abhilfe: Neustart.


Peter

von Bernd S. (mms)


Lesenswert?

der USART vom ARM - einen Neustart hab ich schon gemacht, hat aber 
leider nichts gebracht.

Bernd

von Bernd S. (mms)


Lesenswert?

scheinbar läuft bei dem controller gar nichts mehr - die beiden 
angeschlossenen LEDs kann ich auch nicht mehr aktivieren...

das ist echt crazy...

Bernd

von Johannes M. (johnny-m)


Lesenswert?

Was für nen Pegelwandler hast Du zwischen den Controller-Anschlüssen und 
der PC-Schnittstelle? Ist der noch intakt?

von Bernd S. (mms)


Lesenswert?

ok die leds sind jetzt doch an - aber es dauert alles sehr lange

in meinem programmcode werden zu allerst die leds aktiviert - und das 
dauert schon mächtig lange (was nicht gewöhnlich ist) - einige sekunden.

von Bernd S. (mms)


Lesenswert?

die leds blinken nur noch kurz auf (obwohl sie eigentlich die ganze zeit 
aktiviert sind...) - der RS232 Wandler ist ok

von Bernd S. (mms)


Lesenswert?

ein widerstand hat sich komplett verschoben auf der platine... vll ist 
dass das problem (leider hab ich keinen schaltplaon von diesem board)... 
aber wie heiß muss sowas werden, dass sich ein widerstand von seinen 
lötpads trennt?

Bernd

von Düsentrieb (Gast)


Lesenswert?

190°..220°

von Magnus Müller (Gast)


Lesenswert?

Bernd Schuster wrote:
> ein widerstand hat sich komplett verschoben auf der platine... vll ist
> dass das problem (leider hab ich keinen schaltplaon von diesem board)...
> aber wie heiß muss sowas werden, dass sich ein widerstand von seinen
> lötpads trennt?
>
> Bernd

Foddo machen und zeigen.

von Bernd S. (mms)


Lesenswert?

leider keinen fotoapparat da - aber der widerstand ist ein smd 
widerstand 0402 und eigentlich ist um satte -70° gedreht... auf der 
einen seite ist der widerstand mit hoher wahrscheinlichkeit an GND 
angeschlossen, bei der anderen weiß ich es nicht...

allerdings sind die lötpads sehr spärlich ausgelegt worden...

von Bernd S. (mms)


Lesenswert?

der widerstand ist anscheinend nachträglcih hinzugefügt worden (war auch 
nicht defekt - zeigt noch den richtigen wert an)...

kann ich trotzdem von einem hardware-fehler ausgehen? ein über das JTAG 
Interface kombilierte Programm läuft (ohne data abort etc.) und kann 
auch übertragen werden - Breakpoints kann ich auch setzen und die werden 
auch erreicht...

Alles was mit der Peripherie zusammenhängt funktioniert leider nicht - 
ich bekomm keine Pakete über die Ethernet Schnittstelle, alle beide 
RS323 Schnittstellen funktionieren nicht und die angeschlossenen LEDs 
blinken nur einem kurz auf, wenn man sie aktiviert.

Hat da jmd Ideen was ich noch überprüfen sollte?? Die PLL und Quarz 
läuft stabil.

Bernd

von Falk B. (falk)


Lesenswert?

@ Bernd Schuster (mms)

>RS323 Schnittstellen funktionieren nicht und die angeschlossenen LEDs
>blinken nur einem kurz auf, wenn man sie aktiviert.

>Hat da jmd Ideen was ich noch überprüfen sollte??

Stromversorgung.

> Die PLL und Quarz
>läuft stabil.

http://www.mikrocontroller.net/articles/AVR_Checkliste#UART.2FUSART

MFG
Falk

von Bernd S. (mms)


Lesenswert?

die Stromversorgung ist konstant dar - sonst könnte ich ja nicht während 
des ablauf des programms debuggen...

>> Die PLL und Quarz
>>läuft stabil.

>http://www.mikrocontroller.net/articles/AVR_Checkl...

was mich am meisten stört (und da ist glaub ich der wurm drinnen) ist, 
dass nicht mal zwei direkt über einen widerstand angeschlossene LEDs an 
bleiben (sondern nur kurz aufblinken)...

Das wird sicherlich auch bei der RS232 und Ethernet Schnittstelle das 
problem sein... aber warum? die Pullups sind deaktiviert / ansonsten 
würde ich kein aufblinken sehen...

Bernd

von Bernd S. (mms)


Lesenswert?

die LEDs kann ich auch nur einmal aufblinken lassen, nicht mehrmals 
hintereinander... indem ich z.b. eine wait() Funktion dazwischen setze

Bernd

von Bernd S. (mms)


Lesenswert?

hab grad mal einen internen timer ausprobiert, und dessen Interrupt wird 
nie ausgelöst -> sprich die Clock dazu fehlt (Weil der code auf jeden 
fall funktionieren müsste - hatte ich schon mal getestet)...

wie kann ich testen ob der Quarz (extern) defekt ist? In diesem 
Controller gibt es eine PMC Peripherie-Clock für gewisse Sachen, wie 
USART, Ethernet, Timer etc. - für alle Sachen funktioniert diese nicht 
mehr.... Der Prozessor besitzt insgesamt zwei externe PLLs und zwei 
Quarzen (einen mit ca. 18MHz und einen Uhrenquarz - bei dem getesteten 
Timer handelte es sich um den ST Timer, der auf den Uhrenquarz 
basiert...

Bernd

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.