Forum: Mikrocontroller und Digitale Elektronik Probleme bei VUSB- Bachelorarbeit


von Tobi L. (derarzt)


Angehängte Dateien:

Lesenswert?

Hallo Ich habe ein Problem.
Ich schreibe gerade an meiner Bachelorarbeit udn ich soll erstmal eine 
Motorregelung per USB machen. Das heisst ich steuer den Motor per PWM an 
und greife dann per Lichtschranke die Drehzahl ab.Das ganze läuft mit 
einem Atmega8

Die Steuerung übernimmt allerdings der PC. D.h  Die Solldrehzahl wird 
von PC an den Atmega8 geschickt, der macht daraus eine PWM der Motor 
dreh sich, erzeugt Impulse durch die Lichtschranke, die der selbe 
Atmega8 wieder abgreift und an den pc schickt, der die Solldrehzahl mit 
Impulsen(istdrehzahl vergleicht))

Die Impulse kommen alsInterrupt 1 an den PC an
Mein Problem ist das ganze funktioniert.Allerdings nicht zuverlässig, da 
nach einer unbestimmten Zeit der Atmega8 keine Daten mehr an den PC 
sendet.

Ich weiss nicht was der Grund ist, soweit ich das sehe bleibt aber die 
USB_Kommunikation weiterhin bestehen

Ich habe den Q-Code  des Atmegamal agehängt.
P.s auf Hostseite läuft Java, aber das sollte eig nicht das problem 
sein.
Könntet ihr mir helfen wäre lieb

Liebe Grüße

T.Lenz

von Dipl.-Ing. (Gast)


Lesenswert?

Tobi L. schrieb:
> Die Steuerung übernimmt allerdings der PC. D.h  DIe solldrehzahl wird
> von PC an den Atmega8 geschickt, der macht daraus eine PWM der motor
> dreh sich erzeugt Impulse durch die Lichtschranke die der selbe Atmega8
> wieder abgreift und an den pc schickt der solldrehzahl mit
> Impulsen(istdrehzahl vergleicht))

So, so, der PC steuert, der PC gibt den Sollwert vor, der PC ermittelt 
den Istwert und der µC macht nur die PWM. :-))))))))))))))

Stell die Arbeit ein und besuch die Vorlesung zur Regelungstechnik.


Off Topic:
Gestern Dipl.-Ing., heute Bachelor, morgen Fensterputzer mit E-Kenntnis. 
Wenn die Leistung nicht reicht, verringert man einfach die Ansprüche. 
Armes Deu...

von uC (Gast)


Lesenswert?

Hab mir den Code nicht genau angeschaut, aber gefühlsmäßig würde ich 
einfach sagen: "Dein uC macht das von der Geschwindigkeit einfach nicht 
mit".

Habe schon von V-USB Projekten gelesen wo ein einfacher Interrupt zu 
viel war. Je nach dem wie schnell sich der Motor dreht, befindet sich 
der uC ja mehr im Interrupt des externen Interruptpins als sonst wo. In 
diesem Fall wird auch irgendwann dein V-USB aussteigen.

Ich würde mal versuchsweise ein FT232 oder CP2102 an den UART des 
Controllers hängen und das V-USB auskommentieren. So brauchst Du nichts 
anderes an Deinem Code ändern (außer die UART Routinen z.B. von hier im 
Forum hinzufügen) und kannst schnell beurteilen ob es daran lag...

von Tobi L. (derarzt)


Lesenswert?

uC schrieb:
> Hab mir den Code nicht genau angeschaut, aber gefühlsmäßig würde ich
> einfach sagen: "Dein uC macht das von der Geschwindigkeit einfach nicht
> mit".
>
> Habe schon von V-USB Projekten gelesen wo ein einfacher Interrupt zu
> viel war. Je nach dem wie schnell sich der Motor dreht, befindet sich
> der uC ja mehr im Interrupt des externen Interruptpins als sonst wo. In
> diesem Fall wird auch irgendwann dein V-USB aussteigen.


da ich noch keine lichtschranke habe (die wird noch geliefert) simuliere 
ich die impulse mit einem taster aber das dürfte ja eigentlich egal sein 
oder?

 Der atmega8 steigt ja aber lustiger nicht dann aus wenn ich impulse 
schicken sondern immer zu versch. zeitpunkten

von chose (Gast)


Lesenswert?

Zu viele Daten an PC. da fängt Windoff zu spinnen an. Schicke weniger 
Daten
und lass den Controller die Arbeit erledigen. Lass ihn ZB nur eine 
statusmeldung an den pc schicken (solldrehzahl erreicht, Motor dreht 
links,rechts, aktuelle drehzahl usw).

der PC als schneller Reglerechner, dazu über USB....vergiss es.

von Tobi L. (derarzt)


Lesenswert?

chose schrieb:
> Zu viele Daten an PC. da fängt Windoff zu spinnen an. Schicke weniger
> Daten
> und lass den Controller die Arbeit erledigen. Lass ihn ZB nur eine
> statusmeldung an den pc schicken (solldrehzahl erreicht, Motor dreht
> links,rechts, aktuelle drehzahl usw).
>
> der PC als schneller Reglerechner, dazu über USB....vergiss es.

ich schicke nur 8 byte .....das können doch nicht zu viele daten sein 
oder

von Cyblord -. (cyblord)


Lesenswert?

Tobi L. schrieb:
> chose schrieb:
>> Zu viele Daten an PC. da fängt Windoff zu spinnen an. Schicke weniger
>> Daten
>> und lass den Controller die Arbeit erledigen. Lass ihn ZB nur eine
>> statusmeldung an den pc schicken (solldrehzahl erreicht, Motor dreht
>> links,rechts, aktuelle drehzahl usw).
>>
>> der PC als schneller Reglerechner, dazu über USB....vergiss es.
>
> ich schicke nur 8 byte .....das können doch nicht zu viele daten sein
> oder

Trotzdem. WARUM muss der PC regeln?

Diese Entscheidung hast du doch hoffentlich begründet getroffen.
Und WARUM VUSB und nicht einfach USB->TTL Konverter. Viele Daten sind es 
ja nicht (schreibst du selber).

Der ATmega8 muss alles machen, das ist am besten. Er vergleicht IST und 
SOLL, erzeugt das PWM und regelt das ganze. Er bekommt vom PC nur den 
Solwert vorgegeben. Alles andere muss sehr gut begründet werden.
Und durch das weglassen des VUSB geraffels hast du auch gleich eine 
Fehlerquelle weniger.

Wie du mit einem Taster die Lichtschranke ersetzt bleibt auch dunkel, 
wie schnell dreht denn der Motor und wie oft wird ein Impuls erzeugt pro 
Umdrehung?

gruß cyblord

von Dipl.-Ing. (Gast)


Lesenswert?

cyblord ---- schrieb:
> Trotzdem. WARUM muss der PC regeln?
>
> Diese Entscheidung hast du doch hoffentlich begründet getroffen.
> Und WARUM VUSB und nicht einfach USB->TTL Konverter. Viele Daten sind es
> ja nicht (schreibst du selber).
>
> Der ATmega8 muss alles machen, das ist am besten. Er vergleicht IST und
> SOLL, erzeugt das PWM und regelt das ganze. Er bekommt vom PC nur den
> Solwert vorgegeben. Alles andere muss sehr gut begründet werden.
> Und durch das weglassen des VUSB geraffels hast du auch gleich eine
> Fehlerquelle weniger.

Ist das Anstiftung zum 'gutenbergen'? Hoffentlich wird Tobi Dein und 
nicht mein neuer Kollege.

von SNR (Gast)


Lesenswert?

cyblord ---- schrieb:
> Trotzdem. WARUM muss der PC regeln?

Kann ich mich nur anschließen...ist Quatsch.

Tobi L. schrieb:
> ich schicke nur 8 byte .....das können doch nicht zu viele daten sein
> oder

Je nach dem, Du musst die Datenmenge betrachten. Also wie oft sendest Du 
die 8Byte?

uC schrieb:
> Habe schon von V-USB Projekten gelesen wo ein einfacher Interrupt zu
> viel war.

Jupp, da kann ich mich anschließen. Auch von Problemen mit der 
Versorgungsspannung hab ich schon gelesen. Ist in meinen Augen eher eine 
Bastellösung. Vorallem ohne Quarz (hast Du einen?) alles andere als 
stabil!
Vorher würde ich auch einen USB<->USART Konverter alla FTDI verwenden, 
oder eben gleich einen uC mit USB.

von Cyblord -. (cyblord)


Lesenswert?

Dipl.-Ing. schrieb:

> Ist das Anstiftung zum 'gutenbergen'? Hoffentlich wird Tobi Dein und
> nicht mein neuer Kollege.

Hehe, der ist gut.
Aber da ich als angehender Informatiker meinen Arbeitsplatz bereits 
allein im fensterlosen Keller lokalisiert habe kann er mir als "Kollege" 
gerne ab und zu ne Mail schicken ;-)

von Dipl.-Ing. (Gast)


Lesenswert?

cyblord ---- schrieb:
> kann er mir als "Kollege"
> gerne ab und zu ne Mail schicken

Aber vorher musst Du ihm noch sagen, wie das geht. So einer geht Dir 
nicht vom Rockzipfel. ;-)

von Werner (Gast)


Lesenswert?

Tobi L. schrieb:
> da ich noch keine lichtschranke habe (die wird noch geliefert) simuliere
> ich die impulse mit einem taster aber das dürfte ja eigentlich egal sein
> oder?

Wohl eher "oder". Je nach dem, wie dein Taster so drauf ist, schmeißt 
der deinen Controller beim Ändern des Schaltzustandes durch 
Tastenprellen möglicherweise ganz schön mit Interrupts zu. Hast du dir 
die Signale mal angesehen, die in den µC reingehen?

von Tobi L. (derarzt)


Lesenswert?

SNR schrieb:
> cyblord ---- schrieb:
>> Trotzdem. WARUM muss der PC regeln?
>
> Kann ich mich nur anschließen...ist Quatsch.
>
> Tobi L. schrieb:
>> ich schicke nur 8 byte .....das können doch nicht zu viele daten sein
>> oder
>
> Je nach dem, Du musst die Datenmenge betrachten. Also wie oft sendest Du
> die 8Byte?
>
> uC schrieb:
>> Habe schon von V-USB Projekten gelesen wo ein einfacher Interrupt zu
>> viel war.
>
> Jupp, da kann ich mich anschließen. Auch von Problemen mit der
> Versorgungsspannung hab ich schon gelesen. Ist in meinen Augen eher eine
> Bastellösung. Vorallem ohne Quarz (hast Du einen?) alles andere als
> stabil!
> Vorher würde ich auch einen USB<->USART Konverter alla FTDI verwenden,
> oder eben gleich einen uC mit USB.

ich kann mir vorstellen das e probs gab wenn der interrupt 0 verwendet 
wird (da dieser schon von vusb belegt wird)

ich benutze aber den int1. das problem tritt auch auf wenn kein 
interrupt ausgelöst wird.... und ich verwende einen 12Mhz quarz

von SNR (Gast)


Lesenswert?

Tobi L. schrieb:
>> Tobi L. schrieb:
>>> ich schicke nur 8 byte .....das können doch nicht zu viele daten sein
>>> oder
>>
>> Je nach dem, Du musst die Datenmenge betrachten. Also wie oft sendest Du
>> die 8Byte?

Die Frage wäre auch noch interessant und evtl. ein Grund warum es hängt.

von Tom K. (ez81)


Lesenswert?

Geht es bei der Arbeit um die Regelung? Oder ist die Verbindung über 
V-USB Teil der Aufgabe? Bei ersterem: Bitte bitte den V-USB rauswerfen 
und €5 und 2h in einen richtigen Seriell-USB-Konverter stecken. Die 
Zeit, die Du jetzt mit dem V-USB-Gebastel, unerklärlichen 
Kommunikationsproblemen, gelegentlich verschwindenden COM-Ports auf 
PC-Seite, EMV-Problemen etc. verbringst, wird am Ende für den 
Feinschliff des Textes fehlen.

Grüße,
Tom, der nach einem Projekt von allen V-USB-Ambitionen geheilt ist.

von Tobi L. (derarzt)


Lesenswert?

Tom K. schrieb:
> Geht es bei der Arbeit um die Regelung? Oder ist die Verbindung über
> V-USB Teil der Aufgabe? Bei ersterem: Bitte bitte den V-USB rauswerfen
> und €5 und 2h in einen richtigen Seriell-USB-Konverter stecken. Die
> Zeit, die Du jetzt mit dem V-USB-Gebastel, unerklärlichen
> Kommunikationsproblemen, gelegentlich verschwindenden COM-Ports auf
> PC-Seite, EMV-Problemen etc. verbringst, wird am Ende für den
> Feinschliff des Textes fehlen.
>
> Grüße,
> Tom, der nach einem Projekt von allen V-USB-Ambitionen geheilt ist.

es geht bei der Arbeit um die komminuaktion mit usb das regeln ist nice 
to have und stellt nr eine implementierung da

von Cyblord -. (cyblord)


Lesenswert?

Tobi L. schrieb:
> Tom K. schrieb:
>> Geht es bei der Arbeit um die Regelung? Oder ist die Verbindung über
>> V-USB Teil der Aufgabe? Bei ersterem: Bitte bitte den V-USB rauswerfen
>> und €5 und 2h in einen richtigen Seriell-USB-Konverter stecken. Die
>> Zeit, die Du jetzt mit dem V-USB-Gebastel, unerklärlichen
>> Kommunikationsproblemen, gelegentlich verschwindenden COM-Ports auf
>> PC-Seite, EMV-Problemen etc. verbringst, wird am Ende für den
>> Feinschliff des Textes fehlen.
>>
>> Grüße,
>> Tom, der nach einem Projekt von allen V-USB-Ambitionen geheilt ist.
>
> es geht bei der Arbeit um die komminuaktion mit usb das regeln ist nice
> to have und stellt nr eine implementierung da

Und dies nimmt einen USB->TTL Konverter zwingend aus?

Wie ist denn der Titel der Arbeit?

von Klaus Dieter (Gast)


Lesenswert?

Tobi L. schrieb:
> es geht bei der Arbeit um die komminuaktion mit usb das regeln ist nice
> to have und stellt nr eine implementierung da

Das ist aber nicht alles, oder?

von Tobi L. (derarzt)


Lesenswert?

Klaus Dieter schrieb:
> Tobi L. schrieb:
>> es geht bei der Arbeit um die komminuaktion mit usb das regeln ist nice
>> to have und stellt nr eine implementierung da
>
> Das ist aber nicht alles, oder?

theoretisch schon praktisch finde ich das bisselwenig

von Tobi L. (derarzt)


Lesenswert?

> Wie ist denn der Titel der Arbeit?

Motorregelung per USB^^

von Cyblord -. (cyblord)


Lesenswert?

Tobi L. schrieb:
>> Wie ist denn der Titel der Arbeit?
>
> Motorregelung per USB^^

Lächerlich. Das kriegt man in einem Tag hin dass der Motor eine 
vorgegebene Drehzahl einhält. Dafür brauchts noch nichtmal spezielle 
Algos aus der Regelungstechnik.
Und natürlich verwendet man einem USB Protokollkäfer. Was denn sonst. 
Anspruchsvoller wäre es, wenn du die USB Kommunikation selber entwicklen 
müsstest, aber da du ja die V-USB Lib nimmst ist das eh raus.

gruß cyblord

von Simon K. (simon) Benutzerseite


Lesenswert?

cyblord ---- schrieb:
> Tobi L. schrieb:
>>> Wie ist denn der Titel der Arbeit?
>>
>> Motorregelung per USB^^
>
> Lächerlich. Das kriegt man in einem Tag hin dass der Motor eine
> vorgegebene Drehzahl einhält. Dafür brauchts noch nichtmal spezielle
> Algos aus der Regelungstechnik.

Man darf sich ja auch nicht überarbeiten ;-) Meine Arbeit war auch etwas 
umfangreicher.

von SNR (Gast)


Lesenswert?

cyblord ---- schrieb:
> Und natürlich verwendet man einem USB Protokollkäfer. Was denn sonst.

Einen uC mit USB oder man schreibt einen eigenen USB-Stack ;-)
Das Zweite würde auch eher den Umfang treffen.
Wobei die glaube ich heutzutage nur noch 3 Monate Zeit haben.
Also einen Monat Einarbeitung, einen Monat für das schreiben -> bleibt 
noch ein Monat für die Bearbeitung.

von SNR (Gast)


Lesenswert?

Tobi L. schrieb:
> es geht bei der Arbeit um die komminuaktion mit usb das regeln ist nice
> to have und stellt nr eine implementierung da

Dann würde ich an Deiner Stelle lieber einen anderen uC nehmen der 
bereits USB on Chip hat. Ich frage mich sowieso warum man heutzutage 
noch einen popligen 8-Biter nimmt, wenn es für den gleichen Preis einen 
32-Biter gibt.

von Klaus Dieter (Gast)


Lesenswert?

Aber kann das denn wirklich eine sinnvolle Bachelorarbeit werden? Gab es 
da keine kreativere Idee? Etwas, was auch noch in irgendeiner Form 
nützlich ist? Scheint ja, mindestens teilweise, ein technisches Studium 
zu sein, da gibt es doch einiges an ungelösten Problemen oder 
interessanten Aufgabenstellungen!

von Cyblord -. (cyblord)


Lesenswert?

SNR schrieb:
> Tobi L. schrieb:
>> es geht bei der Arbeit um die komminuaktion mit usb das regeln ist nice
>> to have und stellt nr eine implementierung da
>
> Dann würde ich an Deiner Stelle lieber einen anderen uC nehmen der
> bereits USB on Chip hat. Ich frage mich sowieso warum man heutzutage
> noch einen popligen 8-Biter nimmt, wenn es für den gleichen Preis einen
> 32-Biter gibt.

Naja die 8 Bitter sind ne Ecke aufgeräumter und durchschaubarer. 
Ausserdem wenn ein 8 Bitter für die Aufgabe ausreicht, warum nicht.

von Egs_ti (Gast)


Lesenswert?

blabla. es gibt auch 8 biter mit USB on board.....

das ist aber nicht schon etwa die gesamte bachelorarbeit, oder???

von Simon K. (simon) Benutzerseite


Lesenswert?

cyblord ---- schrieb:
> Naja die 8 Bitter sind ne Ecke aufgeräumter und durchschaubarer.
> Ausserdem wenn ein 8 Bitter für die Aufgabe ausreicht, warum nicht.

Dann wenigstens einen 8-Bitter mit USB.

AVR-USB ist meiner Meinung nach eher Pfusch (mir fällt gerade kein 
besseres Wort ein). Nicht, dass du damit noch Probleme bekommst (auch 
zeitlich).

Aber ein bisschen USB und eine Regelschleife mit einer PWM Endstufe? Das 
ist doch eher ein Wochenendprojekt ;-)

von Egs_ti (Gast)


Lesenswert?

cyblord ---- schrieb:
> Tobi L. schrieb:
>>> Wie ist denn der Titel der Arbeit?
>>
>> Motorregelung per USB^^
>
> Lächerlich. Das kriegt man in einem Tag hin dass der Motor eine
> vorgegebene Drehzahl einhält. Dafür brauchts noch nichtmal spezielle
> Algos aus der Regelungstechnik.
> Und natürlich verwendet man einem USB Protokollkäfer. Was denn sonst.
> Anspruchsvoller wäre es, wenn du die USB Kommunikation selber entwicklen
> müsstest, aber da du ja die V-USB Lib nimmst ist das eh raus.
>
> gruß cyblord


finde es auch extrem flach... was anderes wärs, wenn erst echt den USB 
Stack selber machen würde.... aber so einer Arbeit muss doch auch ein 
Professor zustimmen. dann wird ja scheinbar von der Seite gar nichts 
gefordert.

von Egs_ti (Gast)


Lesenswert?

ich kann die pic18 mit USB empfehlen. haben 8 Bit... oder je andre 
Hochschule...

von Cyblord -. (cyblord)


Lesenswert?

Egs_ti schrieb:

>
> finde es auch extrem flach... was anderes wärs, wenn erst echt den USB
> Stack selber machen würde.... aber so einer Arbeit muss doch auch ein
> Professor zustimmen. dann wird ja scheinbar von der Seite gar nichts
> gefordert.

Du musst halt auch mal sehen welche Dorfschulen heutzutage mal flott nen 
Bachelor "Studiengang" anbieten. Dozenten sind dann irgendwelche 
Privapersonen (siehe den Angeberthread hier wo sich Ings. damit brüsten 
zu dozieren). Und die nennen sich dann auch nur noch "Hochschule" obwohl 
sie bisher ne drittklassige FH waren. Also alles und jeder studiert 
heute an einer Hochschule.
Das kannst du mit einer Uni oder gar einer Diplomarbeit einfach nicht 
mehr vergleichen.

von Egs_ti (Gast)


Lesenswert?

hmmm, aber mit sonst ner thesis hat man doch niergends je chance. die 
lachen einen doch aus..

von Egs_ti (Gast)


Lesenswert?

also bei ins an der fh  sind Sachen wie VGA Schnittstelle auf fpga oder 
ähnliches angesagt.... schaut vorbei: hs-pforzheim.de

von SNR (Gast)


Lesenswert?

cyblord ---- schrieb:
> Naja die 8 Bitter sind ne Ecke aufgeräumter und durchschaubarer.
> Ausserdem wenn ein 8 Bitter für die Aufgabe ausreicht, warum nicht.

Ja, habe ich früher auch immer gesagt. Für minimale Dinge reicht so ein 
8Biter ja auch aus. Aber warum soll ich mich unnötig einschränken? Das 
fängt bei Datentypen an und hört bei den Interrupts auf...


Egs_ti schrieb:
> also bei ins an der fh  sind Sachen wie VGA Schnittstelle auf fpga oder
> ähnliches angesagt.... schaut vorbei: hs-pforzheim.de

/Ironie on
Wow, das ist ja eine ganz andere Hausnummer.
/Ironie off

Manch andere Leute machen sowas auf nem 8 Biter in ASM.

von Klaus Dieter (Gast)


Lesenswert?

Und Tobi L., nicht, dass du das jetzt falsch verstehst. Das ist hier 
jetzt sicher nicht nur reines Gemecker, sonder sicherlich auch der ein 
oder andere Tipp, dass das nicht unbedingt DAS Thema für eine 
Bacholorarbeit ist. Zumindest dann, wenn es nicht nur darum geht, 
schnell und bequem fertig zu werden.

von Egs_ti (Gast)


Lesenswert?

willst jetzt aber nicht vhdl mit asm vergleichen oO

von oszi40 (Gast)


Lesenswert?

Egs_ti schrieb:
> finde es auch extrem flach...
Das Projekt USB-Eierwärmer war sicher schon vergeben? :-)

Mit Eurem Beitrag habt Ihr Tobi aber wenig geholfen. Für mich stellt 
sich die 1.Frage, ob Tobi schon mal, ohne seine prellende Taste 
grundsätzlich eine DAUERHAFTE, sichere Verbindung zum PC betreiben 
konnte. Wahrscheinlich verschuckt sich da schon was? Dann sollte er mal 
systematischer vorgehen.

von Egs_ti (Gast)


Lesenswert?

ach so, das war übrigens nur ne  Projektarbeit ...

von tobi L (Gast)


Lesenswert?

> Wohl eher "oder". Je nach dem, wie dein Taster so drauf ist, schmeißt
> der deinen Controller beim Ändern des Schaltzustandes durch
> Tastenprellen möglicherweise ganz schön mit Interrupts zu. Hast du dir
> die Signale mal angesehen, die in den µC reingehen?

habe dazu eine status LED die bei jedem tastendruck den zustand ändert

von tobi L (Gast)


