HDD Clock (Timer Programmieren)

Gast #3861417
Lesenswert?

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.
Gast #3861429
Lesenswert?

Aleksandar J. schrieb:
> Diplomarbeit

Aleksandar 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?
Gast #3861523
Lesenswert?

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!
Gast #3861527
Lesenswert?

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??
#3861531
Lesenswert?

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.
Gast #3861554
Lesenswert?

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.
#3861559
Lesenswert?

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.
Gast #3861562
Lesenswert?

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.
#3861565
Lesenswert?

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.
Gast #3861567
Lesenswert?

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.
Gast #3861578
Lesenswert?

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
Gast #3861746
Lesenswert?

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!
Gast #3861748
Lesenswert?

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.
Gast #3861763
Lesenswert?

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.
Gast #3861786
Lesenswert?

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ß.
Gast #3861802
Lesenswert?

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.
Gast #3861807
Lesenswert?

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.
Gast #3861815
Lesenswert?

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 :)
Gast #3862026
Lesenswert?

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.
#3862046
Lesenswert?

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.
Gast #3862049
Lesenswert?

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.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren