Ich möchte mithilfe von drei Schieberegistern 74HC595, 12 Schrittmotoren L293D ansteuern. Hierfür verstehe ich schon wie ich die Bauteile miteinander verschalten muss. Jedoch tue ich mich mit der Programmierung der Schieberegister etwas schwierig. Der Plan ist das immer nur ein gewünschter Output der drei Schieberegister auf High geschaltet ist. Man kann sich dass so vorstellen wie ein Projekt mit 24 LEDs und man möchte nach und nach nur eine ganz bestimmte LED anschalten. Ich habe mich schon grob vertraut gemacht mit der Programmierung von diesen Schieberegistern, allerdings habe ich bisher nur Lauflichter mit passenden Schleifen gesehen und nach programmiert. Für mein Problem fehlt mir noch ein wenig der Ansatz wie ich das am besten umsetze. Ich freue mich über gute Erklärungen, gute Links und allgemein über jede Hilfe.
Gast
#5352856
Beschäftige dich mit dem Datenblatt des HC595. Über DI kannst du mit SHCP einen seriellen Datenstrom durch das Schieberegister schieben. Die Ausgänge bleiben wie vorher. Wenn du z.B. deine 24Bit so hineingeschoben hast, dann gib eine positive Flanke auf STCP und der Inhalt des SR wird auf die Ausgänge gegeben. Wenn du nur einen Ausgang ändern willst, musst du alle 24 Bit (in deinem Fall bei 3 x HC595) neu schreiben, nur eben mit der einen Stelle geändert.
Gast
#5352890
Duda D. schrieb: > Ich möchte mithilfe von drei Schieberegistern 74HC595, 12 > Schrittmotoren > L293D ansteuern. Ist eine Motorsteuerung nicht ziemlich zeitkritisch? Wäre es nicht sinnvoller, einen Controller mit genügend Pins (davon gibt es jede Menge) zu nehmen? Manche Controller ermöglichen dir sogar per Timer eine Taktgenaue Steuerung von weit über 12 Kanälen.
Du legst Dir einen virtuellen Port im SRAM an (24 Bit = 3 Byte) und in dem machst Du Deine Änderungen. Und nach jeder Änderung kopierst Du ihn in das SRG.
Gast
#5352992
Dr. Sommer schrieb: > Ist eine Motorsteuerung nicht ziemlich zeitkritisch? Das kommt wohl auf die gewünschte maximale Schrittfrequenz an. Auch hat der L293 IMHO höchstens aus nostalgischen Gründen noch einen Lebensberechtigung als Treiber für Schrittmotoren. In den meisten Anwendungen wird man heutzutage einen mit Stromregelung einsetzen - jedenfalls wenn es auch um Drehmoment bei höheren Schrittfrequenzen geht.
Gast
#5353013
Duda D. schrieb: > Ich möchte mithilfe von drei Schieberegistern 74HC595, 12 Schrittmotoren > L293D ansteuern. Kannst Du bitte Deine Schaltung skizzieren, Motortyp und Schrittfrequenz mitteilen? Ich glaube nämlich, es handelt sich um eine Fehlplanung.
Ich möchte hiermit keine Motoren steuern, sondern lediglich eine spannungsstimmulation erzeugen. Am Oszilloskop hat das auch schon wunderbar funktioniert. Lediglich soll jetzt das ganze noch mit schieberegistern ausgeweitet werden. Ich hab auch jetzt einen Code entwickelt indem ich die Leds einzeln an bekomme. Ich glaube ich komme doch alleine zurecht. Td vielen Dank :)
Antwort schreiben
Bitte melde dich an, um einen Beitrag zu schreiben.