Lesenswert?

oszi40 schrieb:
> Mit Eurem Beitrag habt Ihr Tobi aber wenig geholfen. Für mich stellt
> sich die 1.Frage, ob Tobi schon mal, ohne seine prellende Taste
> grundsätzlich eine DAUERHAFTE, sichere Verbindung zum PC betreiben
> konnte. Wahrscheinlich verschuckt sich da schon was? Dann sollte er mal
> systematischer vorgehen.

endlich mal JMD der sich wirklich gedanken macht. Dem atemga8 ist es 
scheiss egal ob ich ne taste drücke oder nicht iwann schickt er keine 
Daten mehr. Wobei die kommunikation anscheimnend wirkloch vorhanden 
bleibt

von Nur so (Gast)


Lesenswert?

Egs_ti schrieb:
> hmmm, aber mit sonst ner thesis hat man doch niergends je chance. die
> lachen einen doch aus..

Die Frage ist, ob jemand mit solch einer Rechtschreibung, bessere 
Chancen hat...

von Norbert S. (norberts)


Lesenswert?

Hi,

und da die LED nicht blinkt, prellt die Taste nicht? Oh mann...

Gruß,
Norbert

von tobi L (Gast)


Lesenswert?

Norbert S. schrieb:
> Hi,
>
> und da die LED nicht blinkt, prellt die Taste nicht? Oh mann...
>
> Gruß,
> Norbert

das habe ich nicht gesagt..! ich habe gesagt bei jedem Tastendruch 
wechselt die LED ihren Zustand.

D.h
wenn die LED initial Aus ist
Erste Möglichkeit Tastendruck ohne Prellen -> LED AN.
Zweite Möglichkeit Tastendruck mit Prellen -> LED AN durch Preller-> LED 
AUS.

Hoffe es ist nun klar geworden-.-

von EGS_TI (Gast)


Lesenswert?

Nur so schrieb:
> Egs_ti schrieb:
>> hmmm, aber mit sonst ner thesis hat man doch niergends je chance. die
>> lachen einen doch aus..
>
> Die Frage ist, ob jemand mit solch einer Rechtschreibung, bessere
> Chancen hat...

Tja, wenn ich vom Handy aus schreibe, achte ich da nicht so drauf, aber 
schön dass du dich dran auf hängst... :)

von Fragender (Gast)


Lesenswert?

tobi L schrieb:
> endlich mal JMD der sich wirklich gedanken macht

Wem seine Bachelor-Arbeit ist das eigentlich? Wer sollte sich also 
Gedanken machen? Jeder Lehrling im 3. Lehrjahr kann sowas besser! Wollt 
ihr denn gar nichts mehr lernen, nur noch gutenbergen???

von Tobi L (Gast)


Angehängte Dateien:

Lesenswert?

ich habe mal folgenden quelltext compiliert und laufen gelassen und 
selbst da schickt mir das device iwann keine neuen daten mehr.... es 
scheint also wirklich mit dem interrupt 1 zusammen zu hängen....oder 
seht ihr irgendwo irgendwelche fehler??

meien frage kann ich das problem lösen indem ich am anfang der ISR von 
int 1 zuerst die interrups deaktiviere und am ende wieder aktiviere?

LÖiebe grüße

Tobi

von oszi40 (Gast)


Lesenswert?

tobi L schrieb:
> Zweite Möglichkeit Tastendruck mit Prellen -> LED AN durch Preller-> LED
> AUS.
Autsch! Schau Dir ein Oszillogramm an: 
http://de.wikipedia.org/wiki/Prellen
Statt simplen Tastendruck könnte man auch ein langsames Blinken 
programmieren und auswerten. Wenn das klappt kannst Du weitersuchen.

von Hans (Gast)


Lesenswert?

Schau doch mal in der usbdrv.h unter den Punkten Interrupt latency und 
Maximum interrupt duration / CPU cycle consumption nach. Danach 
begutachtest du mal den code, der mit avr-objdump -dS ausgegeben wird 
und zählst die Takte, welche die ISR beansprucht. Irgendwie beisst sich 
das.

von Tobi L (Gast)


Lesenswert?

Hans schrieb:
> Schau doch mal in der usbdrv.h unter den Punkten Interrupt latency und
> Maximum interrupt duration / CPU cycle consumption nach. Danach
> begutachtest du mal den code, der mit avr-objdump -dS ausgegeben wird
> und zählst die Takte, welche die ISR beansprucht. Irgendwie beisst sich
> das.

endlich mal en anständiger Vorschlag... beimn ersten überfliegen steige 
ich da zwar noch nicht ganz durch werde es mir aber mal morgn in ruhe 
durchlesen..Danke!

von Tobi L (Gast)


Lesenswert?

Hans schrieb:
> Schau doch mal in der usbdrv.h unter den Punkten Interrupt latency und
> Maximum interrupt duration / CPU cycle consumption nach. Danach
> begutachtest du mal den code, der mit avr-objdump -dS ausgegeben wird
> und zählst die Takte, welche die ISR beansprucht. Irgendwie beisst sich
> das.

habe mich jetzt mal ein wenig mehr reingearbeitet und ich probiere es 
gerade mal aus. könnte sein als hättest du den fehler gefunden.
meien frage

kann ich nicht auch statt dem ISR_NOBLOCK  paramter in jeder ISR

jede ISR wie folgt aufbauen:?

ISR(OVERFLOW...){
cli();//interrupts global ausschalten

mein code



sei();//interrupts global einschalten
}

von Cyblord -. (cyblord)


Lesenswert?

Tobi L schrieb:

> kann ich nicht auch statt dem ISR_NOBLOCK  paramter in jeder ISR
>
> jede ISR wie folgt aufbauen:?
>
> ISR(OVERFLOW...){
> cli();//interrupts global ausschalten
>
> mein code
>
>
>
> sei();//interrupts global einschalten
> }

Beim Aufruf einer ISR wird das I-Bit bereits automatisch gelöscht.

von Matthias S. (Firma: matzetronics) (mschoeldgen)


Lesenswert?

Ich habe eigentlich gute Erfahrungen mit V-USB gemacht, wenn man den MC 
nicht überfordert. V-USB braucht den höchsten IRQ im System, alle 
anderen müssen defensiv programmiert sein, aber dann spielt es 
eigentlich recht gut, und auch stundenlang. Allerdings ist die 12 Mhz 
Variante die langsamste von allen, ich spendiere immer 16 Mhz.
Was mir auffällt:
Du initialisierst die Ports erst, nachdem die IRQs schon laufen - 
schlechte Idee.
Generell solltest du auch mal schauen, ob du z.B. den COMPA Irq 
überhaupt brauchst. Ein einfaches Schreiben von OCR1A braucht keinen 
eigenen Interrupt.
Verschwende keine Zeit in deinen IRQ Routinen. Verlege einfache Aufgaben 
in die main loop. Überlege die Verwendung eines PID Reglers für den 
MC,damit der den Grossteil des Jobs selber macht.
Schau bei anderen V-USB Projekten nach, wie die Jungs mit dem Watchdog 
umgehen.

von Matthias S. (Firma: matzetronics) (mschoeldgen)


Lesenswert?

Ah, noch vergessen: Du solltest unbedingt die Variante mit den 3,6 Volt 
Zenerdioden an den Datenleitungen nehmen, nicht die mit den 2 Si-Dioden 
in der Vcc des Prozessors. Alternativ speise den gesamten MC aus einem 
3,3 Volt LDO.

von Tobi L. (derarzt)


Angehängte Dateien:

Lesenswert?

ich habe mir mal die Vorschläge zu Herzen genommen und einige änderungen 
vorgenommen. allerdings funktioniert es immernoch nicht zuverlässig.-.-


würde es helfen wenn ich am anfang der funktionread bzw funktionwrite 
methode die interrupts global ausschalte und am ende wieder global 
einschalte?

von Tobi L. (derarzt)


Angehängte Dateien:

Lesenswert?

ich habe den aufwand für den atmega8 noch weiter reduziert mit der 
aktuellen version und trotzdem macht er die scheisse-.-

ich habe jetzt nur die PWM laufen aber ohne Interrupt
und den interrupt 1

unterrupt0 wird ja von VUSB genutzt und soweit ich weiss ist int0 höher 
priorisiert als int1 also dürfte es theoretisch keine probleme geben

von Marc O. (marcosfs)


Lesenswert?

Das Problem hab ich mir jetzt nicht angeschaut, aber ich bin mir sicher 
du kriegst es hin. Ich wollte dir nur mein Mitgefühl mitteilen, weil du 
hier um Hilfe bittest, und darüber hinweg schauen musst, dass 
irgendwelche Leute mit Ego-Problemen sich dadurch beweisen müssen, 
andere in so einem Forum fertig zu machen, und ihre Arbeit lächerlich 
und Murks zu nennen, statt zu HELFEN, was der eigentliche Zweck eines 
Forums ist. Frustrierend, oder?

Ich hab das Gefühl aber, wenn sie hier sind, dass sie nicht gerade 
Abteilungschefs bei Bosch oder so was sind, sonst hätten sie 1. kein 
Ego-Problem dass sie so kindisch verarbeiten müssten, 2. keine Zeit, in 
so einem Forum ihre Zeit damit zu verschwenden, andere Leute umsonst 
fertig zu machen, und würden 3. deswegen ihre wertvolle Zeit damit 
verbringen, zu HELFEN, wenn sie hier überhaupt einen Beitrag leisten 
wollen.

Ich hab jetzt auch nicht viel geholfen, aber wollte dir nur bissle 
Motivation geben, irgendwo da draußen im wilden Internet hilft dir 
bestimmt jemand. Such mal auf Englisch oder so =P

Grüße, viel Glück und Erfolg bei deiner Arbeit

von Profi (Gast)


Lesenswert?

Marc O.S. schrieb:
> Ich wollte dir nur mein Mitgefühl mitteilen, weil du
> hier um Hilfe bittest, und darüber hinweg schauen musst, dass
> irgendwelche Leute mit Ego-Problemen sich dadurch beweisen müssen,
> andere in so einem Forum fertig zu machen, und ihre Arbeit lächerlich
> und Murks zu nennen, statt zu HELFEN, was der eigentliche Zweck eines
> Forums ist.

Der Tobi erstellt eine wissenschaftliche Abschlussarbeit. Seine 
Vorgehensweise ist dabei nicht sehr wisenschaftlich. Das sieht eher nach 
Versuch und Irrtum aus.

Wenn ihm die Lösung - wie Marc es wünscht - hier vorgegeben wird, 
entspricht das nicht dem Sinn und Zweck der Abschlussarbeit. Ein Prof., 
der ein solches Thema vergibt, liest hier bestimmt nicht mit. Tobi 
"Gutenberger" wird mit den fremden Federn punkten. Im Berufsleben wird 
er schnell als Blender auffliegen. Um Tobi zu helfen, muss man ihn 
ermutigen, sich wissenschaftlich dem Problem zu nähern.

von Tobi L. (derarzt)


Lesenswert?

Profi schrieb:
> Marc O.S. schrieb:
>> Ich wollte dir nur mein Mitgefühl mitteilen, weil du
>> hier um Hilfe bittest, und darüber hinweg schauen musst, dass
>> irgendwelche Leute mit Ego-Problemen sich dadurch beweisen müssen,
>> andere in so einem Forum fertig zu machen, und ihre Arbeit lächerlich
>> und Murks zu nennen, statt zu HELFEN, was der eigentliche Zweck eines
>> Forums ist.
>
> Der Tobi erstellt eine wissenschaftliche Abschlussarbeit. Seine
> Vorgehensweise ist dabei nicht sehr wisenschaftlich. Das sieht eher nach
> Versuch und Irrtum aus.
>
> Wenn ihm die Lösung - wie Marc es wünscht - hier vorgegeben wird,
> entspricht das nicht dem Sinn und Zweck der Abschlussarbeit. Ein Prof.,
> der ein solches Thema vergibt, liest hier bestimmt nicht mit. Tobi
> "Gutenberger" wird mit den fremden Federn punkten. Im Berufsleben wird
> er schnell als Blender auffliegen. Um Tobi zu helfen, muss man ihn
> ermutigen, sich wissenschaftlich dem Problem zu nähern.

das verstehe ich vollkommen...allerdings sehe ich es nicht so dass ich 
es gleich alles "gutenberge". Ich habe hier einfach einen nicht 
reproduzierbaren Fehler und bin mit dem nerven am Ende da ich einfach 
nicht weiterkomme seit 1 woche und schon mehrer Nachthichten eingelegt 
habe! Ehrlich gesat glaube ich nicht dass ich als Blender im Berufsleben 
gelten werde wenn ich meine Kollegen bei einem nicht reproduzierbaren 
Fehler um Hilfe frage oder?

ich glaube "profi" verwechselt da den Begruff " Gutenbergen" mit "um 
Hilfe bitten"

von Cyblord -. (cyblord)


Lesenswert?

Du hast auch meine Fragen zu deinem Aufbau einfach ignoriert.

- Muss es V-USB sein? Scheiden USB-TTL und µC mit integr. USB aus?
- Warum muss der PC regeln und schickt nicht einfach den sollwert an den 
atmega und dieser übernimmt die regelung?
- Was ist das erklärte Ziel deiner Arbeit? Du schreibst dass die 
Motorregelung nur eine Präsentation der USB Verbindung sein soll, d.h. 
der Fokus liegt auf der USB Verbindung. Aber warum dann V-USB? Das ist 
auch nur das sture verwenden einer fertigen lib.

gruß cyblord

von Matthias S. (Firma: matzetronics) (mschoeldgen)


Lesenswert?

Du hast dein Array 'datenbuffer' sehr knapp bemessen und ich vermute, 
das könnte ein Teil des Problems sein:
1
   if(len > bytesRemaining)          // len is max chunk size
2
        len = bytesRemaining;     // send an incomplete chunk
3
   
4
for(i = 0; i < len; i++){
5
        datenbuffer[currentPosition++] = data[i];
6
}
7
OCR1A =datenbuffer[1];
8
currentPosition += len;
9
bytesRemaining -= len;
Mach mal den datenbuffer grösser. Ein Überschreiben des Endes kann sehr 
eigenartige Effekte erzeugen. Ist eigentlich eine gute Strategie, ein 
paar Bytes mehr zu reservieren, als real benutzt werden.

von oszi40 (Gast)


Lesenswert?

Tobi L. schrieb:
> ich habe den aufwand für den atmega8 noch weiter reduziert mit der
> aktuellen version und trotzdem macht er die scheisse-.-

Deinen Code habe ich nicht ausgewertet. Finde erst mal an Hand eines 
simplen Programms heraus, wo die Säge grundsätzlich klemmt: 
USB-Übertragung oder PWM-Rechenzeit. Hier im Forum sind auch noch 
zahlreiche Beiträge über USB-Probleme zu finden. Jede Forum-Suche wird 
Dir neue Erkenntnisse bringen. Eine Bachelorarbeit braucht auch etwas 
systematischen Forschergeist!

von Anon Y. (avion23)


Lesenswert?

Matthias Sch. schrieb:
> Ist eigentlich eine gute Strategie, ein
> paar Bytes mehr zu reservieren, als real benutzt werden.

wtf? Das verstehe ich wirklich nicht.

von Tobi L. (derarzt)


Lesenswert?

cyblord ---- schrieb:
> Du hast auch meine Fragen zu deinem Aufbau einfach ignoriert.
>
> - Muss es V-USB sein? Scheiden USB-TTL und µC mit integr. USB aus?
> - Warum muss der PC regeln und schickt nicht einfach den sollwert an den
> atmega und dieser übernimmt die regelung?
> - Was ist das erklärte Ziel deiner Arbeit? Du schreibst dass die
> Motorregelung nur eine Präsentation der USB Verbindung sein soll, d.h.
> der Fokus liegt auf der USB Verbindung. Aber warum dann V-USB? Das ist
> auch nur das sture verwenden einer fertigen lib.
>
> gruß cyblord

> - Muss es V-USB sein? Scheiden USB-TTL und µC mit integr. USB aus?

ausser vusb kenn ich keien lib für AVRs. zu USB-TTL weiss ich im mom 
ehrlich gesagt nicht was du meinst...

> - Warum muss der PC regeln und schickt nicht einfach den sollwert an den
> atmega und dieser übernimmt die regelung?

das ahbe ich mir auch schon überlegt aber wie weiss ich dann ob das 
device noch auf meine sollwert regelungen reagiert?

von Profi (Gast)


Lesenswert?

cyblord ---- schrieb:
> Was ist das erklärte Ziel deiner Arbeit?

Genau, das wäre zu klären. Dann macht man sich über Lösungsstrategien 
Gedanken. Man wählt die passende Lösung unter Beachtung der 
Randbedingungen, ...

Und bereits hier stolpert Tobi, er kennt die Randbedingung seiner 
gewählten Lösung nicht. Aber egal, fummeln hier, fummeln da, Hilferuf 
ins Forum, ..., es wird schon irgendwie gehen.

@Tobi
Das ist von mir nicht böse gemeint, aber bei Deiner Abschlussarbeit ist 
der Weg das Ziel!

von Tobi L. (derarzt)


Lesenswert?

oszi40 schrieb:
> Tobi L. schrieb:
>> ich habe den aufwand für den atmega8 noch weiter reduziert mit der
>> aktuellen version und trotzdem macht er die scheisse-.-
>
> Deinen Code habe ich nicht ausgewertet. Finde erst mal an Hand eines
> simplen Programms heraus, wo die Säge grundsätzlich klemmt:
> USB-Übertragung oder PWM-Rechenzeit. Hier im Forum sind auch noch
> zahlreiche Beiträge über USB-Probleme zu finden. Jede Forum-Suche wird
> Dir neue Erkenntnisse bringen. Eine Bachelorarbeit braucht auch etwas
> systematischen Forschergeist!

also so wie ich es sehe klemmt es am Int1 ich weiss zwar nicht warum 
aber ich habe die pwm komplett ausgeschaltet. und nur den interrupt 
eingeschaltet dann habe ich per taster impulse erzeugt wie blöd...dann 
aufgehört und nach 10 min blieb das teil stehen...bzw hat keine daten 
mehr gesendet....der taster lief ging aber weiterhin

von Tobi L. (derarzt)


Lesenswert?

oszi40 schrieb:
> Tobi L. schrieb:
>> ich habe den aufwand für den atmega8 noch weiter reduziert mit der
>> aktuellen version und trotzdem macht er die scheisse-.-
>
> Deinen Code habe ich nicht ausgewertet. Finde erst mal an Hand eines
> simplen Programms heraus, wo die Säge grundsätzlich klemmt:
> USB-Übertragung oder PWM-Rechenzeit. Hier im Forum sind auch noch
> zahlreiche Beiträge über USB-Probleme zu finden. Jede Forum-Suche wird
> Dir neue Erkenntnisse bringen. Eine Bachelorarbeit braucht auch etwas
> systematischen Forschergeist!

also so wie ich es sehe klemmt es am Int1 ich weiss zwar nicht warum 
aber ich habe die pwm komplett ausgeschaltet. und nur den interrupt 
eingeschaltet dann habe ich per taster impulse erzeugt wie blöd...dann 
aufgehört und nach 10 min blieb das teil stehen...bzw hat keine daten 
mehr gesendet....der taster lief ging aber weiterhin

Profi schrieb:
> cyblord ---- schrieb:
>> Was ist das erklärte Ziel deiner Arbeit?
>
> Genau, das wäre zu klären. Dann macht man sich über Lösungsstrategien
> Gedanken. Man wählt die passende Lösung unter Beachtung der
> Randbedingungen, ...


das erklärte ziel ist mit dem thema meiner bachelorarbeit beschreiben

"eine USB-motorregelung mit hilfe eines AVR mikrocontrollers"

von Heinz (Gast)


Lesenswert?

Tobi L. schrieb:
> eine USB-motorregelung mit hilfe eines AVR mikrocontrollers

Und diesen Sprachmist bekommst du bei deinem Prof. durch?

von Floh (Gast)


Lesenswert?

Meine Meinung:
V-USB würde ich niemals für eine Bachelorarbeit verwenden.
Auf der V-USB-Seite wird eindeutig darauf hingewiesen, dass mehrere 
Dinge der USB-Spezifikation verletzt werden.
Somit ist die V-USB-Lösung eine sicherlich angenehme Lösung für 
Basteleien (Hab hier selbst 2 am Laufen), aber für richtige Entwicklung 
gehört entweder ein USB-RS232-Umsetzer (z.B. ftdi) oder direkt ein 
Controller mit USB-Schnittstelle (z.B. mega32u4, at90usb...) her.
Diese Bausteine laufen dann zuverlässig und das Timing ist recht 
unkritisch, da dies die Hardware übernimmt.

von Cyblord -. (cyblord)


Lesenswert?

Tobi L. schrieb:

> ausser vusb kenn ich keien lib für AVRs. zu USB-TTL weiss ich im mom
> ehrlich gesagt nicht was du meinst...

Ich meine auch keine andere lib. USB-TTL damit meine ich eine einfache 
serielle Schnittstelle also USB->RS232->TTL.
(Wenn du nichtmal RS232 kennst wundert mich das scheitern bei USB mal 
gar nicht. Warum muss man immer gleich den komplizierten Weg gehen ohne 
auch nur EINMAL eine pupsige serielle Verbindung zwischen PC und 
Controller hergestellt zu haben?)

Aber diese Methode ist sehr einfach, ist erprobt, viele AVRs haben 
Hardware USARTs drinn. D.h. du hättest erstmal eine funktionierende 
Verbindung zum PC, und kannst dich auf den Rest der Aufgabe 
konzentrieren.

> das ahbe ich mir auch schon überlegt aber wie weiss ich dann ob das
> device noch auf meine sollwert regelungen reagiert?
Na weil der Controller natürlich Status-Infos zurücksendet. z.B. die IST 
Drehzahl. Wurde aber weiter oben schon genauso empfohlen.

gruß cyblord

von Tobi L. (derarzt)


Lesenswert?

Heinz schrieb:
> Tobi L. schrieb:
>> eine USB-motorregelung mit hilfe eines AVR mikrocontrollers
>
> Und diesen Sprachmist bekommst du bei deinem Prof. durch?

was ist jetzt so verkehrt an dem Titel? ja die Groß-und Kleinschreibung 
stimmt nicht. Aber ich wiederhole mich gerne wieder...Ich wusste nicht, 
dass es im Forum hier auf 100%tig richtige Rechtschreibung drauf 
ankommt.

von Matthias S. (Firma: matzetronics) (mschoeldgen)


Lesenswert?

Tobi L. schrieb:
> "eine USB-motorregelung mit hilfe eines AVR mikrocontrollers"

Dann geh doch mal anders vor. Implementiere erstmal die PWM und die 
Istwerterfassung mit Hilfe eines echten Motors. Implementiere dann den 
Regler, z.B. schau dir mal Application Note AVR221 an, ein prima PID 
Regler. Sollwerte kannst du ja mit dem Taster setzen und den Regler 
testen.

Gehe dann an die Kommunikation ran. V-USB saugt ne Menge Resourcen, 
deswegen ist vllt ein FT232 oder eine ähnliche Lösung das einfachste, 
zumal dann jeder Mac, Linux- oder M$ Rechner mit dem Teil kommunizieren 
könnte.

von Klaus Dieter (Gast)


Lesenswert?

Tobi L. schrieb:
> das ahbe ich mir auch schon überlegt aber wie weiss ich dann ob das
> device noch auf meine sollwert regelungen reagiert?

Wo ist das Problem? Du schickst einen Sollwert, der µC antwortet mit 
einem ACK. Wenn dir das nicht reicht, kann dir der Controller sogar noch 
melden, wenn der Sollwert erreicht ist, wenn er nicht erreicht werden 
konnte (PWM auf Vollgas und Drehzahl trotzdem zu niedrig), wie auch 
immer.

