Ich habe ein Problem mit meiner Diplomarbeit(HDD Clock). Und zwar bin
ich gerade dabei ein Programm zu schreiben um den 3
Phasenmotor(Festplattenmotor) ansteuern zu können. ich habe 4
Anschlüsse: 1.)die versorgung; 2,3,4.)die Phasen. Es muss erst NUR die
Phase 1 EIN sein, dann Phase 2, und dann Phase 3. Ich müsste hier doch
einen Timer Programmieren jedoch weiß ich leider nicht wie. Ich hoffe
ihr könnt mir weiter helfen. Programmiert wird in "C". Ich bedanke mich
bereits im vorhinein für jegliche hilfe.
Aleksandar J. schrieb:> Programmiert wird in "C". Ich bedanke mich> bereits im vorhinein für jegliche hilfe.
und wer soll in "C" Programmiert werden? Was sagt das Datenblatt zu
Timern?
Aleksandar J. schrieb:> DiplomarbeitAleksandar J. schrieb:> jedoch weiß ich leider nicht wie
Traurig. Du solltest in der Lage sein, dir dieses Wissen selbst zu
erarbeiten, sei es durch das Lesen eines Buches oder durch das Lesen des
Datenblattes deines Mikrocontrollers...
Und ja, das meine ich ernst. Wenn du bei einer Dimplomarbeit nicht in
der Lage bist, dir selbst zu helfen, dann lass es!
Wie bist du ueberhaupt soweit gekommen?
Peter II schrieb:
> und wer soll in "C" Programmiert werden? Was sagt das Datenblatt zu> Timern?
PIC18f2520
Kaj schrieb:
> Traurig. Du solltest in der Lage sein, dir dieses Wissen selbst zu> erarbeiten, sei es durch das Lesen eines Buches oder durch das Lesen des> Datenblattes deines Mikrocontrollers...>> Und ja, das meine ich ernst. Wenn du bei einer Dimplomarbeit nicht in> der Lage bist, dir selbst zu helfen, dann lass es!> Wie bist du ueberhaupt soweit gekommen?
Das liegt vielleicht an meinen schwachen Programmier Kenntnissen, aber
falls du jemanden nicht helfen möchtest dann bitte ich dich auch keinen
Beitrag ein zu fügen und diese Person nicht runter zu machen. Ich weiß
nicht warum du so etwas machen musst, vielleicht fühlst du dich dabei ja
gut, aber unterlasse es einfach.
Danke an Kaj!
Aleksandar J. schrieb:> Das liegt vielleicht an meinen schwachen Programmier Kenntnissen, aber> falls du jemanden nicht helfen möchtest dann bitte ich dich auch keinen> Beitrag ein zu fügen und diese Person nicht runter zu machen. Ich weiß> nicht warum du so etwas machen musst, vielleicht fühlst du dich dabei ja> gut, aber unterlasse es einfach.> Danke an Kaj!
Geht's noch? Warum sucht man sich denn bitte eine solche Aufgabe, wenn
man die Werkzeuge zur Lösung noch nicht einmal in den Grundzügen
beherrscht??
Aleksandar J. schrieb:
n
> Beitrag ein zu fügen und diese Person nicht runter zu machen. Ich weiß> nicht warum du so etwas machen musst,
vielleicht weil viele von uns schon mal die Erfahrung gemacht haben,
dass da ein neuer mit einem Abschluss in die Firma kommt, der das gar
nicht kann was sein Abschluss eigentlich erwarten lassen sollte.
Personalchefs gehen nur vom Zeugnis aus. Ausbaden dürfen die Misere dann
die, die seine Arbeit mitmachen dürfen, weil er selber das Geforderte
überhaupt nicht kann.
Und sorry. µC programmieren, ohne mit Timern umgehen zu können, geht gar
nicht. Timer sind DIE Arbeitspferde in der µC-Programmierung. Es gibt
kaum ein ernst zu nehmendes Programm, in dem nicht mindestens 1 Timer
eine tragende Rolle spielt.
Karl Heinz schrieb:
> vielleicht weil viele von uns schon mal die Erfahrung gemacht haben,> dass da ein neuer mit einem Abschluss in die Firma kommt, der das gar> nicht kann was sein Abschluss eigentlich erwarten lassen sollte.
so etwas ist mir natürlich bewusst, jedoch liegt der Schwerpunkt meiner
zukünftigen arbeit nicht darin etwas zu Programmieren. Aber ich möchte
hier auch nicht darüber diskutieren weil ich einfach denke das so etwas
nicht sein muss.
Aleksandar J. schrieb:> Aber ich möchte> hier auch nicht darüber diskutieren
Das glaub ich dir unbesehen
> weil ich einfach denke das so etwas> nicht sein muss.
Die meisten hier denken aber schon das das sein muss. Wenn du dich
bisher schon nicht am Riemen gerissen hast, dann tus wenigstens jetzt.
Immerhin ist das dein ABSCHLUSS! Mit dem wird etwas dokumentiert. Und
sei es nur, dass du wenigstens so schlau bist, dir ein Abschlussprojekt
zu suchen, bei dem du nicht mit sapperndem Mundwinkel das ausgesucht
hast was du cool findest, sondern das was du auch stemmen kannst.
Und was hast du so für Leistungstreiber verbaut?
Aber zu den Timern: Da ließt man halt das Datenblatt mit C hat das wenig
zu tun. Da müssen halt die Richtigen Bit in den richtigen Registern
gestzt werden und dann macht der Timer das schon. Und wenn du jetzt
fragst wie man ein Bit in C setzt dann ist eh alles egal.
Karl Heinz schrieb:> sei es nur, dass du wenigstens so schlau bist, dir ein Abschlussprojekt> zu suchen, bei dem du nicht mit sapperndem Mundwinkel das ausgesucht> hast was du cool findest, sondern das was du auch stemmen kannst.
Und seien wir uns mal ehrlich: so schwer ist zumindest der im
Eröffnungsposting angesprochene Teil nicht. Der ist sogar eher, ähm wie
sag ichs, recht trivial, wenn man mit einem Timer zumindest grundlegend
umgehen kann. Genau da besteht die Diskrepanz. Auf deinen Seite steht
eine eigentlich recht einfache Sache, auf der anderen Seite steht das
Wort ABSCHLUSS.
Aleksandar J. schrieb:> jedoch liegt der Schwerpunkt meiner> zukünftigen arbeit nicht darin etwas zu Programmieren
Dann hast du dir offenbar was völlig falsches ausgesucht. Deine
Abschlussarbeit wird ein wesentlicher Bestandteil dessen sein, was sich
dein zukünftiger Arbeitgeber ansehen wird um deine Eignung für das
Unternehmen zu bewerten.
Willkommen in der Realität :)
Was studierst Du, wenn man fragen darf?
Wenn Du natürlich deutschen Sprechgesang und darstellende Kunst des
frühen Känozoikums studierst, dann ist das ja kein Problem.
Es kann natürlich sein, das sich dann hier der eine oder andere die
Frage stellt, was Du dann mit einer HDD-Clock als Studienarbeit anfangen
willst.
Solltest Du allerdings tatsächlich was mit Elektronik studieren, so doch
wohl, weil du das "geil" findest. Und dann macht man das doch auch schon
ein ganze Weile, BEVOR man mit seiner Studienarbeit (Diplom) anfängt.
WAS in alles in der Welt hast Du bislang in deiner Freizeit denn
gemacht, wenn nicht z.B. Mikrocontroller programmiert?
Verstehst Du, weshalb sich hier alle das Maul zereissen?
Wenn Du statt dessen Choreografien erfindest und neun Arten des
Versmasses(Metrum) entwickelst, dann will ich nichts gesagt haben.
Such Dir was in deine Schublade passt und mach nichts Artfremdes als
Diplomarbeit. Mach was Du willst, klar. Geht mich nichts an. Wollte nur
grob aufzeigen, weshalb "alle hier so komisch" sind.
Gruß
StSchlz
Wo kann man denn heute doch eine Diplomarbeit machen? Dachte da wär
alles Bachelor und Master verseucht.
Wo studierst du denn und auf welchen Abschluss genau?
Aleksandar J. schrieb:> Kaj schrieb:>>> Traurig. Du solltest in der Lage sein, dir dieses Wissen selbst zu>> erarbeiten, sei es durch das Lesen eines Buches oder durch das Lesen des>> Datenblattes deines Mikrocontrollers...>>>> Und ja, das meine ich ernst. Wenn du bei einer Dimplomarbeit nicht in>> der Lage bist, dir selbst zu helfen, dann lass es!>> Wie bist du ueberhaupt soweit gekommen?>> Das liegt vielleicht an meinen schwachen Programmier Kenntnissen, aber> falls du jemanden nicht helfen möchtest dann bitte ich dich auch keinen> Beitrag ein zu fügen und diese Person nicht runter zu machen. Ich weiß> nicht warum du so etwas machen musst, vielleicht fühlst du dich dabei ja> gut, aber unterlasse es einfach.> Danke an Kaj!
Ok, jetzt mal ernsthaft:
Es geht um eine Diplomarbeit. Das lässt irgendwie darauf schließen,
das du nicht gerade erst anfängst mit deinem Studium, sondern dich
irgendwie am Ende befindest!
Im Jahre 2014 ist es nicht sonderlich schwer an Informationen zu kommen,
dank Internet. 1970 sah das anders aus, da bin ich mir sicher, auch wenn
ich da noch nicht geboren war.
Aussagen wie "...meine schwachen Programmierkenntnisse..." sind nicht
mehr als eine Ausreden, eben so wie: "Ach, ich will ja ins Fitness
Studio, aber nach der Arbeit bin ich immer so kaputt...".
Hör auch zu weinen und tu was, oder lass es, aber hör auf dich als Opfer
darzustellen!
Du meinst deine Programmierkenntnisse sind nicht ausreichend? Dann
ändere das doch einfach! Programmieren lernt man nicht durch zugucken,
sondern dadurch, das man es einfach macht! Natürlich wirst du dich oft
auf die Fresse legen, ist uns allen hier passiert!
Also: statt hier zu nölen wie gemein mein Beitrag und die Welt ist,
besorg dir ein Buch
(http://www.amazon.de/PIC-Microcontroller-Programmierung-Assembler-Schaltungen-Anwendungsbeispiele/dp/348659706X/ref=sr_1_1?ie=UTF8&qid=1414598732&sr=8-1&keywords=mikrocontroller+pic),
eine IDE, ein Dev-Board, einen Programmer/Debugger (falls nicht schon
auf dem Board vorhanden, wie bei den STM32 Discovery-Boards) und
fang einfach an .
Das Buch suchen hab ich dir jetzt schon abgenommen...
Fang an mit den üblichen LED-Blink-Beispielen, und dann geht's weiter.
Wenn du ein paar Zeilen programmiert hast, und dann was nicht
Funktioniert, kannst du hier immernoch nachfragen, warum dieses oder
jenes nicht Funktioniert.
Willkommen in der wirklichen Welt.
Aleksandar J. schrieb:> ich meine natürlich diesen Thread löschen...
Das sagt mir, das du hier nicht die Antwort bekommen hast die du gesucht
hast... Richtig! Hier wird niemand Deine Diplomarbeit machen. Hier
gibt es hilfe zu selbst hilfe, fertig! (z.B. dezente Hinweise, sich
Informationen zu beschaffen!) In deinem Eingangsposting zeigst du
keinerlei bestrebung auch nur irgendwas selbst tun zu wollen. Das liest
sich wie das übliche "Ich hab hier ne hausaufgabe, hab aber kein bock
die zu machen. Macht ihr das mal."
Meh, Pustekuchen! Deine Arbeit, machst du mal schön selber.
So, und jetzt tu endlich mal was für Deine Diplomarbeit !
Und nein, ich seh das nicht ein, meine Worte in rosa Plüsch zu
verpacken, nur damit es nicht weh tut! Das hat auch nichts mit
"runtermachen" zu tun, aber du musst doch selber zugeben, das es traurig
ist, wenn man vor seiner Diplomarbeit steht (im Jahre 2014), und nicht
in der Lage ist, sich selbstständig Informationen zu beschaffen... oder
möchtest du vielleicht einmal deinen Standpunkt dazu erläutern?
Andi schrieb:> Es wäre toll wenn ihr mir vielleicht einen Code> hinnein stellen könntet.
Lass gut sein, deinen Standpunkt dazu will ich gar nicht hören, denn das
sagt alles !
Aleksandar J. schrieb:> jedoch liegt der Schwerpunkt meiner> zukünftigen arbeit nicht darin etwas zu Programmieren
Herr Richter, ich möchte meine Aussage dazu verweigern!
Stefan Schulz schrieb:> Solltest Du allerdings tatsächlich was mit Elektronik studieren, so doch> wohl, weil du das "geil" findest. Und dann macht man das doch auch schon> ein ganze Weile, BEVOR man mit seiner Studienarbeit (Diplom) anfängt.> WAS in alles in der Welt hast Du bislang in deiner Freizeit denn> gemacht, wenn nicht z.B. Mikrocontroller programmiert?>> Verstehst Du, weshalb sich hier alle das Maul zereissen?
Nein, das verstehe ich AUCH nicht. Warum nicht? Nun, die POLITIK hat
es
so gewollt, daß jeder ALLES studieren kann, weil wir ja einen solchen
Fachkräftemangel haben, daß es einen Hund erbarmt. Wichtig ist der
Titel, was dahintersteckt, ist gleichgültig. Beschwert Euch nicht bei
denen, die auf die Leimrute gelockt wurden.
-----------------------------------------------------------------------+
@TO
Ich kann Dir nicht mit einem fertigen Programm dienen, würde aber so
herangehen: Es muß 3 Zyklen geben, in denen sich die Phasen aber nicht
nur abwechseln, sondern immer 2 überlappen. Wenn Du einen Timer nimmst,
der z.B. 16-Bit "breit" ist, dann mußt Du den Zählumfang so aufteilen,
daß die Zyklen zustande kommen. Der Timer zählt vor sich hin, immer
reih-
um 65536 Schritte. Wenn er bei 65535 angelangt ist, geht es wieder bei 0
los.
Jetzt sagst Du: Ich teile diesen Zählumfang durch 3 und steuere über
3 Ausgänge des Kontrollers 3 Transistoren an uns damit die 3 Feld-
wicklungen.
Das ist erst mal nur ein "Notbetrieb", weil in der Realität die Phasen
nicht nacheinander geschaltet werden.
Zum Ausprobieren reicht das aber erst mal.
Timer programmiert hab ich schon mit 14 Jahren in der achten Klasse.
Hab ich mir selber beigebracht(natürlich mit Unterstützung von Büchern,
Internet war da noch nicht so).
Das machst du jetz auch mal so, natürlich mit der hilfe vom Internet.
Wenn du das nicht schaffst hast du auch kein Diplom verdient und ich
bekomm dich zum Glück nicht als Vorgesetzten.
Eine Frage an Dreister Schnösel. Sind die Schritte (in deinem Bsp.
65535) für jeden PIC anders oder sind es immer 65535 Schritte bei einem
16-Bit "breiten" PIC?
Aleksandar J. schrieb:> Sind die Schritte (in deinem Bsp.> 65535) für jeden PIC anders oder sind es immer 65535 Schritte bei einem> 16-Bit "breiten" PIC?
2 hoch 16 ist immer 65536. Das ist nicht an einen PIC oder AVR oder
sonstwas für einen Kontroller gebunden.
http://www.hbnweb.de/mathematik/langezahl.html
Das war oben nur ein Vorschlag, es gibt mannigfaltige Methoden, solche
Abläufe zu erzeugen.
Du weißt doch, was für einen Kontroller Du nehmen willst bzw. mußt.
Es steht in dessen Datenblatt, wieviele Timer der hat und auch, wie
die beschaffen sind.
Nimm Dir ein Blatt Papier und male Dir auf, wie die die Sache immer und
immer wieder ablaufen muß.
Aleksandar J. schrieb:> Eine Frage an Dreister Schnösel. Sind die Schritte (in deinem Bsp.> 65535) für jeden Timer anders oder sind es immer 65535 Schritte bei einem> 16-Bit "breiten" Timer?
Dreister Schnösel schrieb:
> Du weißt doch, was für einen Kontroller Du nehmen willst bzw. mußt.> Es steht in dessen Datenblatt, wieviele Timer der hat und auch, wie> die beschaffen sind.
Ich verwende den PIC15f2520 und der hat 4 Timer (Timer0 bis Timer3). In
meinem fall müsste ich den Timer0 verwenden weil ich ihn mit dem befehl
"T08BIT = 0" auf 16bit konfigurieren kann.
Ja, jetzt kommt das Problem: Ich kann über Details der PICs nichts
sagen, weil ich ausschließlich mit AVR zu Gange bin.
Aleksandar J. schrieb:> Ich verwende den PIC15f2520 und der hat 4 Timer (Timer0 bis Timer3). In> meinem fall müsste ich den Timer0 verwenden weil ich ihn mit dem befehl> "T08BIT = 0" auf 16bit konfigurieren kann.
Ja, wenn das so ist, dann bist Du ja schon einen Schritt weiter als
vorhin.
Dreister Schnösel schrieb:> Ja, jetzt kommt das Problem: Ich kann über Details der PICs nichts> sagen, weil ich ausschließlich mit AVR zu Gange bin.
Kein problem, ich danke dir trotzdem für den ansatz. Den rest werde
ich schon schaffen sobal ich genau weiß wie man die schritte aufteilt.
> Ja, wenn das so ist, dann bist Du ja schon einen Schritt weiter als> vorhin.
In der tat :)
In einem Punkt bräuchte ich noch einen Tipp :D ich verwende ja den
PIC18f2520, und mein problem ist, dass er den Befehl "ANSEL" nicht
erkennt. Ich habe versucht das Problem hiermit "#include <pic18f2520>"
zu beheben, bin jedoch gescheitert. Wisst ihr vielleicht woran das
liegen könnte? Habe auch lange im Datenblatt gesucht bin jedoch nichts
gefunden was mir weiter heöfen könnte.
schau mal in das Datenblatt, section AD wandler.
das ADC Register ADCON1 hat die bits PCFG3:PCFG0: A/D Port Configuration
Control bits.
Page 266 hat die Tabelle.
Syntax mit XC8 wäre ADCON1bits.PCFG = 0b0011
mit denen kannst du Analog bzw Digital für die Pins einstellen.
ANSEL war für die alten 16er typen, imo.
Peter C. schrieb:> schau mal in das Datenblatt, section AD wandler.> das ADC Register ADCON1 hat die bits PCFG3:PCFG0: A/D Port Configuration> Control bits.> Page 266 hat die Tabelle.> Syntax mit XC8 wäre ADCON1bits.PCFG = 0b0011> mit denen kannst du Analog bzw Digital für die Pins einstellen.> ANSEL war für die alten 16er typen, imo.
Super, ich danke dir. Wir morgen gleich ausprobiert.