Ich arbeite mit einem 8051 der ein lcd display hat und über eine serielles Kabel mit dem Pc verbunden ist. Den Microkontroller programmiere ich mit Keil mikroVision 2. Die Funktion void timerlr(void) interrupt TF1_VECTOR{} wird immer ausgelösst wenn der Timer hochzahlt. Wenn über das serielle Kabel ein signal am mikrocontroller ankommt soll auch ein interupt ausgelösst werden. Ist es möglich die Funktion void serial(void) interrupt SIO_VECTOR{} zu benutzen um einen Interupt auszulösen wenn ein Signal von dem Pc an den Microkontroller gesendet wird? Wenn ich ein Signal vom dem PC an den Microkontroller senden will, wie gross müssen die Daten und Stoppbits sein und welche Parität muss ich benutzen?
Hi Welchen Controller benutzt du genau? besitzt dieser UART? wenn ja dann würde ich diese zur kommunikation verwenden, denn dann hast du einen Interupt sobald daten ankommen und du brauchst dann nur ein bestimmtes register auslesen und du hast deine daten. "..Wenn ich ein Signal vom dem PC an den Microkontroller senden will, wie gross müssen die Daten und Stoppbits sein und welche Parität muss ich benutzen? " diese werte musst du zuerst in den register des UART einstellen. hier kannst du dich entscheiden welche parität du verwendest und wie viele stoppbits und und und... beachte das du auch die timerwerte richtig setzen musst, damit der µC mit der richtigen baudrate arbeitet. wie genau die einzelnen bits und register heissen weis ich nicht auswändig am besten siehst im datenblatt nach. frei nach dem motto: rtfm (read the fucking manuel) :-) ich hoffe ich konnte dir etwas auf die sprünge helfen.
Ps.: wird das programm nicht µVision genannt? oda hast du das µ-zeichen nicht gefunden? .. sorry :D schönen abend noch
Ich hab das µ zeichen nicht gefunden ;) Ich benutze den Atmel AT89S8252, er unterstützt uart. Um uart zu aktiviren muss IE auf 0x98 gesetzt werden soweit ich die doku verstanden habe. Um mehr Informationen über uart zu bekommen soll auf der atmel seite ein pdf sein das es aber nicht gibt. Danke für die Hilfe. Wäre nett wenn du mir noch veraten könntest was man im uart register einstellen muss oder wo man es nachlesen kann. Bei google hab eich nichts gefunden.
Hier die nötigen Infos: http://www.8052.com/tutorial.phtml http://www.atmel.com/dyn/products/product_card.asp?part_id=1920
begrüss sie im anhang findest du ein original programmierbeispiel von atmel. hier sind die examples auch mit µVision programmiert worden. einfach mal durchschaun. http://www.atmel.com/dyn/products/tools_card.asp?tool_id=3420
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.