von Tobi L. (derarzt)


Lesenswert?

cyblord ---- schrieb:
> Tobi L. schrieb:
>
>> ausser vusb kenn ich keien lib für AVRs. zu USB-TTL weiss ich im mom
>> ehrlich gesagt nicht was du meinst...
>
> Ich meine auch keine andere lib. USB-TTL damit meine ich eine einfache
> serielle Schnittstelle also USB->RS232->TTL.
> (Wenn du nichtmal RS232 kennst wundert mich das scheitern bei USB mal
> gar nicht. Warum muss man immer gleich den komplizierten Weg gehen ohne
> auch nur EINMAL eine pupsige serielle Verbindung zwischen PC und
> Controller hergestellt zu haben?)

klar kenn ich RS2323 nur versthe ich nicht was mir diese wandlung direkt 
bringen soll statt usb eine UART zu nehmen.


> Aber diese Methode ist sehr einfach, ist erprobt, viele AVRs haben
> Hardware USARTs drinn. D.h. du hättest erstmal eine funktionierende
> Verbindung zum PC, und kannst dich auf den Rest der Aufgabe
> konzentrieren.
>
>> das ahbe ich mir auch schon überlegt aber wie weiss ich dann ob das
>> device noch auf meine sollwert regelungen reagiert?
> Na weil der Controller natürlich Status-Infos zurücksendet. z.B. die IST
> Drehzahl. Wurde aber weiter oben schon genauso empfohlen.
aber wenn ich die ISTdrehzahl zurücksende habe ich doch genau das selbe 
problem wieder Oo oder nicht?

von Tobi L. (derarzt)


Lesenswert?

Matthias Sch. schrieb:
> Tobi L. schrieb:
>> "eine USB-motorregelung mit hilfe eines AVR mikrocontrollers"
>
> Dann geh doch mal anders vor. Implementiere erstmal die PWM und die
> Istwerterfassung mit Hilfe eines echten Motors. Implementiere dann den
> Regler, z.B. schau dir mal Application Note AVR221 an, ein prima PID
> Regler. Sollwerte kannst du ja mit dem Taster setzen und den Regler
> testen.
>
> Gehe dann an die Kommunikation ran. V-USB saugt ne Menge Resourcen,
> deswegen ist vllt ein FT232 oder eine ähnliche Lösung das einfachste,
> zumal dann jeder Mac, Linux- oder M$ Rechner mit dem Teil kommunizieren
> könnte.

danke ! das werde ich mal machen. wobei die PWM erzeugung hja wirklich 
einfach ist und das habe ich ja schon gemacht...

von Cyblord -. (cyblord)


Lesenswert?

Tobi L. schrieb:

> klar kenn ich RS2323 nur versthe ich nicht was mir diese wandlung direkt
> bringen soll statt usb eine UART zu nehmen.

1.) Weil es sehr einfach funktioniert.
2.) Weil es praktisch keine Ressourcen braucht.

> aber wenn ich die ISTdrehzahl zurücksende habe ich doch genau das selbe
> problem wieder Oo oder nicht?
Was soll daran Probleme machen? Dein Problem ist hier das V-USB.

von Tobi L. (derarzt)


Lesenswert?

Klaus Dieter schrieb:
> Tobi L. schrieb:
>> das ahbe ich mir auch schon überlegt aber wie weiss ich dann ob das
>> device noch auf meine sollwert regelungen reagiert?
>
> Wo ist das Problem? Du schickst einen Sollwert, der µC antwortet mit
> einem ACK. Wenn dir das nicht reicht, kann dir der Controller sogar noch
> melden, wenn der Sollwert erreicht ist, wenn er nicht erreicht werden
> konnte (PWM auf Vollgas und Drehzahl trotzdem zu niedrig), wie auch
> immer.

wie gesagt aber dann habe ich doch wieder den selben fehler..... wenn er 
nicht mit einem ack antwortet^^

von Cyblord -. (cyblord)


Lesenswert?

Tobi L. schrieb:
> Klaus Dieter schrieb:
>> Tobi L. schrieb:
>>> das ahbe ich mir auch schon überlegt aber wie weiss ich dann ob das
>>> device noch auf meine sollwert regelungen reagiert?
>>
>> Wo ist das Problem? Du schickst einen Sollwert, der µC antwortet mit
>> einem ACK. Wenn dir das nicht reicht, kann dir der Controller sogar noch
>> melden, wenn der Sollwert erreicht ist, wenn er nicht erreicht werden
>> konnte (PWM auf Vollgas und Drehzahl trotzdem zu niedrig), wie auch
>> immer.
>
> wie gesagt aber dann habe ich doch wieder den selben fehler..... wenn er
> nicht mit einem ack antwortet^^

Vergiss es einfach, ok? Da ist ja nicht zum aushalten.

von Tobi L. (derarzt)


Lesenswert?

>> aber wenn ich die ISTdrehzahl zurücksende habe ich doch genau das selbe
>> problem wieder Oo oder nicht?
> Was soll daran Probleme machen? Dein Problem ist hier das V-USB.

ok ich habe gedacht du meinst IST-Drehzahl zurücksenden per VUSB...

von Cyblord -. (cyblord)


Lesenswert?

> danke ! das werde ich mal machen. wobei die PWM erzeugung hja wirklich
> einfach ist und das habe ich ja schon gemacht...

jaja alles einfach schon klar. Es geht nicht um die PWM Erzeugung 
sondern um die REGELUNG DER DREHZAHL. Das ist doch eigentlich das 
komplexe (wenn es da überhaupt sowas gibt) an deiner Arbeit. Und wenn 
dies mal geht, muss dem Controller nur noch die SOLL Drehzahl mitgeteilt 
werden.
Geh doch mal systematisch vor und implementiere die Teilaspekte 
unabhängig voneinander. Und Teste jeden Teilaspekt separat. Du hast ja 
noch nichtmal die Lichtschranke, gibts Taktsignale mit dem Taster, 
erzählst aber das PWM wär ja alles einfach.

gruß cyblord

von Klaus Dieter (Gast)


Lesenswert?

Tobi L. schrieb:
> klar kenn ich RS2323 nur versthe ich nicht was mir diese wandlung direkt
> bringen soll statt usb eine UART zu nehmen.

Was dir das bringt? Ganz einfach, du kannst dich dann erstmal auf 
wesentliche Dinge konzentrieren, deine Regelung. Und wenn das alles 
funktioniert, kannst du ja immernoch auf V-USB wechseln. Oder noch 
besser die 5 € für nen TF232 ausgeben.

Tobi L. schrieb:
> ok ich habe gedacht du meinst IST-Drehzahl zurücksenden per VUSB...

Nein, das war bisher nur deine Idee.

von Simon K. (simon) Benutzerseite


Lesenswert?

Floh schrieb:
> Meine Meinung:
> V-USB würde ich niemals für eine Bachelorarbeit verwenden.
> Auf der V-USB-Seite wird eindeutig darauf hingewiesen, dass mehrere
> Dinge der USB-Spezifikation verletzt werden.
> Somit ist die V-USB-Lösung eine sicherlich angenehme Lösung für
> Basteleien (Hab hier selbst 2 am Laufen), aber für richtige Entwicklung
> gehört entweder ein USB-RS232-Umsetzer (z.B. ftdi) oder direkt ein
> Controller mit USB-Schnittstelle (z.B. mega32u4, at90usb...) her.
> Diese Bausteine laufen dann zuverlässig und das Timing ist recht
> unkritisch, da dies die Hardware übernimmt.

100%ige Zustimmung. Solange es noch geht würde ich auf einen der 
genannten Prozessoren umsteigen. ATmega32U4 oder AT90USB sind eigentlich 
gut erhältlich. Sogar fertige Bibliotheken gibt es dafür.

Oder eben einen FT232 dazwischen hängen. Das funktioniert praktisch 
sofort und ist sehr einfach anzusteuern. Bei mir hat damals das VUSB 
nicht so gut funktioniert, mache da seitdem einen großen Bogen drum.

von Frank (Gast)


Lesenswert?

Tobi, mal ganz im Ernst, du musst mal darauf hören, was die leute dir 
sagen.

Es ändert sich nichts an deiner Arbeit, ob du nun VUSB, RS232->TTL oder 
FT232 verwendest. Alles bleibt prinzipiell bei USB...

Im Gegensatz zu den Vorrednern finde ich, ob eine Regelung mit dem PC 
oder mit dem MC gemacht wird. Beides sind die gleichen Algorithmen, nur 
die Implementierung beim PC ist durch die vereinfachte Debug-Funktion 
schneller... Mit besagten RS232->TTL habe ich mal eine Kommunikation 
hergestllt, wo alle 0,02 Sekunden ein Datenpaket an den PC geschickt 
wurde und dort ausgewertet wurde. Also das ist dann nicht mehr das 
Problem. Und die eigentliche Regelung auch nicht. Ist zwar mit 
Hirnschmalz verbunden. Aber ich denke, daran sollte es nicht 
scheitern...

Deswegen würde ich mich einfach mal an das halten, was die Menschen dir 
raten

von Matthias S. (Firma: matzetronics) (mschoeldgen)


Lesenswert?

Frank schrieb:
> Im Gegensatz zu den Vorrednern finde ich, ob eine Regelung mit dem PC
> oder mit dem MC gemacht wird.

Öh, was findest du?
@Tobi: Ich implementiere bei meinen Motorreglern immer eine kleine 
Konsole, mit der ich Sollwerte vorgeben kann, PID Parameter online 
ändern kann und den aktuellen Stand der Dinge (Strommessung, 
Drehzahl,Sensoren) abrufen kann. Die passendsten PID Werte speichere ich 
ins EEPROM des AVR. Ich mache das über den USART und eine COM 
Schnittstelle am PC, aber nichts spricht dagegen, eine USB-USART Bridge 
zu nehmen.
Der Lerneffekt über Regler ist dabei gross, zumal AVR221 recht gut 
beschreibt, was da abgeht. Ausserdem läuft die Regelung auch dann, wenn 
der PC abgetrennt wird, in dem Fall könntest du auch Drehzahlsollwerte 
über z.B. ein Poti vorgeben.

von @echo (Gast)


Lesenswert?

Unter einer Bachelorarbeit versteht man eine wissenschaftliche Arbeit 
von vergleichsweise geringerem Umfang als eine Masterarbeit, die für den 
Abschluss eines Bachelor-Studienganges verfasst wird. Die Bachelorarbeit 
dient dabei im Allgemeinen als Nachweis darüber, dass der Prüfling in 
der Lage ist, eine wissenschaftliche Arbeit selbständig, aber unter 
Betreuung zu verfassen.

Nach einer Studie des Hochschul-Informations-Systems bricht in 
Universitäten heute jeder vierte Bachelor-Student sein Studium ab, in 
Fachhochschulen sogar jeder dritte. Die Abbrecherquote in den 
Ingenieurwissenschaften ist in den neuen Bachelor-Studiengängen 
erheblich höher als in den früheren Diplom-Studiengängen.

von Cyblord -. (cyblord)


Lesenswert?

Frank schrieb:

> Im Gegensatz zu den Vorrednern finde ich, ob eine Regelung mit dem PC
> oder mit dem MC gemacht wird. Beides sind die gleichen Algorithmen, nur
> die Implementierung beim PC ist durch die vereinfachte Debug-Funktion
> schneller...

Es geht gar nicht darum OB man es nun den PC oder den Controller regeln 
lässt. Es geht aber darum dass man sich dies überlegt und das Ergebniss 
eine bewusste Design-Entscheidung ist. Diese kann ich hier überhaupt 
nicht erkennen. Ausserdem wenn man den Titel nimmt, sollte eine 
USB-Motorsteuerung rauskommen, das klingt für mich danach dass am Ende 
eine Platine dasteht welche einen Motor steuern (=regeln) kann. Und 
nicht dass der PC die ganze Arbeit macht.

Aus der Beschreibung kann man sich noch nichtmal sicher sein was denn 
nun überhaupt gemeint ist:

> Die Steuerung übernimmt allerdings der PC. D.h  Die Solldrehzahl wird
> von PC an den Atmega8 geschickt, der macht daraus eine PWM der Motor
> dreh sich, erzeugt Impulse durch die Lichtschranke, die der selbe
> Atmega8 wieder abgreift und an den pc schickt, der die Solldrehzahl mit
> Impulsen(istdrehzahl vergleicht)).

Wenn der PC tatsächlich die Steuerung (also Regelung) übernimmt, warum 
sendet er dann eine SOLL Drehzal an den Controller? Es ist 
wahrscheinlich ein SOLL-PWM-Wert gemeint. D.h. der Controller agiert 
hier als dummer PWM Erzeuger. Dann weiter wird nochmal "Solldrehzahl" 
erwähnt, diesmal im richtigen Kontext wie mir scheint.
Wie gesagt, vielleicht. Die ganze Erklärung des Projekts ist 
dilletantisch und unpräzise, wie es sich für eine wissenschaftliche 
Arbeit eigentlich gar nicht gehört. Von der Heransgehensweise mal ganz 
zu schweigen.

gruß cyblord

von Frank (Gast)


Lesenswert?

:D Sorry:

Aus dem PUNKT muss ein Komma gemacht werden: Beides in dem Fall dann 
klein ;)

Aber wir sind uns ja alle einig:

Er soll das Problem eingrenzen und wenn alles über eine PC-Kommunikation 
laufen soll, dann sollte diese stabil sein. Man kann in der 
Bachelorarbeit ja auch erwähnen, dass die erste Idee VUSB war. Aufgrund 
der Versuchsproblemen wurde allerdings eine andere Möglichkeit gewählt.

Und dann kannst du generell ein Kapitel machen, wo du abwägst, was 
sinnvoll ist und was nicht, und warum. Das verstehe ich unter 
wissenschaftlichem Arbeiten.

von Matthias S. (Firma: matzetronics) (mschoeldgen)


Lesenswert?

@echo schrieb:
> Die Abbrecherquote in den
> Ingenieurwissenschaften ist in den neuen Bachelor-Studiengängen
> erheblich höher als in den früheren Diplom-Studiengängen.

Wundert mich eigentlich. Im Vergleich zu dem, was eine Diplomarbeit 
verlangt, war alles, was ich bisher über Bachelorarbeiten hier gesehen 
habe, milde Sonntagsausflüge mit anschliessendem Picknick.
Ich kann mir das nur so erklären, das eben viel mehr Leute Bachelors 
machen wollen, die früher nie auf die Idee gekommen wären, den Dipl. 
Ing. überhaupt anzugehen.

von @echo (Gast)


Lesenswert?

Matthias Sch. schrieb:
> Wundert mich eigentlich. Im Vergleich zu dem, was eine Diplomarbeit
> verlangt, war alles, was ich bisher über Bachelorarbeiten hier gesehen
> habe, milde Sonntagsausflüge mit anschliessendem Picknick.

Ich habe diesbezüglich keine abweichende Wahrnehmung :-)

> Ich kann mir das nur so erklären, das eben viel mehr Leute Bachelors
> machen wollen, die früher nie auf die Idee gekommen wären, den Dipl.
> Ing. überhaupt anzugehen.

Ja. Daher sind Gründe und Motivationslage der Kandidaten unter die Lupe 
zu nehmen. Nichtsdestoweniger bekommt die Industrie genau das, was sie 
vehement verlangt hat.

von Profi (Gast)


Lesenswert?

Matthias Sch. schrieb:
> Ich kann mir das nur so erklären, das eben viel mehr Leute Bachelors
> machen wollen, die früher nie auf die Idee gekommen wären, den Dipl.
> Ing. überhaupt anzugehen.

Was dieser Thread hervorragend belegt!

Hier scheitert einer an einem Miniprojekt, das fachfremde Hobby-Bastler 
mit den vielen Bsp. problemlos umsetzen. In ein paar Tagen bekommt er 
seinen letzten Schein und wir hören später von der mangelnden 
Fachkompetenz deutscher Ings.

@Tobi
Bitte um Verlängerung und gehe das Ganze "wissenschaftlich" an.

von Tobi L. (derarzt)


Lesenswert?

also nachdem hier mehrfach der FT232 angesprochen worden ist habe ich 
mir den mal angeschaut......Wobei ich sagen muss ich habe ihn eher nur 
überflogen als "inteensiv studiert"
 sehe ich es richtig, dass ich für meine zwecke denFT232 mit dem USBPORT 
verbinden kann  und dann als schnittstelle  für den Atmega8 nur die RX 
TX leitungen, also die UART brauche? ich also ins 6pins habe zum 
anschliessen und der FT232 kein eingenes Programm brauche? und ich dann 
einfahh über die UART des ATMEGA8 Mit USB kommunizierren kann?

sry wenn die Frage doof  ist aber ich bin a) nervlich am ende und nach 
meiner 3 nachtschicht und ins 5 Schlaf in 3 Tagen einfach nur am Ende...

von Simon K. (simon) Benutzerseite


Lesenswert?

Ja, genau so ist es. Das einzige "Programm", was du brauchst ist der 
Treiber auf dem Rechner.

Geh doch erst mal schlafen, so kann doch kein Mensch arbeiten. Du kannst 
dich doch nicht während deiner Arbeit selbst so fertig machen. Wie soll 
das denn ausgehen?

von Tobi L. (derarzt)


Lesenswert?

Simon K. schrieb:
> Ja, genau so ist es. Das einzige "Programm", was du brauchst ist der
> Treiber auf dem Rechner.
>
> Geh doch erst mal schlafen, so kann doch kein Mensch arbeiten. Du kannst
> dich doch nicht während deiner Arbeit selbst so fertig machen. Wie soll
> das denn ausgehen?

das weiss ich nicht aber seit einer woche sind schlaftablette und 
beruhingstab meine besten freunde^^

der treiber auf dem rechner ist dann mein hostprogramm richtig?

kann ich denn mein altes host programm weiternutzen oder muss ich es 
umschreiben(die IDvendor und IDProduct vectoren angleich zb)?

oder was meinst du mit dem treiber? wenn ja wo finde ich ihn...habe 
leider nichts gefunden

von Simon K. (simon) Benutzerseite


Lesenswert?

Den Treiber findest du auf der FTDI Homepage. Da hast du die Wahl 
zwischen einem Direkttreiber (D2XX oder so) und einem Virtual COM Port 
Treiber. Mit dem ersten bekommst du eine DLL, worüber du den FT232 
ansprichst und mit dem virtuellen COM Port geschieht die Ansteuerung 
über eine emulierte COM Schnittstelle (Windows API zB mit CreateFile, 
ReadFile, WriteFile).

Wenn du aber die tatsächliche Arbeit schreibst, würde ich das etwas 
ordentlicher machen, als du das hier tust ;-)

von Cyblord -. (cyblord)


Lesenswert?

Mit dem FTDI musst du nicht intensiver beschäftigen, nimm doch erstmal 
ein fertiges Modul. Treiber installieren, einstecken. Dann bekommst du 
einen virtuellen ComPort und kannst sofort loslegen.

Es gibt auch noch andere USB->RS232 Chips, z.B. den CP2102.
Funktionieren im Endeffekt alle gleich.

http://www.ebay.de/itm/CP2102-Module-Modul-USB-to-TTL-Converter-Konverter-CP2102-RS232-/140631736808?pt=DE_Technik_Computerzubeh%C3%B6r_Kabel_Adapter&hash=item20be4e01e8

> kann ich denn mein altes host programm weiternutzen oder muss ich es
> umschreiben(die IDvendor und IDProduct vectoren angleich zb)?
Und du sagst du kennst dich mit RS232 aus? Was verstehst du an dem "Es 
emuliert einen COM Port" nicht?

> der treiber auf dem rechner ist dann mein hostprogramm richtig?
Ein Treiber ist ein Treiber.

> oder was meinst du mit dem treiber? wenn ja wo finde ich ihn...habe
> leider nichts gefunden
Den Treiber für den Virtuellen Comport. Je nach Chip gibts einen Treiber 
(unter Win7 braucht man oft auch keinen) der diesen virtuellen Com Port 
installiert.

Wieso ist bei dir alles immer so kompliziert und jede Kleinigkeit ein 
riesen Problem? Ich wäre schon vor Tagen in den MediaMarkt losgezogen 
und hätte mir ein USB->RS232 Kabel für horrende 19,95 gekauft, 
eingesteckt und wäre fertig. Sogar ohne Pegelwandler kann man mit 2 
Transistoren damit eine Kommunikation aufbauen. CD mit Treibern ist 
sogar dabei.
Solange denkst du noch über die Treiber und die Vendor_ID nach.
Kein Wunder wird das bei dir nix.

gruß cyblord

von Tobi L. (derarzt)


Lesenswert?

mein pproblem ist dass ich als hostsoftware java nutze und ich unter 
java keine anständige verbindung zu einem comport habe

von Cyblord -. (cyblord)


Lesenswert?


von Oliver J. (skriptkiddy)


Lesenswert?

Tobi L. schrieb:
> mein pproblem ist dass ich als hostsoftware java nutze und ich unter
> java keine anständige verbindung zu einem comport habe

Die Java Communications API gefällt dir wohl nicht?

von Cyblord -. (cyblord)


Lesenswert?

Hier der direkte Download für die RXTX lib für java:
http://rxtx.qbang.org/wiki/index.php/Download

Ich weiß aber auch nicht ob dein Host-Programm im Moment dein 
vordringlichstes Problem ist. Solltest du nicht erstmal die Hardware in 
Angriff nehmen und vorerst eben mit einem einfachen Terminalprogramm 
Daten an diese Senden und Empfangen?

gruß cyblord

von Floh (Gast)


Lesenswert?

Nur so als kleine Geschichte:
Habe selbst in meinem Praxissemester eine Software von einem seriellen 
auf ein USB-Board umgeschrieben.
Die Firmware auf dem neuen Controller ist dabei eigentlich der angenehme 
Teil.
Richtig blöd wird erst die Treibergeschichte, unterschiedliche 
Betriebssysteme, 32 und 64bit Systeme, und es soll gefälligst überall 
laufen.
Da ist seriell einfach nur schön, einstecken, COM-Port aussuchen und 
losgehts, da den PC nicht interessiert, was da genau dranhängt.

Daher kommen auch die vielen Ratschläge, einfach einen 
USB-Seriell-Wandler zu nehmen, ob als fertig kaufbares Gerät oder in 
Form eines einbaubaren ICs ist ja egal.

von Eine Idee (Gast)


Lesenswert?

Vielleicht liegt Dein momentanes Problem auch an Deinem Java Programm 
auf Deinem Rechner!?

von Tobi L. (derarzt)


Lesenswert?

cyblord ---- schrieb:
> Hier der direkte Download für die RXTX lib für java:
> http://rxtx.qbang.org/wiki/index.php/Download
>
> Ich weiß aber auch nicht ob dein Host-Programm im Moment dein
> vordringlichstes Problem ist. Solltest du nicht erstmal die Hardware in
> Angriff nehmen und vorerst eben mit einem einfachen Terminalprogramm
> Daten an diese Senden und Empfangen?
>
> gruß cyblord

daten per uart hab ich schon gesendet^^ an einen pc

von Cyblord -. (cyblord)


Lesenswert?

Tobi L. schrieb:

> daten per uart hab ich schon gesendet^^ an einen pc

Na also dann sollte dieses Problem ja nun gelöst sein.

von Tobi L. (derarzt)


Lesenswert?

Eine Idee schrieb:
> Vielleicht liegt Dein momentanes Problem auch an Deinem Java Programm
> auf Deinem Rechner!?

berechtigte Idee habe ich natürlich auch schon gedacht und bis vor einer 
sekunde  dachte ich dass es funtkioniert.....

