Archiv verlassen und diese Seite im Standarddesign anzeigen : Nix geht! so damn! help me!
Import-Script
11.04.2003, 18:36
hi ihr kennt mich sicher schon ;) bin eigendlich dabei parkhaus programm zu machen un bin voll am verzweifeln nix geht. <BR>selbst einfachste proggys wollen ned laufen. <BR>hab ein eigenlich voll billiges programm geschrieben aba ned ma des will <IMG SRC="http://progshop.com/elektronik/diskussion/clipart/sad.gif" ALT=":-(" BORDER=0> <BR>es gibt 8 leds an P1 <BR>un die sollen mit P3.4 an un P3.5 ausgeschaltet werden also quasi ein lichtschalter! <BR>ich benutze momentan zum testen simsoft ein simulationsproggy.. <BR> <BR>include reg_51.pdf <BR>; P1 LEDs <BR>; P3.4 + (taster low aktiv ?!) <BR>; P3.5 - <BR>MOV P1,#00000000b <BR>schleife: <BR>JNB P3.4, an <BR>JNB p3.5, aus <BR>jmp schleife <BR> <BR>an: <BR>MOV P1,#11111111b <BR>JMP schleife <BR>aus: <BR>MOV P1,#00000000b <BR>JMP schleife <BR>end <BR>
Import-Script
11.04.2003, 18:49
Ich vermisse die Vorbesetzung des Data-Direction-Registers, d.h. Ports erstmal als Ausgang definieren wo die LEDs dranhängen...
Import-Script
11.04.2003, 18:59
was wieso das? wie soll das gehn? <BR> un was sonst müsste des eigendlich gehn?
Import-Script
11.04.2003, 19:48
Hallo, <BR>deine LEDs müssen mit Anode nach Plus 5 Volt. Katode über Widerstand (ab 180 Ohm) an den Port. <BR> <BR>Die LED leuchtet dann, wenn der Portpin auf L- Pegel liegt. <BR> <BR>Mit H-Pegel einschalten wie bei Dir geht das nicht. <BR> <BR>Willi
Import-Script
11.04.2003, 20:12
was l-pegel.. ich vesteh nur bahnhof! <BR> <BR>was des zeug mit anode... <BR>"ich benutze momentan zum testen simsoft ein simulationsproggy.. " (<a href="http://www.simsoft.de" target=_top>www.simsoft.de</a>) <BR>wie soll ich da wiederstände einbauen loooool ;D <BR> <BR>die leds an sich bekom ich schon zum leuchten nur nicht mit den schaltern!!!
Import-Script
11.04.2003, 20:29
INCLUDE [blabla] <BR> <BR>on: <BR>MOV P1, #00h <BR>JNB P3.5, off <BR>JMP on <BR> <BR>off: <BR>MOV P1, #FFh <BR>JNB P3.4, on <BR>JMP off <BR> <BR> <BR>Vergiss nicht, dass Theorie und Praxis zwei verschiedene Dinge sind. Im Simulator funktionieren deine LEDs noch, aber der Controller schaltet Minus über einen Transistor auf den Ausgang. Wenn der Ausgang 5V hat, dann über einen hochohmigen Pullup Widerstand, der für die LED zu wenig Strom liefert. <BR> <BR>Darum legt man die LED mit der Anode über einen externen Widerstand auf Plus und der Transistor des Controllers liefert den Minus.
Import-Script
12.04.2003, 00:44
und das weiss der 8051 von ganz alleine, ohne Data-Direction-Register? Einfach so? <BR>MOV P1,00h <BR>MOV P1,ffh <BR>und schon blinken LEDs? - hat der einen autodetect drin oder zieht der brachial alles auf Masse wenn er einen MOV 0 da´rauf bekommt? <BR>Interessantes IC!
Import-Script
12.04.2003, 10:58
Andreas, das scheinst du missverstanden zu haben, die LEDs sollen nicht blinken, sondern durch P3.4 ein, und durch P3.5 ausgeschaltet werden. <BR> <BR>Mein Beispiel bezieht sich auf den Atmel 89Cxx, und muss ggf noch an den gewünschten Controller angepasst werden. <BR> <BR>Es war lediglich ein Lösungsansatz, und keine fertige Drag&Drop Routine.
Import-Script
12.04.2003, 14:22
Jo Andreas. <BR> <BR>Die 8051 haben keine ddr. Wenn man eine Null auf den port schreibt zieht der alles bis ca. 20mA gegen Masse. Bei einer eins haellt nur ein kleiner Pullup den Port auf High. Deshalb muss man wenn man mit dem Portpinn etwasd einlesen will ihn auch auf High legen. Dann kann ein angeschlossener IC oder Schalter oder so den Pin gegen Masse ziehen, was sich dann im Port-Register zeigt, da das entsprechende Bit dann Null ist. <BR> <BR>Mit was fuer einer familie arbeitest denn du? <BR> <BR>Gruß Tobias
Import-Script
12.04.2003, 20:59
68000 bzw 68705 als µC. Ich hatte schon immer eine gewisse Abneigung gegen die 80er, kommt daher, dass ich mit 6502 zuerst was am Hut hatte. <BR>Das ging so easy und immer weiter so. Also bin ich dabei geblieben. Natürlich schaue ich auch auf andere Welten, z.B. das, dass man kein Data-Direction bei den 8051ern hat ist mir neu, wieder was gelernt... <BR>Bei den Motorolas und auch bei den ISPs (Thema Lattice, Xilinx) muss man immer zuerst definieren, was man will. Ist auch eigentlich nicht schlecht. Das stört mich z.B. auch an "C" <BR>void, void, Mülleimer und nochmal. <BR>Man kann einer Funktion doch diszipliniert sagen: <BR>dummy:=funktionxy(Wert), wenn man auf das Ergebnis keinen Wert legt. Wenn man´s haben will, ja, dann eben : <BR>Gewünschtes_Ergebnis:=funktionxy(Wert). Warum denn nicht? <BR>Ebenso besagtes Direction-Register. Port mit 8 Bit, davon obere 4 Eingang, untere 4 Ausgang. So will ichs, sage es ihm: "Move.B #$0F,DDRA" und dann ist die Sache klar. --> Motorola funktioniert syntaktisch invers zu 80xx - eigentlich logisch. Move Ein_Byte immediate# des Wertes $=hex0f nach Data_Direction_Register. <BR>Klare Geschichte, oder?
Powered by vBulletin® Version 4.1.12 Copyright ©2012 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.