hört sich vll doof an Aber folgendes...zu testzwecken habe ich infach 
mal folgenden COde kompiliert und laufen lassen.....

und dort hängt sich das device ebenso auf

von Cyblord -. (cyblord)


Lesenswert?

Tobi L. schrieb:
> Eine Idee schrieb:
>> Vielleicht liegt Dein momentanes Problem auch an Deinem Java Programm
>> auf Deinem Rechner!?
>
> berechtigte Idee habe ich natürlich auch schon gedacht und bis vor einer
> sekunde  dachte ich dass es funtkioniert.....
>
> hört sich vll doof an Aber folgendes...zu testzwecken habe ich infach
> mal folgenden COde kompiliert und laufen lassen.....
>
> und dort hängt swich das device ebenso auf

Welcer Code denn? Hast vergessen.

Ansonsten, hast du mir vorher mal klar gemacht, was der Controller tun 
soll? Was ist seine Aufgabe. Welche Daten bekommt er dazu rein. Welche 
Daten schickt er dazu raus? Das musst du dir erstmal klar machen.

Und wenn deine serielle Kommunikation mal steht, kann man damit gleich 
noch wunderbar den Rest debuggen. Deshalb mache ich dies auch immer als 
erstes. Und dazu eignet sich dann ein Terminalprogramm (ich nehme putty) 
sehr gut weil man da einfach beliebge Daten vom Controller aus schicken 
kann ohne dass es auf der PC Seite einer Auswertung bedarf.

gruß cyblord

von Eine Idee (Gast)


Lesenswert?

Tobi L. schrieb:
> ...zu testzwecken habe ich infach
> mal folgenden COde kompiliert und laufen lassen...


Welcher Code?

von Cyblord -. (cyblord)


Lesenswert?

> Ansonsten, hast du mir vorher mal klar gemacht, was der Controller tun
meine natürlich "hast du DIR das schonmal klargemacht"

von Tobi L. (derarzt)


Angehängte Dateien:

Lesenswert?

Eine Idee schrieb:
> Tobi L. schrieb:
>> ...zu testzwecken habe ich infach
>> mal folgenden COde kompiliert und laufen lassen...
>
>
> Welcher Code?

folgede code sry hab  ihn wohl nicht anghöngt

von Cyblord -. (cyblord)


Lesenswert?

Hmmm

woran siehst du dass er sich aufhängt?

von Tobi L. (derarzt)


Lesenswert?

cyblord ---- schrieb:
> Hmmm
>
> woran siehst du dass er sich aufhängt?

ich lass mir daten zurückschicken

uint8_t  g =0;
usbMsgLen_t usbFunctionSetup(uchar data[8])
{
usbRequest_t    *rq = (void *)data;
static uchar    dataBuffer[4];  /* buffer must stay valid when 
usbFunctionSetup returns */

    if(rq->bRequest == VENDOR_RQ_READ_BUFFER){ /* echo -- used for 
reliability tests */
       if(g==30){g=0;}else{g=g+1;}
   dataBuffer[0] = 1;
        dataBuffer[1] = 2;
        dataBuffer[2] = g;
        dataBuffer[3] = 4;
        usbMsgPtr = dataBuffer;         /* tell the driver which data to 
return */
        return 4;

das g wird mit jedem aufruf inkrementiertbis 30 und fängt dann von neuem 
an....konkret liegt mein problem daran dass ich iwann immer nur noch den 
selben werd zurückbekomme beim aufruf und keine neuen werte

von Tobi.l (Gast)


Lesenswert?

so wie es aussieht ist nichg meine firmware das problem sondern meine 
hostsoftware.

ich habe nämlich mal ein miniabgewandeltes beispiel von vusb kompiliert 
ohne interruot ohne pwm usw...

und dort macht er den selben scheiss...

edn kompilierten code poste ich nachher

von Matthias S. (Firma: matzetronics) (mschoeldgen)


Lesenswert?

Ein guter Rat: Leg dich erstmal schlafen. Nach einem Nickerchen sieht 
man oft Sachen, die vorher einfach untergingen.
Aber schön, das du der Sache langsam auf die Spur kommst. Ich habe hier 
ein V-USB Adapter für ein altes 12"x12" Grafiktablett, wo per Interrupt 
richtig viele serielle Daten durchgeschaufelt werden, ohne das da 
irgendwas hakt.
Vielleicht hilft dir der Code?
http://www.schoeldgen.de/avr/

Ganz unten auf der Seite.

von citb (Gast)


Lesenswert?

Ich habe es mir angetan und diesen langen Thread ueberflogen.
Meine Meinung:

1. Mit der Rechtschreibung wird das gar nichts.

Tobi L. schrieb:
> Aber ich wiederhole mich gerne wieder...Ich wusste nicht,
> dass es im Forum hier auf 100%tig richtige Rechtschreibung drauf
> ankommt.
Du weisst seit diesem Beitrag, dass es so ist und ignorierst es 
trotzdem.
Leute mit Ahnung ignorieren Dich, wenn Du Ihnen so kommst.
Der Compiler sowieso.

2. Wenn ich diese "Arbeit" zu pruefen und zu bewerten haette, dann 
wuerde ich als Allererstes eine nachvollziehbare Begruendung verlangen, 
warum der PC die Regelung machen soll. Da ist regelungstechnisch 
schlicht falsch.

3. Die hier gezeigte Herangehensweise zur Fehlersuche ist eines 
studierten Technikers (und das solltest Du am Ende des Studiums sein) 
unwuerdig. Da ist nicht einmal ansatzweise ein strukturiertes 
zielgerichtetes Vorgehen zu erkennen. Nimm das Ganze Schritt fuer 
Schritt in Betrieb, der naechste Schritt kommt erst, wenn der vorherige 
abgeschlossen und fehlerfrei ist.

citb

von Hugo P. (portisch)


Lesenswert?

Als ersters fällt mir gleich das ins Auge:
>> static uchar    dataBuffer[4];  /* buffer must stay valid when
>> usbFunctionSetup returns */

Soweit meine C-Kentnisse gehen ist das nicht der Fall. du definierst 
"dataBuffer" in der usbFunctionSetup. Wenn die Funktion nun mit return 
verlassen wird wird auch die Varaible entfernt, oder?
Zumindest ist das am PC so.

V-USB übergibt die Daten erst bei den nächsten usbPoll() wenn die 
usbFunctionSetup schon längst verlassen wurde. Am besten einfach den 
dataBuffer einmal global definieren damit er zur Laufzeit immer gültig 
ist.

von Simon K. (simon) Benutzerseite


Lesenswert?

Hugo Portisch schrieb:
> Als ersters fällt mir gleich das ins Auge:
>>> static uchar    dataBuffer[4];  /* buffer must stay valid when
>>> usbFunctionSetup returns */
>
> Soweit meine C-Kentnisse gehen ist das nicht der Fall. du definierst
> "dataBuffer" in der usbFunctionSetup. Wenn die Funktion nun mit return
> verlassen wird wird auch die Varaible entfernt, oder?
> Zumindest ist das am PC so.

Nicht wenn "static" davorsteht.

> V-USB übergibt die Daten erst bei den nächsten usbPoll() wenn die
> usbFunctionSetup schon längst verlassen wurde. Am besten einfach den
> dataBuffer einmal global definieren damit er zur Laufzeit immer gültig
> ist.

Nee.

von Axel F. (pfennig)


Lesenswert?

hmmm

interessant, interessant

ich hab schon mal von einer Bachelor Arbeit gehört,die gerade einmal 20 
Seiten Umfang hatte
das schreiben normalerweise Abiturienten in der Zeit hin zum Abi, 
mehrmals als Facharbeit zu ihren Leistungskursen....


ein ehemaliger Komolitone von mir, musste auch in seiner Bachelorarbeit 
gerade mal eine Webseite designen, mit welcher man Produkte auswählen 
und in Anschluss mit einen e-shop kaufen kann....
da frag ich mich auch, was daran nun die qualizierende Arbeitsprobe sein 
soll, für das spätere Berufsleben.....

an solchen Beispielen nun aber den Bachelortitel schlecht zu reden, 
halte ich für unprofessionel..

zumal ich auch Diplomarbeiten kenne, die in Niveau sicher das 
eigentliche Ziel einer Abschliessenden und qualifizierenden Arbeitsprobe 
verfehlen....

generelle liegt der Bachelor Rang heute auf dem Niveau eines Dipl. Ing. 
FH.

Master ist da dann Dipl. Ing. Uni

also jeder der hier nicht seine Diplpomarbeit an der Uni geschrieben 
hat, sollte schauen, wie weit es her ist mit dem seiner 
Minderwertigkeitskomplexe!

die Qualität der Hochschulen zuwweil ist ein Merkmal, welches 
grundlegendd geprüft werden sollte, bei Universitäten so wie bei 
ehemaligen Fachhochschulen!

ich kenne da derzeit einen Studenten, der an einer Uni studiert, aber 
mit verlaub,.... Dumm ist er zwar nicht, aber mithalten mit jenen die 
ich von der FH nun kenne, kann er nicht. . . da fehlt es in einfach an 
Ausbildungsqualität...

zu Bachelorarbeiten,,,... wisst ihr,, es gibt auch Professoren, die sehr 
viel Wert auf diese legen, da hat dann eine Bachelorarbeit auch mal 
einen Umfang von 120 Seiten und inclusive Vorbereitungsphase und 
Durchführungsphase kommt man auf einen Zeitanspruch von mal schnell 7 
Monate.... (Das verlangen die Professoren dann auch so, sie erwarten 
dann, das der Kandidat sich sein Thema 3 bis 4 Monate vor 
Anmeldezeitpunkt abholt und sich einarbeitet, bevor er mit der 
eigentlichen Arbeit beginnt)

sicher ist das jetzt nicht so ein Quatsch, wie nun, "Testen wir mal ob 
der Kandidat zu blöd ist eine USB Schnittstelle auszulesen!"  als Thema

das aber kann sich jeder Student selber aussuchen,.... letztenendes ist 
nämlich heute mehr  denn je der Student seines eigernen Huf's Schmied

von Michael K. (Gast)


Lesenswert?

Tom K. schrieb:
> Tom, der nach einem Projekt von allen V-USB-Ambitionen geheilt ist.

Simon K. schrieb:
> AVR-USB ist meiner Meinung nach eher Pfusch (mir fällt gerade kein
> besseres Wort ein). Nicht, dass du damit noch Probleme bekommst (auch
> zeitlich).

Könnt ihr mal ein bisschen mehr über eure Erfahrungen schreiben, die 
euch zu diesen Aussagen verlassen?

von Marc O. (marcosfs)


Lesenswert?

Profi schrieb:
> Der Tobi erstellt eine wissenschaftliche Abschlussarbeit. Seine
> Vorgehensweise ist dabei nicht sehr wisenschaftlich. Das sieht eher nach
> Versuch und Irrtum aus.
>
> Wenn ihm die Lösung - wie Marc es wünscht - hier vorgegeben wird,
> entspricht das nicht dem Sinn und Zweck der Abschlussarbeit. Ein Prof.,
> der ein solches Thema vergibt, liest hier bestimmt nicht mit. Tobi
> "Gutenberger" wird mit den fremden Federn punkten. Im Berufsleben wird
> er schnell als Blender auffliegen. Um Tobi zu helfen, muss man ihn
> ermutigen, sich wissenschaftlich dem Problem zu nähern.

Ändert aber, wenn man es logisch betrachtet, nichts an meiner Aussage. 
Ein Forum dient dazu, andere zu helfen. Punkt. Es ist kein Zeichen von 
Weisheit oder Überlegenheit, sich überheblich und präpotent in 
Internet-Foren zu benehmen. Es ist niemands Aufgabe oder Recht, über 
andere Urteil zu machen, oder ihre Arbeit fertig zu machen. Das machen 
nur Loser mit Selbstbewusstsein-Problemen. Warum nicht einfach was 
besseres mit seiner Zeit tun? Warum sich einloggen, nur um andere fertig 
zu machen? Fühlt man sich echt so viel besser wenn man andere so 
kindisch beurteilt, statt zu helfen?

Noch eine kleine Erklärung für diejenigen, die erstmal eine Meinung 
bilden, ohne sich gescheit zu informieren: ein Bachelor-Abschluss wurde 
noch niemals als Ersatz für den Diplom-Abschluss beabsichtigt. Erst den 
Master-Abschluss kann man als gleichwertig mit dem Dipl.-Ing. sehen. 
Darum scheinen Bachelor-Arbeiten eher "einfach". Ihr solltet den 
Bachelor nicht fertig machen. Wenn ihr euch mit eurem Dipl.-Abschluss 
bedroht fühlt, und das ist ja ziemlich offensichtlich von euren Posts 
her, dann sorgt dafür, dass ihr euch auf dem Laufenden in eurer 
Bildung haltet. Andere in Internet-Foren fertig zu machen ist ein 
unglaublich kindischer und lächerlicher Versuch, sich zu bestätigen. Wer 
nicht helfen will sollte nicht noch extra aufm Weg stehen.

von Simon K. (simon) Benutzerseite


Lesenswert?

Michael K. schrieb:
> Tom K. schrieb:
>> Tom, der nach einem Projekt von allen V-USB-Ambitionen geheilt ist.
>
> Simon K. schrieb:
>> AVR-USB ist meiner Meinung nach eher Pfusch (mir fällt gerade kein
>> besseres Wort ein). Nicht, dass du damit noch Probleme bekommst (auch
>> zeitlich).
>
> Könnt ihr mal ein bisschen mehr über eure Erfahrungen schreiben, die
> euch zu diesen Aussagen verlassen?

Es ist eben Software-USB und allein aus der Tatsache heraus, dass ein 
AVR für echtes Soft-USB zu langsam ist (und die Idee "Soft-USB" nebenbei 
auch hirnrissig ist), ist eben nur das allernötigste an USB-Gerümpel 
dort implementiert. Das Projekt sagt (wie oben schon gesagt) selber, 
dass bestimmte Teile der USB-Spezifikation verletzt werden.

Von daher ist keine 100%ige Funktion garantiert. Auch wenn das bei 
vielen Leuten problemlos läuft, ist es eben keinen Beweis für die 
einwandfreie Funktion.

Erschwerend kommt hinzu, dass Mikrocontroller (auch 8-Bit AVRs) mit 
integrierter Hardware-USB Schnittstelle eigentlich überhaupt nicht 
nennenswert teurer sind, auf der anderen Seite jedoch die USB 
Spezifikation vollständig erfüllen.

Von daher gibt es für mich(!) überhaupt kein sinnvolles Argument, sich 
mit dem AVR-USB für ernsthafte Projekte (und da zähle ich eine BA auch 
drunter) herumzuschlagen. Wenn man so will, könnte man sagen, dass das, 
was man bei der Implementierung eines AVR-USB lernt, im Berufsalltag eh 
hinfällig ist, weil wohl niemand ein kommerzielles Projekt auf Basis des 
AVR-USB bauen würde. Eben deswegen, weil es im kommerziellen Umfeld um 
Geld und Herstellergarantien geht. Da braucht niemand etwas, was bewusst 
Spezifikationen verletzt.

PS: Zu der Sache mit FH/Uni kann ich immer nur den Kopf schütteln. Im 
Ausbildungs-Subforum geht es mit dem Thema ja auch heiß her.
Ich kann nur eins dazu sagen: Die pauschalen Aussagen sind einfach zu 
pauschal um überall in Deutschland zutreffen zu können. Ich habe vor 
kurzem ein FH Bachelor Studium abgeschlossen (Gelsenkirchen) und fand es 
sehr angenehm, da ich schon mit jungen Jahren an Mikrocontrollern 
herumgebastelt habe.
Dann habe ich ein Master Studiengang an der Uni (Ruhr Uni Bochum) 
aufgenommen und komme dort eigentlich sehr gut zurecht und kann mich in 
keinster Weise beschweren.

von Profi (Gast)


Lesenswert?

Marc O.S. schrieb:
> Ein Forum dient dazu, andere zu helfen. Punkt. Es ist kein Zeichen von
> Weisheit oder Überlegenheit, sich überheblich und präpotent in
> Internet-Foren zu benehmen.

Und warum machst Du es dann, Marc, bist Du ein aroganter und präpotenter 
Loser?

von Marco S (Gast)


Lesenswert?

Hallo Tobi.

Dein code von 22:59 rennt auf meinem usbasp absturzfrei. Mit ein paar 
Brocken pyusb1.0
1
i = 0
2
while True:
3
    v.ctsetup(VENDOR_RQ_WRITE_BUFFER, i % 2, 0, 0)
4
    x = v.ctsetup(VENDOR_RQ_READ_BUFFER, 0, 0, 4)
5
    print x
6
    i += 1

ergibt sich in der Konsole bei wahnsinnig schnell blinkender LED:

...
array('B', [1, 2, 22, 4])
array('B', [1, 2, 23, 4])
array('B', [1, 2, 24, 4])
array('B', [1, 2, 25, 4])
array('B', [1, 2, 26, 4])
array('B', [1, 2, 27, 4])
array('B', [1, 2, 28, 4])
array('B', [1, 2, 29, 4])
array('B', [1, 2, 30, 4])
array('B', [1, 2, 0, 4])
array('B', [1, 2, 1, 4])
array('B', [1, 2, 2, 4])
array('B', [1, 2, 3, 4])
array('B', [1, 2, 4, 4])
array('B', [1, 2, 5, 4])
array('B', [1, 2, 6, 4])
array('B', [1, 2, 7, 4])
array('B', [1, 2, 8, 4])
array('B', [1, 2, 9, 4])
array('B', [1, 2, 10, 4])
array('B', [1, 2, 11, 4])
array('B', [1, 2, 12, 4])
array('B', [1, 2, 13, 4])
array('B', [1, 2, 14, 4])
array('B', [1, 2, 15, 4])
array('B', [1, 2, 16, 4])
array('B', [1, 2, 17, 4])
array('B', [1, 2, 18, 4])
array('B', [1, 2, 19, 4])
array('B', [1, 2, 20, 4])
array('B', [1, 2, 21, 4])
array('B', [1, 2, 22, 4])
array('B', [1, 2, 23, 4])
array('B', [1, 2, 24, 4])
array('B', [1, 2, 25, 4])
array('B', [1, 2, 26, 4])
...

Hat was von einem VW-Käfer: Läuft und läuft und läuft.


Noch mal was zu VUSB: Allzu schlecht ist dies auch nicht. Der avrcdc232 
funktioniert auf meinem Arbeitsplatzrechner unter Windows XP 
überhaupterstmal, wohingegen der billigste Reichelt USB-RS232-Adapter 
mit Prolific Chipsatz nicht mal ansatzweise sein Werk verrichtet. Und 
das einzigste USB-Gerät an meinem Arbeitsplatz, das noch nie abgestürzt 
ist, ist ein VUSB-basierter IR-Sender, welcher zu allem Überfluss noch 
an einer 3m-Strippe hängt, die ihrerseits durch eine 5m-Verlängerung 
billigster Machart mit einem HUB verbunden ist.

von Tobi (Gast)


Lesenswert?

Simon K. schrieb:
> Erschwerend kommt hinzu, dass Mikrocontroller (auch 8-Bit AVRs) mit
> integrierter Hardware-USB Schnittstelle eigentlich überhaupt nicht
> nennenswert teurer sind, auf der anderen Seite jedoch die USB
> Spezifikation vollständig erfüllen.
>
> Von daher gibt es für mich(!) überhaupt kein sinnvolles Argument, sich
> mit dem AVR-USB für ernsthafte Projekte (und da zähle ich eine BA auch
> drunter) herumzuschlagen.

also ich habe gestern  in der nacht(weil ich mal wider nicht schlafen 
konnte) nach Beispielen oder Code für einen USBAVR (also die AVR mit 
integierten USB-CHIP)geschaut und leider nach, ich nenn es mal 
"intensiveres überfliegen" keinen (größeren)COde gefunden. nur eine 
webseite einer privat person die an sich auch gut aufgebaut ist aber auf 
der ich keine richtigen vollständigen beispiel code gefunden habe.

Ich kann immer am besten mit Hilfe von beispielen und lernen und das 
geht nunmal nur mit Code. aus

von Tobi (Gast)


Lesenswert?

Marco S schrieb:
> Hallo Tobi.
>
> Dein code von 22:59 rennt auf meinem usbasp absturzfrei. Mit ein paar
> Brocken pyusb1.0i = 0
> while True:
>     v.ctsetup(VENDOR_RQ_WRITE_BUFFER, i % 2, 0, 0)
>     x = v.ctsetup(VENDOR_RQ_READ_BUFFER, 0, 0, 4)
>     print x
>     i += 1
>
> ergibt sich in der Konsole bei wahnsinnig schnell blinkender LED:
>

> array('B', [1, 2, 15, 4])
> array('B', [1, 2, 16, 4])
> array('B', [1, 2, 17, 4])
> array('B', [1, 2, 18, 4])

>
> Hat was von einem VW-Käfer: Läuft und läuft und läuft.
>
>
> Noch mal was zu VUSB: Allzu schlecht ist dies auch nicht. Der avrcdc232
> funktioniert auf meinem Arbeitsplatzrechner unter Windows XP
> überhaupterstmal, wohingegen der billigste Reichelt USB-RS232-Adapter
> mit Prolific Chipsatz nicht mal ansatzweise sein Werk verrichtet. Und
> das einzigste USB-Gerät an meinem Arbeitsplatz, das noch nie abgestürzt
> ist, ist ein VUSB-basierter IR-Sender, welcher zu allem Überfluss noch
> an einer 3m-Strippe hängt, die ihrerseits durch eine 5m-Verlängerung
> billigster Machart mit einem HUB verbunden ist.

das problem  ist auch dass dercode bei mir läuft...für 10min, für 1 std 
für 30 sek...... immer unterschiedlich

aber ich finde es sehr gut dass sich ma langsam leute meienn code 
anschaun (und ihn anscheinend auch verstehen was ich und warum ich es 
mache)

von Tobi (Gast)


Lesenswert?

Profi schrieb:
> Marc O.S. schrieb:
>> Ein Forum dient dazu, andere zu helfen. Punkt. Es ist kein Zeichen von
>> Weisheit oder Überlegenheit, sich überheblich und präpotent in
>> Internet-Foren zu benehmen.
>
> Und warum machst Du es dann, Marc, bist Du ein aroganter und präpotenter
> Loser?

ICH hatte bei Marc NICHT den Eindruck, dass er überheblich ist,sondern 
er einfach nur helfen will! was man von einzelnen hier nicht behaupten 
kann.

von Matthias S. (Firma: matzetronics) (mschoeldgen)


Lesenswert?

@Tobi: Ich rate dir, dich erstmal nicht zu sehr an der Kommunikation 
festzubeissen. Dein wichtigstes Ziel ist es doch, den Motor zu regeln. 
Such dir einen Motor mit Sensor und implementiere dann die Regelung. Wie 
du mit dem PC kommunizierst, kannst du dir überlegen, wenn der Motor 
dreht und du einen Überblick über seine Drehzahl hast usw.
Ob du dann nochmal an V-USB rangehst, oder doch eine USART-USB Bridge 
nimmst, wird sich evtl. sogar ganz zwanglos ergeben.
Der grosse Nachteil an V-USB ist eben, das er den kleinen AVR schon ganz 
schön beschäftigt, während doch eigentlich die Motorregelung sein 
Hauptjob wäre.
In meinen Projekten läuft z.B. die Motorsteuerung komplett in 
Interrupts, die Hauptschleife bedient nur die Konsole. Mein Code ist für 
dich allerdings sinnlos, da ich hier BLDCs steuere.
Und schau nochmal nach Pufferüberläufen, siehe meinen Post ganz oben.

von Simon K. (simon) Benutzerseite


Lesenswert?

Simon K. schrieb:
> Von daher ist keine 100%ige Funktion garantiert. Auch wenn das bei
> vielen Leuten problemlos läuft, ist es eben keinen Beweis für die
> einwandfreie Funktion.

Marco S schrieb:
> Noch mal was zu VUSB: Allzu schlecht ist dies auch nicht. Der avrcdc232
> funktioniert auf meinem Arbeitsplatzrechner unter Windows XP

Is schon schwierig ;-)

von Axel F. (pfennig)


Lesenswert?

[zitat von mark o.s.]
Noch eine kleine Erklärung für diejenigen, die erstmal eine Meinung
bilden, ohne sich gescheit zu informieren: ein Bachelor-Abschluss wurde
noch niemals als Ersatz für den Diplom-Abschluss beabsichtigt. Erst den
Master-Abschluss kann man als gleichwertig mit dem Dipl.-Ing. sehen.
Darum scheinen Bachelor-Arbeiten eher "einfach". Ihr solltet den
Bachelor nicht fertig machen. Wenn ihr euch mit eurem Dipl.-Abschluss
bedroht fühlt, und das ist ja ziemlich offensichtlich von euren Posts
her, dann sorgt dafür, dass ihr euch auf dem Laufenden in eurer
Bildung haltet. Andere in Internet-Foren fertig zu machen ist ein
unglaublich kindischer und lächerlicher Versuch, sich zu bestätigen. Wer
nicht helfen will sollte nicht noch extra aufm Weg stehen.
[zitat ende]


:)
 das erklär mal den Personalern dieser Welt :)

ich arbeite in einen grossen Unternehmen, dort ist der Bachelor 
stellvertretend für das Dipl Ing (FH)  <-- kürzel in Klammerrn hat eine 
Bedeutung, jemand der sein Diplom an der FH gemacht hat, muss dieses 
normalerweise mit angeben, wenn es verlangt wird

der Master ersetzt das Dipl Ing (UNI)

Bedeutet

Dipl Ing an der Universität erworben war noch nie in allen Zeiten das 
selbe wie ein dipl Ing welches an der FH erworben wurde


deine Aussage die du triffst, qualifiziert dich in sofern als 
Realitätsfern....

es gibt sicher auch Schulen wo Bachelorarbeiten angeboten werden, die 
inhaltlich ein Witz sind,
das gab es aber schon immer auch zu Diplomszeiten

hihi,, was den Arbeitsumfang angeht von solchen Abschlussarbeiten, sehr 
ernüchternd wirkt da manche Doktorarbeit, in der Medizin gibt es welche 
mit auch grad mal ein 20 Seitenumfang
das ist dort eher eine Abschlussarbeitsabfertigung, hauptsache, der 
Aspirant verschwindet aus den Blickfeld...

darüber hinaus, in einigen deiner Punkte geb ich dir sogar recht....

du musst dir aber auch eingestehen, das andere auch zu einen gewissen 
grad recht haben...
 mir geht auch regelrecht der Hut hoch, wenn Leute auf der Arbeit ein 
grosses Mundwerk haben und dann sich in Anschluss die Arbeit von armen 
Forenteilnehmern machen lassen.... und der Threadstarter machte diesen 
Eindruck
ausserdem auch so, das man annehmen muss, das er seine Aufgabe nicht 
verstanden hat...

aber wie auch immer
mich würde ja interessieren, an welcher FH er studiert (ich schätze mal 
das es keine UNI ist) hier gibt es viele Hochschulen, welche in Listen 
bei Personaler verzeichnet sind, wennn er an einer FH studiert mit 
negativen Ranking, und da nicht eine sehr gute Bachelorarbeit schreibt, 
und zu solchen hat der Threadstarter viele Tips bekommen, wird er sich 
später schwer tun, Arbeit zu bekommen.....

und erzähl mir jetzt bitte nicht das es solche Listen nicht gibt :D

den Bacheloren aus diesem Thread kann ich da nur raten, sich 
anzustrengen und die notwendige Fachliteratur zu lesen, denn spätestens 
in einen Mündlichen Kolloquium fällt der Schwindel auf... von wegen sich 
Lösungen und Lösungswege von Fremden erarbeiten lassen ....

von Cyblord -. (cyblord)


Lesenswert?

Tobi schrieb:

> ICH hatte bei Marc NICHT den Eindruck, dass er überheblich ist,sondern
> er einfach nur helfen will! was man von einzelnen hier nicht behaupten
> kann.

Geschenkt, er sagt dir ja auch was du hören willst. Dein Problem ist, du 
hörst gar nicht auf das was dir alle anderen Leute hier raten. Du 
verbeisst dich in dein V-USB, dabei hat die Aufgabe damit noch nichtmal 
angefangen. Dein Schwerpunkt liegt doch ganz woanders (zumindest wenn 
man dem Titel glauben darf, selber scheinst du das gar nicht zu wissen 
wo dein Schwerpunkt liegt).

Wobei dein Zitat auch eigentlich eine ziemliche Frechheit darstellt wenn 
ich mir diesen Thread durchlese. Da wird eigentlich durchweg versucht zu 
helfen.

gruß cyblord

von Wursti (Gast)


Lesenswert?

Warum spiel es hier überhaupt ein Rolle was ein Bachelor bzw. Master 
gegenüber DiplIng wert ist? Jemand der heute ein Studium beginnt kann es 
sich nicht mehr aussuchen und versuchen das beste draus zu machen.

Und was Axel glaub ich eher in den Vordergrund stellen wollte war 
weniger der reale Unterschied zw. den Abschlüssen als vielmehr das 
Imponiergehabe jener mit dem DiplIng.

von Tilo (Gast)


Lesenswert?

Marco S schrieb:
> [...] wohingegen der billigste Reichelt USB-RS232-Adapter
> mit Prolific Chipsatz nicht mal ansatzweise sein Werk verrichtet.

Wir der erkannt? Ich hatte mal so eine China-Kopie die ging nur mit 
einem alten Treiber.

von Axel F. (pfennig)


Lesenswert?

danke Wursti

in Grunde war es das,

die sogenannten Diplomingeniuere vergessen halt zu häufig das es diese 
Unterscheidung Bachelor / Master schon immer gegeben hat

nur hiess sie FH / UNI

was auch überhaupt kein Problem ist, wenn man nicht grad Physik oder 
Biologie studiert hat, reicht oft der Bachelor oder das Dipl Ing (FH) 
allemale aus
Master sind da oft nicht wirklich besser gestellt....

also zumindest ist es  in Machinenbau und der Elektrotechnik so
ich errinnere mich, in Bauwesen wurde da fein säuberlich selektiert, wer 
von der uni kam und wer nicht ö.Ö

da macht man den Master, wenn man später Doktor oder Führungskraft 
werden will, um in Anschluss in die Forschung zu gehen...

da soll es ja den einen oder anderen geben der das mag, wichtiger finde 
ich aber hier, das durch das Bachelor Master System auch ursprünglichen 
Fachhochschulstudenten die Möglichkeit zu weiterführenden akademischen 
Ausbildungen gegeben ist
das war vorher nicht unbedingt so der Fall

es gibt also heute für einige Fachrichtungen defakto nicht mehr den 
Unterschied zwischen Uni und Fachhochschule

auch wenn einige ewiggestrigen das zu meinen glauben.... ich glaube 
wirklich mittlerweile, das einige sich beraubt fühlen, in iher 
Extravagance darin hingehend etwas besonderes zu sein, weil von 
Universität

dieses Bessermensch getue, dass geht mir mittlerweile echt auf den 
Senkel

LG

von Karl (Gast)


Lesenswert?

Ich stimme einigen von euch zu... All den jenigen, die auf dem Teppich 
bleiben, trotz Master, Dipl.Ing., Bachelor...

Ich will gar nicht wissen, wie viele Fachdeppen Elite-THs mit einem 
Dipl.Ing absolvieren, 23Jahre alt sind und vom Tuten und Blasen keine 
Ahnung haben... Da bin ich lieber Bachelor, hab nebenbei ca 4 Jahre 
Berufserfahrung (hautnah in der Entwicklung) und bleibe trotzdem auf dem 
Teppich...

Und nun zur Sache:
Nimm ein FTDI, lass die "Regelung" den µC machen, wie es dir hier fast 
jeder vorgeschlagen hat und baue ein anständiges Protokoll ein, was man 
eventuell erweitern kann, baue eine anständige Regelung ein, investier 
auf jeden Fall Zeit in andere Dinge, aber doch nicht in V-USB Libs, die 
irgend ein Bastler geschrieben hat...
Dein Vorhaben klingt so ein wenig nach, ich darf für das Projekt nichts 
anderes benutzen als ein AtmegaX und V-USB.

von Simon K. (simon) Benutzerseite


Lesenswert?

Karl schrieb:
> Ich stimme einigen von euch zu... All den jenigen, die auf dem Teppich
> bleiben, trotz Master, Dipl.Ing., Bachelor...
Richtig, die kochen alle nur mit lauwarmem Wasser. Vollnulpen gibts bei 
beiden ;-)

> Da bin ich lieber Bachelor, hab nebenbei ca 4 Jahre
> Berufserfahrung (hautnah in der Entwicklung) und bleibe trotzdem auf dem
> Teppich...
4 Jahre habe ich noch nicht ganz, aber fast. Während des ganzen Studiums 
nebenbei (richtig) gearbeitet und ich sehe das auch so. Das interessiert 
im Job niemanden, ob B.Eng. Dipl.Ing. Hauptsache man kann was.

von Eine Idee 2 (Gast)


Lesenswert?

Vorallem sollte Tobi mal systematisch vorgehen.
Andere schreiben ja, dass bei ihnen sein Programm läuft.

Wenn man richtig schaut wird es sein Javaprogramm sein dass sich 
aufhängt.
Hast Du schon mal eine norales Terminalprogramm wie HTerm o.ä. benutzt?
Hat es sich dabei auch aufgehängt?

Hast Du eine saubere Versorgungsspannung?
Saubere Lötstellen?
Temperaturprobleme hatte ich auch schon ab und zu wo sich so geäußert 
haben.
Läuft der uC noch wenn der Fehler aufgetreten ist (evtl. Quarzprobleme)?

Wenn Du all das ausschließen kannst, dann würde ich den Fehler bei VUSB 
suchen.

Einfachster weg wäre wie schon oft gesagt ein FTDI.
Innerhalb von ner halben Stunde hast Du eine zuverlässige Verbindung zum 
PC!

Grüße

von Tobi.l (Gast)


Lesenswert?

Eine Idee 2 schrieb:
> Hast Du eine saubere Versorgungsspannung?
naja das device ist Buspowered hängt also (ohne motor) am USB-Bus

> Saubere Lötstellen?
japp alle doppelt und dreifach geprüft und ich weiss wie sauberer 
lötstellen aussehen

> Temperaturprobleme hatte ich auch schon ab und zu wo sich so geäußert
> haben.

die habe ich nicht der atmega läuft bei normaler zimmertemperatur und 
wird nichtmal warm

> Läuft der uC noch wenn der Fehler aufgetreten ist (evtl. Quarzprobleme)?

jap der läuft noch..hab ja auch den watchdog an und die USB-Verbindung 
besteht weiterhin...ausserdem kann ich noch Interrupts auslösen (per 
taster) und die werden mir auch (per LED)angezeigt (Die Led ist also bei 
jedem 2ten Tastendruck an )

 nach einem reset des usb-bus (vom javaprogram per button)  kann ich 
wieder Controle-Messages schicken.

von Eine Idee 2 (Gast)


Lesenswert?

Tobi.l schrieb:
> naja das device ist Buspowered hängt also (ohne motor) am USB-Bus
Ausreichend Kapazitäten vorhanden? So ne USB-Spannung kann auch ein ganz 
schöner Sauladen sein!

Tobi.l schrieb:
> ausserdem kann ich noch Interrupts auslösen (per taster)

Um zu überprüfen ob er wirklich noch läuft, würde ich lieber z.B. in der 
Main auf den Taster pollen. Ansonsten weißt Du nur dass er von der 
Stelle wo er hängt in den Interrupt springt und dannach wieder zurück. 
Ob Dein Main zyklisch abgearbeitet wird weißt Du allerdings nicht!

Tobi.l schrieb:
> jap der läuft noch..hab ja auch den watchdog

Wo wird der zurückgesetzt? Hoffentlich nicht in einem Interrupt?

Tobi.l schrieb:
> nach einem reset des usb-bus (vom javaprogram per button)  kann ich
> wieder Controle-Messages schicken.

Hast Du nun das ganze auch schon mal mit einem normalen Terminalprogramm 
versucht?

von Tobi.l (Gast)


Lesenswert?

Eine Idee 2 schrieb:
> Tobi.l schrieb:
>> naja das device ist Buspowered hängt also (ohne motor) am USB-Bus
> Ausreichend Kapazitäten vorhanden? So ne USB-Spannung kann auch ein ganz
> schöner Sauladen sein!
die usb shematic hat ja auch dafür paar kondensatoren bereitgestellt. 
Glaube 1-2 normalen kondensatoren (10n,100n) und 2 elkos (4.7 uF,)....


> Tobi.l schrieb:
>> ausserdem kann ich noch Interrupts auslösen (per taster)
>
> Um zu überprüfen ob er wirklich noch läuft, würde ich lieber z.B. in der
> Main auf den Taster pollen. Ansonsten weißt Du nur dass er von der
> Stelle wo er hängt in den Interrupt springt und dannach wieder zurück.
> Ob Dein Main zyklisch abgearbeitet wird weißt Du allerdings nicht!
reicht da nicht auch eine simple LED?
ausserdem sollte er in der main hängen würde dann der watchdog nicht 
greifen?


>
> Tobi.l schrieb:
>> jap der läuft noch..hab ja auch den watchdog
>
> Wo wird der zurückgesetzt? Hoffentlich nicht in einem Interrupt?
in der for(;;) Loop direkt nach dem usbpoll();
>
> Tobi.l schrieb:
>> nach einem reset des usb-bus (vom javaprogram per button)  kann ich
>> wieder Controle-Messages schicken.
>
> Hast Du nun das ganze auch schon mal mit einem normalen Terminalprogramm
> versucht?

von Tobi.l (Gast)


Lesenswert?

>> Hast Du nun das ganze auch schon mal mit einem normalen Terminalprogramm
>> versucht?

nein das noch nicht.

von Eine Idee 2 (Gast)


Lesenswert?

Tobi.l schrieb:
>>> Hast Du nun das ganze auch schon mal mit einem normalen Terminalprogramm
>>> versucht?
>
> nein das noch nicht.

Das würde ich als erstes jetzt mal machen.
Evtl. suchst Du einen Fehler in VUSB wo eigentlich in Deinem Java 
Programm steckt!

Tobi.l schrieb:
> Eine Idee 2 schrieb:
>> Tobi.l schrieb:
>>> naja das device ist Buspowered hängt also (ohne motor) am USB-Bus
>> Ausreichend Kapazitäten vorhanden? So ne USB-Spannung kann auch ein ganz
>> schöner Sauladen sein!
> die usb shematic hat ja auch dafür paar kondensatoren bereitgestellt.
> Glaube 1-2 normalen kondensatoren (10n,100n) und 2 elkos (4.7 uF,)....

Ok...dachte nur ich Frag mal nach.

Tobi.l schrieb:
>> Tobi.l schrieb:
>>> ausserdem kann ich noch Interrupts auslösen (per taster)
>>
>> Um zu überprüfen ob er wirklich noch läuft, würde ich lieber z.B. in der
>> Main auf den Taster pollen. Ansonsten weißt Du nur dass er von der
>> Stelle wo er hängt in den Interrupt springt und dannach wieder zurück.
>> Ob Dein Main zyklisch abgearbeitet wird weißt Du allerdings nicht!
> reicht da nicht auch eine simple LED?
> ausserdem sollte er in der main hängen würde dann der watchdog nicht
> greifen?

Das kommt darauf an. Wenn Du die LED im Timer Interrupt toggelst, weißt 
Du nicht ob Dein Main noch zyklisch durchlaufen wird. Genauso wenn Du 
den Taster auf einen externen Interrupt gelegt hast und in diesem 
Interrupt die LED toggelst. Deshalb ja der Vorschlag mit der Main. Ob Du 
da die LED direkt toggelst oder über einen Schalter abfragtst und dann 
Toggelst ist egal (zumindest um zu prüfen ob er noch läuft).

Das gleiche in Grün mit dem Watchdog! Wie soll der Watchdog erkennen 
dass Dein Main hängt wenn er zyklisch in einem Timerinterrupt 
zurückgesetzt wird!?

von Eine Idee 2 (Gast)


Lesenswert?

Tobi.l schrieb:
>> Tobi.l schrieb:
>>> jap der läuft noch..hab ja auch den watchdog
>>
>> Wo wird der zurückgesetzt? Hoffentlich nicht in einem Interrupt?
> in der for(;;) Loop direkt nach dem usbpoll();

Ah, sorry...zu spät gesehen.

von Eine Idee 2 (Gast)


Lesenswert?

Mal noch ne andere Frage:
Wieviel Platz braucht Dein Programm auf dem Controller?

Evtl. am Limit bzw. die Optimierungen nicht eingeschalten?
Heap/Stackprobleme tauchen auch ab und zu so sporadisch auf!

von Tobi L (Gast)


Lesenswert?

Eine Idee 2 schrieb:

> Tobi.l schrieb:
>> Eine Idee 2 schrieb:
>>> Tobi.l schrieb:
>>>> naja das device ist Buspowered hängt also (ohne motor) am USB-Bus
>>> Ausreichend Kapazitäten vorhanden? So ne USB-Spannung kann auch ein ganz
>>> schöner Sauladen sein!
>> die usb shematic hat ja auch dafür paar kondensatoren bereitgestellt.
>> Glaube 1-2 normalen kondensatoren (10n,100n) und 2 elkos (4.7 uF,)....
>
> Ok...dachte nur ich Frag mal nach.

klar ! wäre ja auch eine mögliche ursache verstehe ich :-)


>>> Wo wird der zurückgesetzt? Hoffentlich nicht in einem Interrupt?
>> in der for(;;) Loop direkt nach dem usbpoll();
>
> Ah, sorry...zu spät gesehen.
macht nichts passiert mal :-P

Eine Idee 2 schrieb:
> Mal noch ne andere Frage:
> Wieviel Platz braucht Dein Programm auf dem Controller?
>
> Evtl. am Limit bzw. die Optimierungen nicht eingeschalten?
> Heap/Stackprobleme tauchen auch ab und zu so sporadisch auf!

das hab ich noch nicht probiert kann dir nur sagen dass das hexfile auf 
dem pc 5 kb einnimmt. dürfte bei eibnem atmega8 also passen

von Cyblord -. (cyblord)


Lesenswert?

Tobi L schrieb:

> das hab ich noch nicht probiert kann dir nur sagen dass das hexfile auf
> dem pc 5 kb einnimmt. dürfte bei eibnem atmega8 also passen

lol?
dafür gibts avr-size. Die Größe über die Dateigröße der Hexfile 
abzuschätzen ist sehr schwierig bis unmöglich. Grundsätzlich (wenn man 
die tatsächliche Größe in Bytes der Datei weiß) kann man dies natürlich 
als obere Schranke der absoluten Größe im Speicher des AVR ansehen. Aber 
innerhalb der Hexfile gibts Adressen, und diese könnten den Code auch 
ausserhalb des Speichers plazieren wollen.
Ergo: Das sagt nix und man sollte daraus erst gar nix ableiten. Du musst 
doch wissen wieviel Flash, Ram und EEProm du so verbrauchst. Wie machst 
du das sonst?

gruß cyblord

von Tobi L. (derarzt)


Lesenswert?

cyblord ---- schrieb:
> Tobi L schrieb:
>
>> das hab ich noch nicht probiert kann dir nur sagen dass das hexfile auf
>> dem pc 5 kb einnimmt. dürfte bei eibnem atmega8 also passen
>
> lol?
> dafür gibts avr-size. Die Größe über die Dateigröße der Hexfile
> abzuschätzen ist sehr schwierig bis unmöglich. Grundsätzlich (wenn man
> die tatsächliche Größe in Bytes der Datei weiß) kann man dies natürlich
> als obere Schranke der absoluten Größe im Speicher des AVR ansehen. Aber
> innerhalb der Hexfile gibts Adressen, und diese könnten den Code auch
> ausserhalb des Speichers plazieren wollen.
> Ergo: Das sagt nix und man sollte daraus erst gar nix ableiten. Du musst
> doch wissen wieviel Flash, Ram und EEProm du so verbrauchst. Wie machst
> du das sonst?
>
> gruß cyblord

sofern folgender befehl richtig eingegeben wurde :

avr-size -x -A main.hex

bekomm ich 0x644 bzw bei main.elf

0x644 was  ca 1700 bzw 1600 in dez. sind

von Eine Idee 2 (Gast)


Lesenswert?

cyblord ---- schrieb:
> dafür gibts avr-size.

Ja, früher beim AVR Studio 4 wurde bereits unten in der Konsole ein 
Prozentwert angegeben. Wie das beim AVR Studio 5 ist weiß ich nicht, 
beim Version 4.19 fehlte es glaube ich. Evtl. müsste das noch beim 
Linker eingestellt werden.

Naja...Atmega8 --> 8kB Flash

von Norbert S. (norberts)


Lesenswert?

Hi,

cyblord ---- schrieb:
>> das hab ich noch nicht probiert kann dir nur sagen dass das hexfile auf
>> dem pc 5 kb einnimmt. dürfte bei eibnem atmega8 also passen
>
> lol?
> dafür gibts avr-size. Die Größe über die Dateigröße der Hexfile
> abzuschätzen ist sehr schwierig bis unmöglich.

Aha, bei Euch sitzt der Stack im Flash?
;-)

Offensichtlich ist irgenwie immer noch nicht richtig angekommen, daß 
dieses V-USB doch großer Murks ist, höchstens was zum Basteln.

Was zum Teufel spricht gegen ein USB-TTL-Wandler, gibts fertig zum 
anploppen für 6 Eumel bei CSD.

Nimm gleich zwei, dann kannst Du auch gleich mitlauschen was da abgeht 
(mit dem RX vom zweiten und Hterm).

Gruß,
Norbert

von Tobi L. (derarzt)


Lesenswert?

1600 gehen davon  für das programm drauf und 55 für die daten

von Eine Idee 2 (Gast)


Lesenswert?

Norbert S. schrieb:
> Aha, bei Euch sitzt der Stack im Flash?

Nö, wer hat das gesagt?

von Tobi L. (derarzt)


Lesenswert?

Norbert S. schrieb:

> Was zum Teufel spricht gegen ein USB-TTL-Wandler, gibts fertig zum
> anploppen für 6 Eumel bei CSD.
>
> Nimm gleich zwei, dann kannst Du auch gleich mitlauschen was da abgeht
> (mit dem RX vom zweiten und Hterm).
>
> Gruß,
> Norbert

liegen dann die gesamten daten an der UART an (also der Device und 
Config descriptor  usw)
oder liegen dann nachher an der UART nur meine reinen Rohdaten an weil 
die descriptoren und die anderen Daten vom FT2323 "geschluckt" werden?

von Achim M. (minifloat)


Lesenswert?

Tobi L schrieb:
>> Evtl. am Limit bzw. die Optimierungen nicht eingeschalten?
>> Heap/Stackprobleme tauchen auch ab und zu so sporadisch auf!
>
> das hab ich noch nicht probiert kann dir nur sagen dass das hexfile auf
> dem pc 5 kb einnimmt. dürfte bei eibnem atmega8 also passen

mach mal avr-size auf das .elf-File
Dann siehst du z.B. auch, was von vornherein im RAM liegt und dem Stack 
den Platz "nach unten" raubt.

mfg mf

von Tobi L. (derarzt)


Lesenswert?

Mini Float schrieb:
> Tobi L schrieb:
>>> Evtl. am Limit bzw. die Optimierungen nicht eingeschalten?
>>> Heap/Stackprobleme tauchen auch ab und zu so sporadisch auf!
>>
>> das hab ich noch nicht probiert kann dir nur sagen dass das hexfile auf
>> dem pc 5 kb einnimmt. dürfte bei eibnem atmega8 also passen
>
> mach mal avr-size auf das .elf-File
> Dann siehst du z.B. auch, was von vornherein im RAM liegt und dem Stack
> den Platz "nach unten" raubt.
>
> mfg mf

C:\bachelorarbeit>avr-size --mcu=atmega8 -C main.elf
AVR Memory Usage
----------------
Device: atmega8

Program:    1604 bytes (19.6% Full)
(.text + .data + .bootloader)

Data:         55 bytes (5.4% Full)
(.data + .bss + .noinit)

von Eine Idee 2 (Gast)


Lesenswert?

Das könnte man dann auch so ziemlich ausschließen.

Wie gesagt, ich würde mal ein TERMINAL verwenden und schauen ob es da 
auch auftritt.

von Achim M. (minifloat)


Lesenswert?

Tobi L. schrieb:
> Data:         55 bytes (5.4% Full)
> (.data + .bss + .noinit)

OK, scheint wohl nicht das Problem zu sein.
Gibt es eine Funktion, die immens viel Variablen benötigt, dass das 
nicht mehr auf den Stack passt?

Auch wäre es mal gut, ein Foto des Aufbaus einzustellen. Auch auf die 
Gefahr hin, dass du es nochmal neu machen musst, weil sich dein Aufbau 
bei der Abgabe nirgendwo im Netz finden lassen sollte...

Oft gibt es Probleme beim VUSB mit den Z-Dioden. Das kann gern ne Weile 
gehen und plötzlich aussetzen. Wie ist der Taster verschaltet? Wie auf 
dem Pollin-AVR-Board sollte man es nicht machen, da bei jedem 
Tastendruck ein kleiner negativer Spike auf VCC erzeugt wird. Das kann 
mitunter lustige Effekte haben.
Am besten läuft bei mir ein VUSB, wenn ich den Controller aus einem 
Low-Drop-Regler wie z.B. LM2951 gleich mit 3,3V betreibe. Damit hast du 
dann auch erstmal eine "Schutzbarriere" gegen Störungen auf der 
USB-Spannungsversorgung.

mfg mf

PS: das mit dem Terminal kann ich auch nur Empfehlen. Warum wollen immer 
alle eine Klickibunti-Oberfläche? Zumal die komische 
Java-Kommunikationslibrary alles andere als plattformübergreifend ist.

von Cyblord -. (cyblord)


Lesenswert?

> liegen dann die gesamten daten an der UART an (also der Device und
> Config descriptor  usw)
> oder liegen dann nachher an der UART nur meine reinen Rohdaten an weil
> die descriptoren und die anderen Daten vom FT2323 "geschluckt" werden?

Irgendwie scheinst du das mit dem Uart und den ComPorts nicht so richtig 
begriffen zu haben.
Ein UART kennt doch keine Device Descriptoren. Der virtuelle ComPort 
verhält sich genauso wie ein Hardware ComPort. Der bekommt eine Nummer 
(z.B. COM6) und das wars. Den kann man dann einfach mit einem Terminal 
öffnen und loslegen.

> Zumal die komische Java-Kommunikationslibrary alles andere als
> plattformübergreifend ist.

Wie willst du eine reine Hardwarekomponente wie den ComPort denn bitte 
Plattformübergreifend machen? Die Java Comm Api abstrahiert komplett 
Plattformübergreifend über die ComPorts. Die reale Ansteuerung derselben 
muss natürlich plattformspezifisch z.B. über .dlls erfolgen.

gruß cyblord

von Norbert S. (norberts)


Lesenswert?

Tobi L. schrieb:
> liegen dann die gesamten daten an der UART an (also der Device und
> Config descriptor  usw)
> oder liegen dann nachher an der UART nur meine reinen Rohdaten an weil
> die descriptoren und die anderen Daten vom FT2323 "geschluckt" werden?

Mit so einem Adapter merkst Du nix mehr von USB. Du hast ne virtuelle 
Com im Rechner und fertig.
http://www.amazon.de/ELV-Mini-USB-Modul-UM2102-Komplettbausatz/dp/B004S79EM6/ref=pd_cp_computers_0

Schmeiß das V-USB Geraffel weg, das ist total unsinnig und unseriös. Du 
nutzt das ja nur als Tool, es ist nicht Teil Deiner Leistung, also 
kannst Du das auch mit nem Adapter und Uart machen. Durch PC und Java 
hat das alles eh nix mit Echtzeit zu tun, dann tuts auch die Serielle.

Gruß,
Norbert

von Cyblord -. (cyblord)


Lesenswert?

Norbert S. schrieb:
> Schmeiß das V-USB Geraffel weg, das ist total unsinnig und unseriös.
Amen, das predige ich seit 120 Posts. Was hats gebracht?

von holger (Gast)


Lesenswert?

>> Schmeiß das V-USB Geraffel weg, das ist total unsinnig und unseriös.
>Amen, das predige ich seit 120 Posts. Was hats gebracht?

Kommt später auch gut in Bewerbungen.

[Sarkasmus on]
"Meine Bachelorarbeit beruht auf einem experimentellem
Design das nicht USB konform ist und später beim Kunden
nur Probleme macht."
[Sarkasmus off]

Muss er halt selber wissen was er da tut.

von Tobi L. (derarzt)


Lesenswert?

Mini Float schrieb:
> Tobi L. schrieb:
>> Data:         55 bytes (5.4% Full)
>> (.data + .bss + .noinit)
>
> OK, scheint wohl nicht das Problem zu sein.
> Gibt es eine Funktion, die immens viel Variablen benötigt, dass das
> nicht mehr auf den Stack passt?

 die usbfunktionsetupmethode dort werden 3 8 bit variablen erstellt 
allerdings sind die static.... aber das sind ja nicht "viele"

> Auch wäre es mal gut, ein Foto des Aufbaus einzustellen. Auch auf die
> Gefahr hin, dass du es nochmal neu machen musst, weil sich dein Aufbau
> bei der Abgabe nirgendwo im Netz finden lassen sollte...
>
> Oft gibt es Probleme beim VUSB mit den Z-Dioden. Das kann gern ne Weile
> gehen und plötzlich aussetzen. Wie ist der Taster verschaltet? Wie auf
> dem Pollin-AVR-Board sollte man es nicht machen, da bei jedem
> Tastendruck ein kleiner negativer Spike auf VCC erzeugt wird. Das kann
> mitunter lustige Effekte haben.
> Am besten läuft bei mir ein VUSB, wenn ich den Controller aus einem
> Low-Drop-Regler wie z.B. LM2951 gleich mit 3,3V betreibe. Damit hast du
> dann auch erstmal eine "Schutzbarriere" gegen Störungen auf der
> USB-Spannungsversorgung.
ich lasse den atmega8 mit 5 V laufen und hab die 3,6v Z dioden genutzt

von Tobi L. (derarzt)


Lesenswert?

Norbert S. schrieb:
> Tobi L. schrieb:
>> liegen dann die gesamten daten an der UART an (also der Device und
>> Config descriptor  usw)
>> oder liegen dann nachher an der UART nur meine reinen Rohdaten an weil
>> die descriptoren und die anderen Daten vom FT2323 "geschluckt" werden?
>
> Mit so einem Adapter merkst Du nix mehr von USB. Du hast ne virtuelle
> Com im Rechner und fertig.
> 
http://www.amazon.de/ELV-Mini-USB-Modul-UM2102-Komplettbausatz/dp/B004S79EM6/ref=pd_cp_computers_0
>

dann werde ich mich tatsächlich mal aufmachen und mir das mit dem ftdi 
chip anschaun.Könnte ich dann FALLS ich wieder wirklich länger hängen 
sollte auf Unterstützung bauen? und nein ich meine nicht damit "gucken 
undn nach 5 min aufgeben und im forum fragen und "gutenbergen" sondern 
ich meine "lösung machen probieren, seit mehreren tagen hängen und 
verzweifeln und als notlösung im forum fragen ..mittlerweile sieht es 
aber echt danach aus als wenn java das problem ist....habe mir das mal 
mit meinem prof angeschaut

von Norbert S. (norberts)


Lesenswert?

Hi,

ich glaube Du solltest es mal einsehen, Tips zu dem V-USB kriegst Du 
hier nur noch von Bastlern, die das Niveau Deiner Arbeit nicht 
sonderlich anheben werden.

Gruß,
Norbert

von Tobi L. (derarzt)


Lesenswert?


von Norbert S. (norberts)


Lesenswert?

Hi,

hat sich überschnitten...

Du hast damit einen Uart am AVR und eine Com im Rechner, Win hat den 
Treiber an Bord.
Da kann es nur noch mit dem internen RC Oszillator schief gehen, nimm 
gleich ein Baudratenquarz.

Und über Amazon ist der Versand billiger als direkt bei ELV...

Gruß,
Norbert

von Cyblord -. (cyblord)


Lesenswert?

Tobi L. schrieb:

> dann werde ich mich tatsächlich mal aufmachen und mir das mit dem ftdi
> chip anschaun.

Also wirst du dich wieder sinnlos mit dem nächsten Quatsch wochenlang 
beschäftigen? Um ein solches Modul zu BENUTZEN ist keinerlei 
Einarbeitung, und vorallem nicht in den FTDI Chip, erforderlich. 
Einstecken, evt. Treiber installieren. FERTIG.
Dazu wurde dir ja gerade deshalb geraten, weil du dich so eben nicht auf 
deine Kommunikation konzentrieren musst.
Und ob du das Ding dann wirklich als BAUSATZ brauchst kaufen solltest, 
wo der Erfolg dann doch wieder vom korrekten Bestücken abhängt sei mal 
dahingestellt.

Und Tipp, dreh die Baudrate auf 2400 runter. Fürs Debug reichts und du 
kannst den internen Taktgenerator nutzen.

gruß cyblord

von holger (Gast)


Lesenswert?

>> dann werde ich mich tatsächlich mal aufmachen und mir das mit dem ftdi
>> chip anschaun.
>
>Also wirst du dich wieder sinnlos mit dem nächsten Quatsch wochenlang
>beschäftigen?

MAX232 mit SUB-D Buchse an den ATMEga8 pappen. Fertigen
USB Seriell Wandler kaufen und gut. Das ist was für Anfänger.
Da bekommt er hier Support bis zum abwincken.

von Cyblord -. (cyblord)


Lesenswert?

holger schrieb:
>>> dann werde ich mich tatsächlich mal aufmachen und mir das mit dem ftdi
>>> chip anschaun.
>>
>>Also wirst du dich wieder sinnlos mit dem nächsten Quatsch wochenlang
>>beschäftigen?
>
> MAX232 mit SUB-D Buchse an den ATMEga8 pappen. Fertigen
> USB Seriell Wandler kaufen und gut. Das ist was für Anfänger.
> Da bekommt er hier Support bis zum abwincken.

Ähm hast du dir das Modul angeguckt?
Mit den USB-TTL Adaptern entfällt jeglicher MAX232. Da brauchst du GAR 
NIX MEHR dazwischen. Also warum den FTDI anschauen? Solche Details kann 
man als Sahnehaube auf die Arbeit draufsetzen, wenn man den Anspruch hat 
jedes Detail seiner  Hardware zu kennen und zu beschreiben. Das ist die 
Kür wenn der Kern mal rennt. Davon ist man hier aber noch weit entfernt. 
Also einstecken, benutzen und die Motorsteuerung fertig machen.

gruß cyblord

von Tobi L. (derarzt)


Lesenswert?

meinet eben mit dem ftdi den chip den Norbert gepostet hat

von Cyblord -. (cyblord)


Lesenswert?

Tobi L. schrieb:
> meinet eben mit dem ftdi den chip den Norbert gepostet hat

Das weiß ich.

von Tobi L. (derarzt)


Lesenswert?

sowie ich das sehe ist ads ein bausatz gibt es das ding schon fertig? 
weil SMDs habe ich noch nicht gelötet

von Cyblord -. (cyblord)


Lesenswert?


von holger (Gast)


Lesenswert?

>sowie ich das sehe ist ads ein bausatz gibt es das ding schon fertig?
>weil SMDs habe ich noch nicht gelötet

Siehst du, deshalb hab ich dir den MAX232 empfohlen.
Den gibt es im DIP Gehäuse. Kannst du einfach mal so ins
Steckbrett stecken oder in eine Lochrasterplatine einlöten.

Mach es dir doch nicht schwerer als es ist.

von Cyblord -. (cyblord)


Lesenswert?

Alternativ wenns schneller gehen soll, aber teuerer:

http://www.watterott.com/de/Pololu-USB-to-Serial-Adapter

von Tobi L. (derarzt)


Lesenswert?

habe mir jetzt das modul bestellt allerdings sehe  ich auf anhieb kein 
datenblatt/ pinbelegung

von Cyblord -. (cyblord)


Lesenswert?

http://static3.watterott.com/0J401600.gif

Hätte mich jetzt auch gewundert. Gut, ein bisschen merkwürdiges Bild, 
aber es ist alles zu erkennen. Auf dem kleinen Bild drunter.
Da muss man die 3 Euro China Dinger loben. Die haben schön alles auf der 
Platine beschriftet.

von Norbert S. (norberts)


Lesenswert?

Hallo, aufwachen!
Das was ich gepostet hatte ist ein fertiges Modul mit dem Chip als BGA 
drauf. Nur den Pfostenstecker (oder Kabel wenn man will) an TTL-Uart muß 
man noch drauflöten. Mini-USB-Buchse ist auch drauf (das was Kameras und 
Navis haben).
Ja, da steht Bausatz aber wenn man mal genau nachsehen würde...
Es ist auch eine umfangreiche Doku bei den Dingern von ELV dabei.

Von den Dingern sollte man immer welche rumliegen haben.

Tobi, das kann doch nicht angehen:
http://www.mikrocontroller.net/articles/Baudratenquarz

Gruß,
Norbert

von Daniel (Gast)


Lesenswert?

Tobi L. schrieb:
> habe mir jetzt das modul bestellt allerdings sehe  ich auf anhieb kein
> datenblatt/ pinbelegung

Also ich schau mir ja immer erst die Datenblätter an und bestell dann 
die Produkte.

von peter (Gast)


Lesenswert?

nüx üs zü schwör für dön bächelöör

von Eine Idee 2 (Gast)


Lesenswert?

Tobi,

es ist egal ob Du einen CP2102 oder FTDI Bausatz nimmst (nimm einen 
Bausatz, da weißt Du dass es im Normalfall funktioniert).
Einziger Vorteil von FTDI ist, falls Du später eine eigene Platine löten 
MUSST, dass es den FTDI auch in anderen Gehäusen gibt als QFN!
Auch von Treiberproblemen habe ich schon gelesen beim CP2102, wobei ich 
eine absolut grotten schlechte Platine für den CP2102 selbst 
gemacht/gelötet habe und der rennt mit 2MBaud ohne Probleme schon seit 
Jahren.

Treiber musst Du dann vom jeweiligen Hersteller herunterladen. Wie 
bereits gesagt entweder für einen VCP(Virtual Com Port) oder einen 
Direct Driver.
Ersteres (VCP) wird reichen.

Einen MAX232 brauchst Du definitiv NICHT. Du könntest vom USART auf 
RS232, dafür würdest Du einen MAX232 brauchen. Da die meisten 
Laptops/PCs aber heute keine direkte COM-Schnittstelle mehr haben, ist 
der so unnötig wie ein Kropf! Auch der Vorschlag von holger finde ich 
nicht so der Brüller, ist nur wieder eine Fehlerquelle mehr!


Also nochmal zusammengefasst:
1) Fertiges CP2102 oder FTDI Modul kaufen
2) Treiber Herunterladen und installieren:
CP2102: 
http://www.silabs.com/pages/DownloadDoc.aspx?FILEURL=Support%20Documents/Software/CP210x_VCP_Win_XP_S2K3_Vista_7.exe&src=SoftwardDownloadsWebPart
FTDI: http://www.ftdichip.com/Drivers/VCP.htm
3) In einem Terminalprogramm den betreffenden Port öffnen.
4) Den Rx Pin mal etwas gegen Masse/Vcc tippen.
   Dann solltest Du kryptische Zeichen auf dem Terminal sehen (nur als 
Verbindungstest ob überhaupt was geht).
5) Dein uC Programm umschreiben (normale UART Routinen hier im Forum 
anschauen und implementieren, wie erwähnt nen externen Quarz verwenden!)
6) Das ganze wieder im Terminalprogramm verifizieren.
7) Dein Javaprogramm umschreiben.

Sollte es Probleme geben, melde Dich.
Allerdings sollte es damit sowas von einfach werden, dass keine Fehler 
mehr auftreten sollten.

Grüße

von Eine Idee 2 (Gast)


Lesenswert?

Tobi L. schrieb:
> habe mir jetzt das modul bestellt allerdings sehe  ich auf anhieb kein
> datenblatt/ pinbelegung

Welches?

von AKW (Gast)


Lesenswert?

Tobi L. schrieb:
> habe mir jetzt das modul bestellt allerdings sehe  ich auf anhieb kein
> datenblatt/ pinbelegung

Hoffentlich baust du später keine Atomkraftwerke.

von Matthias S. (Firma: matzetronics) (mschoeldgen)


Lesenswert?

@Tobi: Du weisst auch, das ein Arduino2009/Uno alles an Bord hat, um 
dein Projekt zu unterstützen? Den FT232, ein ATMega8/48/88/168/328 und 
einen 16 Mhz Quarz.
Die Stromversorgung liefert ungeregelte Motorspannung und MC-Saft. ISP 
Anschluss hat er auch.
Denn Bootloader brauchst du nicht, wenn du deinen eigenen ISP Programmer 
hast und die Arduino Software auch nicht.

von Axel F. (pfennig)


Lesenswert?

Tobi.l schrieb:
> Eine Idee 2 schrieb:
>> Hast Du eine saubere Versorgungsspannung?
> naja das device ist Buspowered hängt also (ohne motor) am USB-Bus
>
>> Saubere Lötstellen?
> japp alle doppelt und dreifach geprüft und ich weiss wie sauberer
> lötstellen aussehen
>
eventuelle machst du keine Sichtprüfung sondern misst mit einen 
Multimeter die Lötstellen mal nach, ... .wärest du nämlich nicht der 
erste der glaubte mit blossen auge kalte Lötstellen zu entlarven, das 
klappt manches mal, aber halt nicht immer


>
> jap der läuft noch..hab ja auch den watchdog an und die USB-Verbindung
> besteht weiterhin...ausserdem kann ich noch Interrupts auslösen (per
> taster) und die werden mir auch (per LED)angezeigt (Die Led ist also bei
> jedem 2ten Tastendruck an )

warum hast du den Watchdog angeschaltet?
also hier solltest du dich fragen, wozu du den Watchdog eigentlich 
brauchst, in der Regel kann man den ausschalten, zumindest in deinen 
Fall kannst du das mit

Sicherheit
(der ist nur notwendig, wenn du mit deiner Schaltung den Motor über 
längere Zeit regeln willst, in der testphase aber brauchst du den nicht, 
und kannst den abschalten

was das Interrupthandling angeht, an dem was du geschrieben hast, kann 
man die Vermutung hochheben, das du nicht verstanden hast, in wiefern 
der Watchdog mit den Interrupt zusammenhängt oder wozu Watchdog ist, 
oder die Möglichkeit Interrupts zu nutzen in Verbindung mit dem Watchdog

ich würde an deiner Stelle erstmal mit einfachen Programmen versuchen,
und lass die Finger von Java ö.Ö

ich meine ,, gut, da gibt es auch Glaubenskriege
Java oder C++
aber Java auf einen Microkontroller ?!?!
was issn das????
java ist cross embedded, bedeutet, es erzeugt bytecode, das bedeutet, du 
musst auf den Controller eine Virtuale Machine installieren, ... erst 
über dieser läuft dann in Anschluss das eigentliche Programm, bei 
kleinen Prozessoren wie du ihn da Verwendest, erscheint mir das etwas 
sehr mit Kanonen auf Spatzen geschossen

keine Frage, Cross Embedded hat seinen Charm, aber für das was du da 
machst, ...... das ist da grotesker Unsinn


>
>  nach einem reset des usb-bus (vom javaprogram per button)  kann ich
> wieder Controle-Messages schicken.

ich habe ja mal Java für uC's für einen Witz gehalten, ....

aber die machen Ernst, es gibt mittlerweile tatsächlich Versuche, Java 
auf Mikrokontroller durchzusetzen

ich an deiner Stelle würde die Pfoten von Java weglassen und es mit C 
probieren, und bei USB Schnittstellen ,die eh ein bestimmtes 
Datentransfer Tempo abverlangen, ... wäre ASM vieleicht für einige 
sachen nicht das schlechteste

c bietet auch die Möglichkeit von Inline Assemblerroutinen, so das du 
bequem einige Passagen in Assemblerr code beschreiben kannst, und den 
rest, zeitsparend in c


in anderer Sache

es gibt auch Mikrokontrolle, die bereits eine USB Schnittstelle 
implementiert haben, warum also eine VUSB?? das versteh ich da nicht 
ganz, warum du nicht so einen Prozessor genommen hast, wurde dir der 
Prozessor den du benutzt vorgeschrieben?

wenn ja,, es gibt auch USB to UART Konverter

nur das du weg kommst von der virtuellen Implementation einer 
Schnittstelle

wie auch immer, was man in Studium nicht gelernt hat, wird man in 3 
Monaten Bachelorarbeit nicht nachholen

LG

von Tobi L. (derarzt)


Lesenswert?

Axel F. schrieb:
> Tobi.l schrieb:
>> Eine Idee 2 schrieb:
>>> Hast Du eine saubere Versorgungsspannung?
>> naja das device ist Buspowered hängt also (ohne motor) am USB-Bus
>>
>>> Saubere Lötstellen?
>> japp alle doppelt und dreifach geprüft und ich weiss wie sauberer
>> lötstellen aussehen
>>
> eventuelle machst du keine Sichtprüfung sondern misst mit einen
> Multimeter die Lötstellen mal nach, ... .wärest du nämlich nicht der
> erste der glaubte mit blossen auge kalte Lötstellen zu entlarven, das
> klappt manches mal, aber halt nicht immer
>
>
>>
>> jap der läuft noch..hab ja auch den watchdog an und die USB-Verbindung
>> besteht weiterhin...ausserdem kann ich noch Interrupts auslösen (per
>> taster) und die werden mir auch (per LED)angezeigt (Die Led ist also bei
>> jedem 2ten Tastendruck an )
>
> warum hast du den Watchdog angeschaltet?
> also hier solltest du dich fragen, wozu du den Watchdog eigentlich
> brauchst, in der Regel kann man den ausschalten, zumindest in deinen
> Fall kannst du das mit
>
> Sicherheit
> (der ist nur notwendig, wenn du mit deiner Schaltung den Motor über
> längere Zeit regeln willst, in der testphase aber brauchst du den nicht,
> und kannst den abschalten
>
> was das Interrupthandling angeht, an dem was du geschrieben hast, kann
> man die Vermutung hochheben, das du nicht verstanden hast, in wiefern
> der Watchdog mit den Interrupt zusammenhängt oder wozu Watchdog ist,
> oder die Möglichkeit Interrupts zu nutzen in Verbindung mit dem Watchdog
>
> ich würde an deiner Stelle erstmal mit einfachen Programmen versuchen,
> und lass die Finger von Java ö.Ö
>
> ich meine ,, gut, da gibt es auch Glaubenskriege
> Java oder C++
> aber Java auf einen Microkontroller ?!?!
> was issn das????
> java ist cross embedded, bedeutet, es erzeugt bytecode, das bedeutet, du
> musst auf den Controller eine Virtuale Machine installieren, ... erst
> über dieser läuft dann in Anschluss das eigentliche Programm, bei
> kleinen Prozessoren wie du ihn da Verwendest, erscheint mir das etwas
> sehr mit Kanonen auf Spatzen geschossen
>
> keine Frage, Cross Embedded hat seinen Charm, aber für das was du da
> machst, ...... das ist da grotesker Unsinn

nein java läuft nicht auf dem avr java läuft auf dem pc...es gibt wohl 
mini javaavr bibliothekenen aber dafür wäre java zu groß



> wenn ja,, es gibt auch USB to UART Konverter
>


jaich werde das auch machen... ich habe aber gesern mit den code nochmal 
angeschaut und 2-3 variablen geändert und zumindest läuft er jetzt seit 
4 std ohne fehler wo er vorher nach ca max. 1 std aufgehört hat. ich 
weiss das lleine beweisst noch garnichts ins besondere nicht dass das 
teil fehlerfrei funktioniert... deshalb werde ich das auch  mit dem 
USB-uart konverter machen aber ehrlich gesagt interessiert es mich ob es 
daran liegen kann.

ich würde gerne den Code posten...würde sich jmd den code 
INTERESSEHALBER anschaun damit ich (und vll auch er selber) was lernt?

von Axel F. (pfennig)


Lesenswert?

>> jap der läuft noch..hab ja auch den watchdog an und die USB-Verbindung
>> besteht weiterhin...ausserdem kann ich noch Interrupts auslösen (per
>> taster) und die werden mir auch (per LED)angezeigt (Die Led ist also bei
>> jedem 2ten Tastendruck an )

aber das sind doch zwei verschiedene Prozesse
durch ein Interrupt Erreignis eine LED zum Leuchten bringen ist das 
eine, der Watchdog startet aber regelmässig deinen Prozessor neu

da hat das eine mit dem anderen nix zu tun

verstehst du, Watchdog = spezieller Timmer, löst also in Prinzip wohl 
auch irgendwann ein Interrupt aus, dieser führt zu einen ChipReset und 
der Chip bootet neu

die aber hat in Prinzip mit deinen Taster-Interrupt nix zu tun



..

das dein Chip nach einiger Zeit sich verrennt, kann daran liegen, das du 
deinen Speicher voll schreibst und ihn in Anschluss nicht freimachst!!

das nennt man Speicherüberlauf

da hängen sich häufig Prozessoren dann auf
verwende zum Speichern immer einen Ringbuffer, der räumt sich pro Umlauf 
selber auf
Alloziiere dazu einen Speicherblock auf den du sicher verzichten kannst


und noch mal,,,,

wenn du alle die Dinge nur so halb und solala verstehst, wirst du enorme 
Probleme bekommen, auch in abschliessenden Kolloquium !!

also bemühe dich und schaff dir Literatur an, zu dem Thema

von Tobi L. (derarzt)


Lesenswert?

Axel F. schrieb:
>der Watchdog startet aber regelmässig deinen Prozessor neu
eben das genau tut er ja nicht. da ich in der endlosschleife direkt vor 
dem usbpoll den watchdog zurücksetzte.

> verstehst du, Watchdog = spezieller Timmer, löst also in Prinzip wohl
> auch irgendwann ein Interrupt aus, dieser führt zu einen ChipReset und
> der Chip bootet neu
das tut er ja eben nicht, da die usbverbindung bestehen bleibt. würde 
der watchdog greifen würde meines eraachtens die usb kommunikation 
unterbrochen werden da der mikrocontroller  resetet wird und damit die 
main neu aufgerufen wird und damit der mikrocontroller die usbverbindung 
die durch die methode USBPOLL sichergestellt wird(die sich in der 
forschleife der main befindet) unterbrochen werden


oder ich habe die Definition eines watchdogs überhaupt nicht verstanden 
was ich ehrlich gesaht nicht glaube. Für mich ist ein watchdog  quasi 
"ein digitaler Tonmannschalter " , wie bei den Loks, den ich in meinem 
Hauptprogramm immerzurücksetzen muss, da er ansonsten seinen "Grenzwert" 
erreicht und einen Reset des mikrocontrollers druchführt...und ich bin 
der Meinung das falls ein solcher Reset in meinem Hauptprogram 
durchgeführt werden würde ich die USB-Verbindung verlieren würde

> die aber hat in Prinzip mit deinen Taster-Interrupt nix zu tun
>
das ist mir an sich soweit klar


> wenn du alle die Dinge nur so halb und solala verstehst, wirst du enorme
> Probleme bekommen, auch in abschliessenden Kolloquium !!
>
> also bemühe dich und schaff dir Literatur an, zu dem Thema

bin ich dabei

von Cyblord -. (cyblord)


Lesenswert?

Axel F. schrieb:

> ich würde an deiner Stelle erstmal mit einfachen Programmen versuchen,
> und lass die Finger von Java ö.Ö
>
> ich meine ,, gut, da gibt es auch Glaubenskriege
> Java oder C++
> aber Java auf einen Microkontroller ?!?!
> was issn das????
> java ist cross embedded, bedeutet, es erzeugt bytecode, das bedeutet, du
> musst auf den Controller eine Virtuale Machine installieren, ... erst
> über dieser läuft dann in Anschluss das eigentliche Programm, bei
> kleinen Prozessoren wie du ihn da Verwendest, erscheint mir das etwas
> sehr mit Kanonen auf Spatzen geschossen
>
> keine Frage, Cross Embedded hat seinen Charm, aber für das was du da
> machst, ...... das ist da grotesker Unsinn

Wo schreibt der TE denn dass er den Controller in Java programmiert? In 
Java ist sein Host Programm. Eventuell erst lesen dann klugscheißen.

gruß cyblord

von Frank M. (ukw) (Moderator) Benutzerseite


Lesenswert?

cyblord ---- schrieb:
> Alternativ wenns schneller gehen soll, aber teuerer:
>
> http://www.watterott.com/de/Pololu-USB-to-Serial-Adapter

Hier gibt es das Teil billiger inkl. Datenblätter und direkt auf der 
Platine beschriftet:

http://shop.myavr.de/Bauelemente%20und%20Controller/myUSBtoUART.htm?sp=article.sp.php&artID=200024

Verwende ich in einigen Projekten absolut problemlos.

von Axel F. (pfennig)


Lesenswert?

@cylord

da kannst du mal sehen, da hab ich mich wohl verlesen,
das hat der TE auch schon richtig gestellt, ....
und was soll dein anpissender Beitrag nun ? langeweile?

also ich hab langeweile, deswegen schau ich hier auch rein

vieleicht ist es auch Mitgefühl, weil ich weiss wie sich ein Bachelor, 
oder ein Abschlussabsolvent fühlen kann, wenn er verlohren geht in den 
Weiten dessen was wir Weit nennen .....


wie auch immer, Piss andere Leute dumm an


@Tobi

der Watchdog meldet nicht wie in der strassenbahn das der chip noch 
lebt, sondern normalerweise schaltet der einfach stupide deinen 
Mikrochip aus und bootet neu, ich schrieb vorher mal das der Watchdog in 
grunde nur ein Timer ist, den kannst du natürlich reseten, dann greift 
der Watchdog auch nicht, hier musst du aber beachten, wie lange der 
Watchdog dazu benötigt, da gibt es so Zeiten die von der Taktfrequenz 
des Chips abhängen, das musst du in Datenblatt nachlesen,
oft kannst du aber die Zeit zwischen den Reseten noch etwas 
konfigurieren und entsprechen der durchschnittlichen Runtime deines 
Programmes anpassen
 du nutzt den Watchdog aber nicht um zu schauen ob der Chip noch lebt, 
sondern, der Watchdog soll sicherstellen ,das wenn der Chip abgestürzt 
ist, er wieder neu bootet,,

das kann der, in dem innerhalb der Runtime, der Watchdogtimer immer 
einmal zurück gesetzt wird... wird der Timer nämlich dann einmal nicht 
zurückgesetzt, läuft er ja ab, löst dann einen interrupt aus und die 
zugehörige Interrupt routine verursacht dann einen Neustart des Chips,,, 
gibt also plump gesagt ein Signal auf MCLR

also Programm läuft in Loop einmal komplett durch und wiederholt sich, 
am Anfang des Programms den Watchdog timer auf 0 setzen... passiert das 
immer, läuft Chip bis Weihnachten und weiter

ist in deinen Fall aber egal





in deinen Fall solltest du eventuelle einfach den Watchdog abschalten, 
und wenn du ein Totmannmelder benötigst, versuche das über ein regulären 
Interrupt herzurichten.. wenn du nämlich nur wissen willst ob die USB 
verbindung noch vorhanden ist oder dergleichen, reicht ein Interrupt 
voll aus
dort hast du auch dann mehr Kontrolle über das was der Chip eigentlich 
machen soll
also internen Timer des Chips nutzen, bei ablauf die Verbindung prüfen, 
bei verbindungsverlust meldung senden

und versuch mal auf PC Ebene auch von Java wegzukommen,

ich meine, gut, ich verstehe nun warum du unbedingt VUSB haben wolltest, 
das ist bei Java so das du Schnittstellen nicht direkt ansprechen kannst
da Java komplett weg von der Hardware ist
eigentlich benutzt man java nur auf Protokoltransferebene da wo TCP / IP 
anfängt zum beispiel
die hardware selber, also Hardware adressen oder real vorhandene 
Schnittstellen kann man mit Java nicht direkt ansprechen
oft macht man so etwas dann über eine Zwischenlösung, man schaltet 
zwischen Hardware und Java-Program noch einen hardwarebedienenden 
Server, welcher oft in Ansi - C geschrieben ist

so kannst du dann über Java mit der hardware kommunizieren,
da steht dir dann auch in Java so etwas wie eine virtuelle Schnittstelle 
zur Verfügung, die du dann über Java bedienen kannst

auf das Problem stösst man relativ schnell wenn man 
spracherkennungssoftware entwickeln will, mit Hilfe von Java 
bibliotheken
nur als Hinweis, in dem Zusammenhang hab ich mir das mal fein erklären 
lassen....

so nun muss ich auch wieder was tun ....
LG

von Cyblord -. (cyblord)


Lesenswert?

Axel F. schrieb:
> @cylord
>
> da kannst du mal sehen, da hab ich mich wohl verlesen,
> das hat der TE auch schon richtig gestellt, ....
> und was soll dein anpissender Beitrag nun ? langeweile?

Verlesen? Der TE hat schon einiges an Code gepostet, dass dies kein Java 
ist sieht man sofort. Du hast dich nicht verlesen, sondern überflogen 
und dann einen schnellschuss gebracht und das bringt hier niemanden 
weiter. Erst nicht im Thread mitkommen, aber in ellenlangen Posts den 
Besserwisser raushängen, das hat man gern.

> wie auch immer, Piss andere Leute dumm an
Nö ich sag was ich denk und zu wem ich will.

gruß cyblord

von Axel F. (pfennig)


Lesenswert?

@cylord

> Nö ich sag was ich denk und zu wem ich will.


ah so, so einer bist du also

von Tobi L. (derarzt)


Lesenswert?

Axel F. schrieb:
> @Tobi
>
> der Watchdog meldet nicht wie in der strassenbahn das der chip noch
> lebt,
das meinte ich nicht^^ Es kann sein dass ich mich da undeutlich 
ausgedrückt habe.

sondern normalerweise schaltet der einfach stupide deinen
> Mikrochip aus und bootet neu,

das meinte ich auch :-)

ich schrieb vorher mal das der Watchdog in
>  hier musst du aber beachten, wie lange der
> Watchdog dazu benötigt, da gibt es so Zeiten die von der Taktfrequenz
> des Chips abhängen, das musst du in Datenblatt nachlesen,

> oft kannst du aber die Zeit zwischen den Reseten noch etwas
> konfigurieren und entsprechen der durchschnittlichen Runtime deines
> Programmes anpassen
Ok das wusste ich nicht !

>  du nutzt den Watchdog aber nicht um zu schauen ob der Chip noch lebt,
> sondern, der Watchdog soll sicherstellen ,das wenn der Chip abgestürzt
> ist, er wieder neu bootet,,
 das ist auch soweit klar..wie gesagt vll unverständlich formuliert von 
mir
> das kann der, in dem innerhalb der Runtime, der Watchdogtimer immer
> einmal zurück gesetzt wird... wird der Timer nämlich dann einmal nicht
> zurückgesetzt, läuft er ja ab, löst dann einen interrupt aus und die
> zugehörige Interrupt routine verursacht dann einen Neustart des Chips,,,
> gibt also plump gesagt ein Signal auf MCLR

jap  auf das selbe sollte meine erklärung hinauslaufen
>
>
> in deinen Fall solltest du eventuelle einfach den Watchdog abschalten,
> und wenn du ein Totmannmelder benötigst, versuche das über ein regulären
> Interrupt herzurichten.. wenn du nämlich nur wissen willst ob die USB
> verbindung noch vorhanden ist oder dergleichen, reicht ein Interrupt
> voll aus
> dort hast du auch dann mehr Kontrolle über das was der Chip eigentlich
> machen soll
> also internen Timer des Chips nutzen, bei ablauf die Verbindung prüfen,
> bei verbindungsverlust meldung senden
>
> und versuch mal auf PC Ebene auch von Java wegzukommen,
>
> ich meine, gut, ich verstehe nun warum du unbedingt VUSB haben wolltest,
> das ist bei Java so das du Schnittstellen nicht direkt ansprechen kannst
> da Java komplett weg von der Hardware ist
> eigentlich benutzt man java nur auf Protokoltransferebene da wo TCP / IP
> anfängt zum beispiel
> die hardware selber, also Hardware adressen oder real vorhandene
> Schnittstellen kann man mit Java nicht direkt ansprechen
> oft macht man so etwas dann über eine Zwischenlösung, man schaltet
> zwischen Hardware und Java-Program noch einen hardwarebedienenden
> Server, welcher oft in Ansi - C geschrieben ist
>
> so kannst du dann über Java mit der hardware kommunizieren,
> da steht dir dann auch in Java so etwas wie eine virtuelle Schnittstelle
> zur Verfügung, die du dann über Java bedienen kannst
 naja ich nutze die javalib von libusb die  ist der c libusb Library 
sehr ähnlich und soll wohl auch stabil laufen.......
p.s ich lasse gerade wieder den controller seit 4 std laufen 
(zwischendurch ist mir mein netbook an dem der controller angehängt ist 
abgekackt)   und er läuft immernoch,......auch wieder hier der hinweis. 
es ist mir klar dass das kein beweiss dafür ist dasss er 100%tig läuft 
.....

von Klaus Dieter (Gast)


Lesenswert?

@ Axel F.
Mit dem Unsinn den du von dir gibst erreichst du nichts, außer die 
Verunsicherung von Tobi noch zu vergrößern. Ich glaube Tobi hat besser 
verstanden wofür ein watchdog ist als du.

@Tobi
Wie ist denn jetzt dein Status?

von Cyblord -. (cyblord)


Lesenswert?

Und dann noch die unsäglich Schwachsinnigen Ausführungen zu Java:

> eigentlich benutzt man java nur auf Protokoltransferebene da wo TCP / IP
> anfängt zum beispiel
> die hardware selber, also Hardware adressen oder real vorhandene
> Schnittstellen kann man mit Java nicht direkt ansprechen
> oft macht man so etwas dann über eine Zwischenlösung, man schaltet
> zwischen Hardware und Java-Program noch einen hardwarebedienenden
> Server, welcher oft in Ansi - C geschrieben ist

Ich dachte schon, wie kommt man auf so einen quatsch, aber dann

> in dem Zusammenhang hab ich mir das mal fein erklären lassen....

ok, selber keine Ahnung aber irgendwer hat mal irgendwas erzählt.

Nach deiner Theorie kann man mit Java also auch nicht auf lokalen 
Festplatten oder gar das lokale Ram zugreifen. ist ja alles Hardware und 
das geht mit java natürlich nicht.

naja da braucht man wohl dann weiter nichts zu sagen und BACK TO TOPIC.

von Tobi L. (derarzt)


Lesenswert?

> @Tobi
> Wie ist denn jetzt dein Status?

also kurz formuliert das device läuft(seiz 4 std) immernoch ohne 
probleme...und schickt Daten. D.h 4 mal länger als der bosher längste 
run ohne probs... ist auch unempfindlich gegen aus und einstöpselb des 
ladekabels...(was die vorgängerversion nicht war) ich hab mir gerade ne 
gabellichtschranke und ne acryl platte für die lochscheibe geholt.. und 
werde mich darauf erstmal konzentrieren.. parallel lasse  ich das deide 
bish eute nacht laufen da ich dann uwar immnoch nicht 100%tig weiss ob 
es dauerhaft läuft aber dann  für mein empfinden "sich die 
wahrscheinlichkeit dass ich den fehler gefunden habe erhöht hat"

mittlerweile bin ich auch der meinug dass ich nur fälschlicherweise 
angenommen habe dass das device keien datn mehr schickt...

ich hatte für mich persönlich festgelegt dass das device keine daten 
mehr schickt weil ich als rückgabe wert den alten wert im 
mikrocontroller bekomme. tatsächlich war es aber wohl so (so vermute 
ich) dass das device intern nicht mehr  hochgehält hat und sich im 
register aufgehängt hat(wenn sowas möglich ist) und daher die variable 
nicht mehr hochgezählt hat und mir immer wieder den altenn variblen wert 
zurpck geschickt hat

von Klaus Dieter (Gast)


Lesenswert?

OK. Ich denke, es ist auch besser wenn du den USB Part jetzt erstmal 
ruhen lässt. Manchmal bemerkt man Fehler auch erst, wenn man etwas 
Abstand zu der Sache gewonnen hat. Hast du dir denn schon Gedanken 
gemacht, wie du die Regelung realisieren willst? Bleibst du bei der 
ursprünglichen Idee oder lasst du den Controller Regeln (und ab und zu 
Statusmeldungen senden)?

von Simon K. (simon) Benutzerseite


Lesenswert?

Wer unterschreibt eigentlich alles bei deiner Eigenständigkeitserklärung 
der BA?

von Eine Idee 2 (Gast)


Lesenswert?

cyblord ---- schrieb:
>> in dem Zusammenhang hab ich mir das mal fein erklären lassen....
>
> ok, selber keine Ahnung aber irgendwer hat mal irgendwas erzählt.
>
> Nach deiner Theorie kann man mit Java also auch nicht auf lokalen
> Festplatten oder gar das lokale Ram zugreifen. ist ja alles Hardware und
> das geht mit java natürlich nicht.

Da kann ich Dir nur zustimmen, habe genau das selbe gedacht.

Simon K. schrieb:
> Wer unterschreibt eigentlich alles bei deiner Eigenständigkeitserklärung
> der BA?

Es kann mir keiner erzählen dass wenn er ein Problem während seiner 
Abschlussarbeit hatte, dass er nicht mit Anderen darüber geredet hat.

von Simon K. (simon) Benutzerseite


Lesenswert?

Eine Idee 2 schrieb:
> Simon K. schrieb:
>> Wer unterschreibt eigentlich alles bei deiner Eigenständigkeitserklärung
>> der BA?
>
> Es kann mir keiner erzählen dass wenn er ein Problem während seiner
> Abschlussarbeit hatte, dass er nicht mit Anderen darüber geredet hat.

Das nicht. Aber der Thread hier droht mittlerweile auf die zweite Seite 
umzubrechen, das ist schon was ganz anderes...

von Axel F. (pfennig)


Lesenswert?

@Cylord

auf so einen Quatsch stösst man wenn man sich damit beschäftigt

das scheinst du nicht getan zu haben....

p.s. Festplatten zugriff mit Java und mal schauen was eine VM ist.... 
solltest du tun.....

wie auch immer, ich glaube wir beide haben uns eh alles gesagt, was dazu 
zu sagen ist ....

weisst du, ich tausch mich nicht gerne aus, mit Leuten die schon von 
Geburt an, einen vollständigen Wissenstand zu haben glauben .....


@Klaus Dieter

Unsinn ist es aus der Perspektive des Betrachters, dann wenn ....
sollen wir das ausdiskutieren,

hab ich keine Zeit, oder keine Lust zu
ist auch relativ aus der Sicht des Betrachters
kannst du dir aussuchen Augenzwincker

und lese dich mal in das Thema Watchdog ein, da gibt es nicht all zu 
viel was zu verstehen ist,

@Tobi

warum bestehst du auf den Einsatz eines Watchdogs, das habe ich an 
deinen Ausführungen noch nicht genau verstehen können

Aus deiner ursprünglichen Aufgabenstellung ging die Notwendigkeit eines 
Watchdogs nicht hervor, sollst du ihn mit einbauen, weil es eine Vorgabe 
des Professors ist? so quasi als zusätzliches Schmanckerl????

zu
> das kann der, in dem innerhalb der Runtime, der Watchdogtimer immer
> einmal zurück gesetzt wird... wird der Timer nämlich dann einmal nicht
> zurückgesetzt, läuft er ja ab, löst dann einen interrupt aus und die
> zugehörige Interrupt routine verursacht dann einen Neustart des Chips,,,
> gibt also plump gesagt ein Signal auf MCLR

jap  auf das selbe sollte meine erklärung hinauslaufen
>

das ist aber nicht Toter Mann Prinzip wie bei Strassenbahnen

stelle dir vor, der Strassenbahnfahrer meldet sich einmal nicht, und 
Bumm, die Strassen bahn wird einmal abgeschaltet und wieder 
eingeschaltet

weisst du, in extremsten Fall ist der strassenbahnfahrer immer noch 
tot...

aber stell dir vor, die Strassenbahn hängt sich während der fahrt auf, 
wegen vieleicht einer technischen disfunktion, in dem moment greift ein 
Watchdog, der fährt das system einmal runter und startet neu, unabhängig 
eventuelle davon ob der Strassenbahnfahrer ein Problem hat

.. wie auch immer, ich habe dich so verstanden, das der Watchdogtimer 
dann nicht zurück geschaltet wird, wenn die USB verbindung weg 
bleibt,...
aber in diesen Fall könntest du doch einen einfachen interrupt nehmen, 
und den Watchdog umgehen, du musst normal auch nicht immer gleich den 
Chip neu starten....
weil nur angenommen, die usb schnittstelle ist nach einer gewissen Zeit 
in Sendepause, dann würde ja der Chip ständig neu starten, welchen sinn 
macht das dann?

hmmm, Fragen die sich ja dann auch stellen sind,
pollt die USB schnittstelle regelmässig den Chip, und in welchen 
abständen?
kannst du das Pollingsignal für ein Interrupt nutzen?

oder wenn die USB Schnittstelle nicht pollt, lass doch einfach den chip 
regelmässig pollen in der art wie ein Ping, warte auf antwort, kommt 
keine Antwort, dann Verbindung neu initialisieren oder alarm in Form 
einer leuchtenden LED geben

watchdog erscheint da etwas unelegant, sollte als Sicherheitsfunktion 
genutzt werden, wenn die Regelung in einer art langstrecken versuch 
getestet wird. als sicherheit, das wenn der Chip selber hängt, sich dann 
resetet...
du solltest diese Funktion nicht missbrauchen für andere Zwecke

das ist in etwa so wie wenn man den Notausschalter nutzt für irgendwas 
anderes anstelle für Notfälle..... das ist nicht sinn der sache

du steigst ja auch nicht durch den Kofferraum in dein Auto,...


soviel zu meinen persönlichen Bedenken des Watchdogs in Rahmen deiner 
Anwendunge..

von Tobi (Gast)


Lesenswert?

Axel F. schrieb:
> @Tobi
>
> warum bestehst du auf den Einsatz eines Watchdogs, das habe ich an
> deinen Ausführungen noch nicht genau verstehen können
>
> Aus deiner ursprünglichen Aufgabenstellung ging die Notwendigkeit eines
> Watchdogs nicht hervor, sollst du ihn mit einbauen, weil es eine Vorgabe
> des Professors ist? so quasi als zusätzliches Schmanckerl????
nein der watchdog ist von haus aus in der implementierung von vusb 
enthalten...


>
> das ist aber nicht Toter Mann Prinzip wie bei Strassenbahnen
>
> stelle dir vor, der Strassenbahnfahrer meldet sich einmal nicht, und
> Bumm, die Strassen bahn wird einmal abgeschaltet und wieder
> eingeschaltet
>
> weisst du, in extremsten Fall ist der strassenbahnfahrer immer noch
> tot...

naja k bei der strassenbahn bzw der lok wird dann soviel ich weiss ne 
notbremsung eingeleitet und der zug fährt NICHT von neuem an.....

das heisst ICH sehe den unterschied von watchdog zu totmannschalte darun 
dass der watchdog nach einem abschalten wieder neustartet was der 
totmannschalter nicht tut
> weil nur angenommen, die usb schnittstelle ist nach einer gewissen Zeit
> in Sendepause, dann würde ja der Chip ständig neu starten, welchen sinn
> macht das dann?
 nein die usbkommnukikation wird von vusb intern auch per irgendwie per 
interrupt wie genau weiss ich nicht. geb ich zu! hab mir nicht alle lib 
von vusb angeschaut.

von Axel F. (pfennig)


Lesenswert?

@Simon K

Java greift auf Hardware in PC über die VM zu

hat aber wie Tobi selber sogar schon weit vorher erkannt hat, das hab 
ich grad gelesen, probleme damit ComPorts zu bedienen, das aber liegt 
auch in der Natur von Java,,

hier lohnt es sich wirklich einmal zu schauen was Byte code ist und 
wieso es für so etwas einer virtuellen Runtimeumgebung benötigt

vor allem sollte man dabei nachschlagen was diese Runtime Umgebung genau 
macht
ist unter den hier ergebenen Aspekt lustig zu lesen

Java ist keine Sprache mit der man Hardware direkt ansprechen kann, wenn 
man das will, geschieht dies stets über virtuelle Ports
diese aber müssen bereitgestellt werden
und das wiederrum ist recht komplex

in einen Fall wie ihn nun Tobi bedient, scheint es nunmal nicht klug, 
sich mit solchen vorrangig zu beschäftigen

wobei, wie ich schon vorher mal schrieb

Java bietet durch die Verwendung von Bytecode die Möglichkeit Cross 
Embedded zu Programmieren
das geht daher, das man auf der Hardware plattform auf der mein 
Sourcecode angewendet werden soll
einfach eine kompatible Runtime Umgebung installiert werden muss,
diese Umgebung managed dann jede Hardware recource so gut sie kann
aber ebend nur so gut sie kann
Soundkarten über Java programmieren zum beispiel funktioniert so mal gar 
nicht auf direkten weg
Cross embedded ist gut, hat seinen charm, macht aber nunmal nicht immer 
sinn


wenn man Hardware nah Programmiert, und das macht Tobi grad, sollte man 
überlegen ob man nicht Java umgehen sollte, C oder ASM sind da sicher 
ergiebiger

nun Tobi programmiert auf seinen Chip nicht in Java
aber auf seinen host PC
wer sagt ihn denn jetzt, das Java hierr den virtuellen Com Port auch 
richtig beddient

oder ob java das Timing richtig handelt
ich könnte es nicht sagen, kannst du es? .. dann schön für dich :)
bist du der erste

spass beiseite,,

Java hat diese Probleme, die kann man auch nciht wegdiskutieren
LG

von Axel F. (pfennig)


Lesenswert?

@Tobi
ja es gibt einen Interrupt von Chip aus, der immer lauscht
der ist wichtig für deinen Chip

aber es kann ja passieren das dein Chip zwar noch einen super 
initialisierten USB - Port hat ,der top einsatzfähig ist
aber die Verbindung zum PC ist weggebrochen oder die USB Schnittstelle 
an PC ist weg

da musst du dann von Pic aus einmal deinen host anpingen

zum Watchdog, exact genau das,, deswegen ist es schwierig den Watchdog 
als Totmanschalter zu sehen, da er nciht das selbe macht

hmmm, wenn du nun deine Schaltung lange laufen lässt
kann es nach wochen oder tagen jam al passieren das der Chip abstürtzt

in dem Fall ist ein Watchdog gut
aber einfluss auf das eigentliche Programm sollte der nicht haben

jetzt kann natürlich auch passieren, das der Chip beim Datentransfer 
über USB abstürzt,

in so fällen ist ein watchdog ja praktisch, aberr wenn geht, umgeh das

von Cyblord -. (cyblord)


Lesenswert?

Axel F. schrieb:
> Java greift auf Hardware in PC über die VM zu

Java = eine Programmiersprache
JVM = abstrahiert zwischen Java Bytecode und der Hardware
Diesen Unterschied solltest du dir mal bei deinen Ausführungen angucken.


> hat aber wie Tobi selber sogar schon weit vorher erkannt hat, das hab
> ich grad gelesen, probleme damit ComPorts zu bedienen, das aber liegt
> auch in der Natur von Java,,
Er benutzt noch gar keinen ComPort, er greift aktuell noch direkt über 
USB (über die libusb) auf den USB Port zu. Wovon redest du eigentlich?

> hier lohnt es sich wirklich einmal zu schauen was Byte code ist und
> wieso es für so etwas einer virtuellen Runtimeumgebung benötigt
Ja, DU solltest dir das angucken. Die meisten neueren Programme laufen 
in einer Runtime Umgebung. Auch alles was mit .NET erstellt wurde. Das 
hat in diesem Bezug überhaupt keine Nachteile. Du urteilst hier mit 
himmelschreiendem Halbwissen.

> Java ist keine Sprache mit der man Hardware direkt ansprechen kann, wenn
> man das will, geschieht dies stets über virtuelle Ports
> diese aber müssen bereitgestellt werden
> und das wiederrum ist recht komplex
So ein Schwachsinn hoch 3.


> wenn man Hardware nah Programmiert, und das macht Tobi grad, sollte man
> überlegen ob man nicht Java umgehen sollte, C oder ASM sind da sicher
> ergiebiger
Wo tut er das wenn er doch nur ein popeliges Host Programm auf dem PC 
erstellen will? Es ist nicht Hardwarenah nur weil man Schnittstellen des 
PCs verwenden will. Kapier das doch mal.

> wer sagt ihn denn jetzt, das Java hierr den virtuellen Com Port auch
> richtig beddient
Wie schon gesagt, er benutzt gar keinen virtuellen ComPort.


Axel mach ruhig weiter, mit deinen Ausführungen blamierst du dich doch 
nur noch. Du offenbarst dich hier in sehr amüsanter Art und Weise als 
Schwätzer (wegen ellenlanger posts die auch noch falsch sind), und 
besserwisserischer Noob (weil du auf total falschen Aussagen beharrst).

gruß cyblord

von Tobi (Gast)


Lesenswert?

> hmmm, wenn du nun deine Schaltung lange laufen lässt
> kann es nach wochen oder tagen jam al passieren das der Chip abstürtzt
>
> in dem Fall ist ein Watchdog gut
> aber einfluss auf das eigentliche Programm sollte der nicht haben
>
> jetzt kann natürlich auch passieren, das der Chip beim Datentransfer
> über USB abstürzt,
>
> in so fällen ist ein watchdog ja praktisch, aberr wenn geht, umgeh das

ok verscuh ich mal...dasdevice läuft immernoch...bin mal gespannt^^

von Axel F. (pfennig)


Lesenswert?

tja, Cylord
was soll ich dir da sagen, ich weiss das ich dich nie nach rat fragen 
werde ö.Ö

ich nimm dich schon seit was längeren nicht für voll

so sind wir nun schon zwei die einander nicht verstehen......
ich kann damit leben,

ich hoffe du auch

HABEN WIR UNS NUN AUSGESPROCHEN ????

von Cyblord -. (cyblord)


Lesenswert?

Axel F. schrieb:
> tja, Cylord
> was soll ich dir da sagen, ich weiss das ich dich nie nach rat fragen
> werde ö.Ö
>
> ich nimm dich schon seit was längeren nicht für voll
>
> so sind wir nun schon zwei die einander nicht verstehen......
> ich kann damit leben,
>
> ich hoffe du auch
>
> HABEN WIR UNS NUN AUSGESPROCHEN ????

Ich weiß nicht warum du da was persönliches draus machen willst. Ich 
kenne dich nicht. Mir ist es völlig egal wer du bist. Aber wenn du mit 
Inbrunst hier im Forum nachweisbaren Quatsch schreibst, werde ich dich 
korrigieren.

Versuchs doch mal mit Argumenten statt mit deinem kindischen getue um 
irgendwelche Aussprachen. Mir gehts um Fakten. Du verzapfst Unsinn. Mehr 
ist es nicht. Aber du könntest dazulernen und annehmen wenn man dich 
korrigiert.

Der arme Tobi hier hat genug Probleme da musst du ihn nicht noch mit 
deinen seitenlangen Posts in die völlig falsche Richtung jagen.

gruß cyblord

von Axel F. (pfennig)


Lesenswert?

@Cylord,

Ich denke wir haben uns ausgesprochen

siehst du wirklich noch Bedarf zu diskutieren?

ich nicht!

von Jochen (Gast)


Lesenswert?

4 Tage rum(de)buggerei und 200 Posts für eine Fehlersuche im Misthaufen, 
vermutlich noch 6 Tage bis du dich für einen Seriell-Chip entscheidest, 
3 Tage Lieferung... So systematisch wie du da dran gehst, brauchste 
bestimmt noch weitere 2 Wochen bis du die Treiber installiert hast und 
die Baudrate eingestellt hast... Ich frage mich, wie lange du an dieser 
"Abschlussarbeit" hantieren darfst? 3.5 Jahre?

von Spice (Gast)


Lesenswert?

Hast du schon mal "USBView" laufen lassen, wenn der Fehler auftritt?

von Fredsche (Gast)


Lesenswert?

> Axel F. schrieb:

Also wir hier in der Firma finde den Axel toll, wir überlegen ob wir ihn 
zu unserem Maskottchen machen sollen. Der ist so putzig irgendwie.

von Armes Deutschland (Gast)


Lesenswert?

Eine Idee 2 schrieb:
> Simon K. schrieb:
>> Wer unterschreibt eigentlich alles bei deiner Eigenständigkeitserklärung
>> der BA?
>
> Es kann mir keiner erzählen dass wenn er ein Problem während seiner
> Abschlussarbeit hatte, dass er nicht mit Anderen darüber geredet hat.

Und so wird unseren lieben Akademikern die Teamarbeit und Kommunikation 
ausgetrieben.

von Armes Deutschland (Gast)


Lesenswert?

Axel F. schrieb:
> ich nimm dich schon seit was längeren nicht für voll

Und noch so ein Teamworker.

von Axel F. (pfennig)


Lesenswert?

@armes Deutschland
ne, ich hab nur ein Problem mit Leute die mich für doof verkaufen 
wollen, weil ich so Begriffe wie Com Port in Mund nahm, von jenen, die 
offenbar nicht wissen was ein COM Port ist


die dann in Anschluss sich daran  aufhängen und sogar auffällig 
beleidigend werden
solche Leute würden in einen Teamm nicht überleben.....

definition   COM Port --> Communication Port
RS232 ist ein Communications Port
USB ist ein Communications Port(natürlich, oder will jemandd ernsthaft 
behaupten das der Port nicht fürr Kommunikation verwendet wird?)
IRDA....
ach so viele gibt es da.....
wer einigermassen fair mit sich selber ist und sich der Sachlichkeit 
widmet, versteht was ich meine....


die Tatsache das RS232 auch allgemeinsprachlich als COM Port verstanden 
werden (liegt allein daran, das damals auch keine anderen grossartigen 
Ports gab, als sich diese Umgangssprache festigte), ändert nichts daran, 
das der Begriff COM-Port ein Oberbegriff ist, für alle Ports über die 
Kommunikation stattfindet zwischen Zwei Rechner...

aber wen erzähl ich das :)

es ist in Grunde egal. weil jene Leute, von den ich da grad schrieb, das 
mindestens genau so egal ist, sie wollen nicht wirklich helfen
sie vertreiben hier allenfalls ihre Zeit,,, mir sind solche Leute nicht 
sehr wichtig. vor allem stellen sie keinen wirklichen informationellen 
Wert dar,

ich konzentrier mich dann lieber auf jene, die da etwas reflecktierter 
sind... vor allem aber eine positivere Einstellung haben und mit 
konstruktiven Gedanken ihren Beitrag leisten, durch solche Leute, und 
die gibt es in diesen Forum eine Menge, lebt so ein Forum und schafft 
ein allgemeinen Gewinn :)

LG

von Tobi (Gast)


Lesenswert?

Spice schrieb:
> Hast du schon mal "USBView" laufen lassen, wenn der Fehler auftritt?

noch nicht werde ich aber machen hab ich mirauch schon überlegt..mein 
derzeitiges problem ist abe das kein fehler autritt^^^das teil läuft 
seit 10 uhr morgens

von Tjaja (Gast)


Lesenswert?

Tobi schrieb:
> das teil läuft seit 10 uhr morgens

Suuupa, hättest Du auf manche Leute hier früher gehört dann hättest Du 2 
Tage lang schlafen können da Du das Problem dann schon 
gefunden/beseitigt gehabt hättest.

Nebenbei mal: Axel F., bist Du eigentlich Schriftsteller?
Oder wie kommt man auf die Idee, so einen Haufen BULLSHIT zusammen zu 
tippen?

von Tobi (Gast)


Lesenswert?

das teil läuft immernoch. allerdogs hab ich bisher auch keinen interupt 
ausgelöst sondenr nur die pwm verändert. Meine nächste Frage ist nun , 
ich muss ja die Impulse messen und eigentlich habe ich vor die impulse 
kontinurirlich zu messen und parallel dazu einen 8bit counter laufen zu 
lassen der nacheinem overflow und einem vorher selber erstellen 
prescaler die temporärgezählen impulse in das daten register 
schreibt.(ca nach 500ms)

Damit während dieser Zeit der Mikrocontroller nicht blockiert ist würde 
ich natürlich die ISR unterbrechbar machen. nach folgendenm vorbild:

http://www.mikrocontroller.net/articles/AVR-GCC-Tutorial#Unterbrechbare_Interruptroutinen

Nun gibt es aber auch den Weg zu sagen wenm ein impuls kommt starte ich 
einen timer und wenn dann der 2te impuls kommt beende ich den timer
(oder warte bis er überläuft)

welche von den beiden methoden ist die"bessere"?
habt ihr da erfahrungen gemacht

ich persönlich tendiere zur ersten Variante. weil die wie ich finde 
"sicherer"
Kann ich die erste variante so machen`?

von Axel F. (pfennig)


Lesenswert?

@tjajaja

was ist denn an deinen Beitrag bitte kein Bullshit?

soll heissen, den Beitrag hättest du dir auch sparen können
der Aussagewert ist nämlich gleich null
aber du kannst ja wie Cylord einfach mal hingehen und alles von mir 
Geschriebenes mit Falschaussagen, versuchen zu widerlegen....

jemand der zum Beispiel,den Zusammenhang zwischen  einer JVM und Java 
nicht kennt, hat immer leicht reden,, der kann quasi behaupten was er 
will...
Cylord kennt ganz offenbar den Zusammenhang nicht !


du kannst dich ja ihm anschliessen, dadurch wird das von ihm Behauptete 
aber nicht richtiger,

und solange du es nicht besser weisst, solltest du dich mit solchen 
Aussagen wie ;
> Oder wie kommt man auf die Idee, so einen Haufen BULLSHIT zusammen zu
> tippen?
zurückhalten, oder du erklärst, warum es Bullshit ist!

kannst du es nicht!
dann ist es besser wenn du dich zurück hälst

von Floh (Gast)


Lesenswert?

Tobi schrieb:
> Damit während dieser Zeit der Mikrocontroller nicht blockiert ist würde
> ich natürlich die ISR unterbrechbar machen. nach folgendenm vorbild:

Moment.
Du benötigst erst einmal einen Überblick über das, was dein Controller 
alles tun soll. (Mit Zusatzinformation)
Schreib dasdoch mal explizit hin:
- USB-Kommunikation (benötigt Int0 ?)
- PWM-Erzeugnung für den Motor (PWM-Frequenz ?)
- Messen einer Encoderscheibe (maximale Signalrate ?, nutzt Int1 ?)
...

Dann überleg dir, wie du das sinnvoll unter einen Hut bringen kannst.

Wenn du Interrupts unterbrechbar machen willst, hast du irgendwas im 
Zeitmanagment deines Programms übersehen.
Das tut man nämlich im Allgemeinen nicht (auch wenn es geht), da du 
Gefahr läufst, weitere Interrupts nicht mitzubekommen.
:-)

von Tjaja (Gast)


Lesenswert?

Axel F. schrieb:
> @tjajaja
>
> was ist denn an deinen Beitrag bitte kein Bullshit?

Mein Bullshit ist nicht 10 Seiten lang und entsteht nur, weil Du hier 
Bullshit schreibst ;-)

von Axel F. (pfennig)


Lesenswert?

@tja

siehst du, und wieder inhaltloser Schrott von dir

ich hab ja die Vermutung das du Cylord selber bist....


.. aber ist nur eine Vermutung...


also cucu^^

von Wursti (Gast)


Lesenswert?

Jetzt hört doch mal auf zu streiten. Das nervt und der Thread wird 
unendlich lang nur mit sonem Zeug.

von Tobi (Gast)


Lesenswert?

Wursti schrieb:
> Jetzt hört doch mal auf zu streiten. Das nervt und der Thread wird
> unendlich lang nur mit sonem Zeug.

 da muss ich ihm ehrlich gesagt rechtgeebn

von Axel F. (pfennig)


Lesenswert?

stimmt ,, ist wirklich albern,, ich bin jetzt lieb :)

von Marc O. (marcosfs)


Lesenswert?

Profi schrieb:
> Und warum machst Du es dann, Marc, bist Du ein aroganter und präpotenter
> Loser?

Ich mach es nicht. Ich hab mich nur beschwert, weil viele Menschen sich 
hier als Gast einfach nur anmelden, um einen anderen fertig zu machen, 
was ich für richtig kindisch halte, und für ein Zeichen von 
Selbstbewusstseinproblemen. Entweder positiv oder gar nicht. Ob er als 
Schwindler auffliegt ist seine Sache, ein Forum ist kein Gericht.

Axel F. schrieb:
> [zitat von mark o.s.]
> Noch eine kleine Erklärung für diejenigen, die erstmal eine Meinung
> bilden, ohne sich gescheit zu informieren:

Ähm, damit habe ich sicherlich nicht kompetente Personaler gemeint, 
sollte schon selbstverständlich sein. Die werden das wissen ohne meine 
Hilfe zu brauchen. Das habe ich eher für Leute geschrieben, die hier 
rumgepostet haben, nicht um zu helfen, sondern nur um den Tobi L. fertig 
zu machen.

Axel F. schrieb:
> der Master ersetzt das Dipl Ing (UNI)
>
> Bedeutet
>
> Dipl Ing an der Universität erworben war noch nie in allen Zeiten das
> selbe wie ein dipl Ing welches an der FH erworben wurde
>
>
> deine Aussage die du triffst, qualifiziert dich in sofern als
> Realitätsfern....


Ich hab lediglich gesagt: ein Bachelor ist NICHT äquivalent zu einem 
ehemaligen Dipl.-Ing.-Abschluss, sondern der Master ist es erst. Mehr 
habe ich nicht gesagt, und diese Information gilt laut Aussagen von 
Professoren von vielen Universitäten, und man kann's auch ziemlich 
einfach von zuverlässigen Quellen lesen. Und wie ich es mitbekommen 
habe, das mit dem Bachelor + Master = Diplom haben nicht nur die 
Professoren in meiner Uni gesagt, sondern aus anderen Unis, mit deren 
Studenten ich durch Praktika und Messen Kontakt habe.

Ob das für FHs zutrifft weiß ich nicht, damit kenne ich mich nicht aus, 
und die Aussage hat sich darauf nicht bezogen. Sorry wenn das nicht klar 
war: Deutsch ist meine 3. Sprache und ich kann mich nicht so effizient 
ausdrücken manchmal. Dass Unis eine gewisse Tiefgründigkeit besitzen, 
die die FH nicht besitzt, lässt sich ziemlich oft hören und lesen, und 
ich bestreite das nicht, mir ging's nur darum, dass man an der UNI erst 
den Master haben sollte, um sich mit einem ehemaligen Dipl.-Ing. zu 
vergleichen, und deswegen sollten hier manche Leute nicht rummotzen, 
dass der Bachelor-Abschluss heißt, dass Deutschland "arm" sein sollte 
oder so, weil der Dipl.-Abschluss schwerer war. Die beiden lassen sich 
eben nicht vergleichen, war mein Punkt.

von Axel F. (pfennig)


Lesenswert?

> Ich hab lediglich gesagt: ein Bachelor ist NICHT äquivalent zu einem
> ehemaligen Dipl.-Ing.-Abschluss

ja aber genau das ist doch der Punkt !

Dipl Ing. ist nunmal nicht gleich Dipl. Ing.
war es auch noch nie
es gab schon immer die Ausbildung an der FH so wie die Ausbildung an der 
Uni,
in beiden Fällen hast du hinterher ein Dipl. Ing in der Tasche gehabt
nur!
das eine war von der FH das andere von der Uni

nach der Reform Ba/Ma gibt es nun an beiden Schulformen den Dipl. Ing 
nicht mehr

was ist nun geschehen
in Grunde, etwas das vollkommen hinfällig war

dieser Unterschied, FH vs. Uni ist aufgehoben worden

weil!
das man an Unis tiefgründiger studiert, hmmm, das ist etwas, das man 
sich gerne einredet
genau so, das man grundlegend an Fachhochschulen eine umfangreiche 
praxisnahe Ausbildung erhält, das stimmt so nämlich auch nicht generelle

es kommt nunmal doch auf die Schule selbst an, ...
hier sei somit an alle angehenden Ingenieure gesagt, hier genau zu 
schauen und zu vergleichen!

BA/MA hat in meinen Augen, eines klar erreicht!
es wird nicht mehr zwischen sogenannter guter und sogenannter besserer 
Ausbildung unterschieden, wo alleine der Abschluss dies verdeutlicht, 
völlig unabhängig davon, wie die reale Ausbildung nun war.

wie auch immer, es spielt keine Rolle, jeder ist seines eigenen Huf's 
Schmied

@tobi
was macht das USB Projekt?

von Matthias S. (Firma: matzetronics) (mschoeldgen)


Lesenswert?

@Tobi: Abhängig von der Encoderscheibe überlege diesen Ansatz zur 
Drehzahlmessung: Bei einem Encoderpuls löse einen Interrupt aus, in dem 
du nur eine Variable inkrementierst. Das geht schnell und belegt so gut 
wie keine Resourcen.
Ein 1-Sekundentimer liest dann in seinem Interrupt diese Variable und 
speichert sie als Ergebnis der Drehzahlmessung. Vor dem Verlassen des 
TimerIRQ setzt er die Zählvariable noch auf 0.

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
Noch kein Account? Hier anmelden.