-         

Ergebnis 1 bis 8 von 8

Thema: Zwei ist mehr als Ein

  1. #1
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    01.07.2008
    Ort
    Renkum
    Alter
    72
    Beiträge
    128

    Zwei ist mehr als Ein

    Anzeige

    Nachdem ich meine C-control Pro wie empfolen ins Regal gelegt habe, ist es jetzt Zeit fuer ein neues Projekt. Der Pro soll ersetz werden durch 2 Mega88er, bzw Mega8.

    Damit gibt es:

    2 mal nehr Ports
    2 mal mehr Timern

    Daneben kann das Programm besser strukturiert werden, zB RC5, PWM, Uhr und andere Zwecke brauchen eine Timer. Kommunikation zwischen die beiden AVR's kan relativ niedrig bleiben, da es nur um Werte von und zu RC5, PWM usw handelt. Ich denke dabei an die SPI.

    'Die' oder 'der' bleibt schwierig fuer Hollaender

    Wer sagt etwas dazu?

    Gruss,

    Edblum

  2. #2
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    19.02.2005
    Alter
    29
    Beiträge
    830

    Re: Zwei ist mehr als Ein

    Zitat Zitat von Edblum
    'Die' oder 'der' bleibt schwierig fuer Hollaender
    Wer sagt etwas dazu?
    weder noch, es muss "zwischen DEN beiden AVR's" heißen

    denke zwar nicht dass du dir das als antwort erhofft hast, konnt mich aber nicht zurückhalten

    was möchtest du du bauen dass du so viele ports und timer/pwm funktionen brauchst?
    der ansatz die aufgaben zu verteilen ist gut, allerdings kannst du nicht immer auf anhieb sagen wer gerade mist baut, da viel mehr möglichkeiten dazu gegeben sind (code komunikation timeing der beiden...).

    mfg clemens
    Neun von zehn Stimmen in meinen Kopf sagen ich bin nicht verrückt. Die andere summt die Melodie von Tetris...

  3. #3
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    01.07.2008
    Ort
    Renkum
    Alter
    72
    Beiträge
    128

    Re: Zwei ist mehr als Ein

    Zitat Zitat von user529
    Zitat Zitat von Edblum
    'Die' oder 'der' bleibt schwierig fuer Hollaender
    Wer sagt etwas dazu?
    weder noch, es muss "zwischen DEN beiden AVR's" heißen

    denke zwar nicht dass du dir das als antwort erhofft hast, konnt mich aber nicht zurückhalten
    Jaja

    Zitat Zitat von user529
    was möchtest du du bauen dass du so viele ports und timer/pwm funktionen brauchst?
    der ansatz die aufgaben zu verteilen ist gut, allerdings kannst du nicht immer auf anhieb sagen wer gerade mist baut, da viel mehr möglichkeiten dazu gegeben sind (code komunikation timeing der beiden...).

    mfg clemens
    Ich möchte gerne bis 3 mal BeleuchtungsLED's steuern. Dazu brauche ich 3 mal PWM (Timer) Das ganze möchte ich mit Rc5 fernsteuern (Timer). Ich möchte auch eine (DCF)RTC-Uhr, der zB eine Lichtquelle einschaltet. Weckuhr (Timer).

    Für viele Zwecke kann man nur ein bestimmte Timer nützen. Diese ist dan 'besetzt'. Und ich bin sicher dass es Zwecke hinzu kommen

    Zwei Mega8 sind billiger als eine Mega128 und einfacher ein zu bauen (kein SMD).

    Gruss

    Edblum

  4. #4
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    20.08.2008
    Ort
    Kandel
    Alter
    29
    Beiträge
    1.220
    @Edblum,

    Dir wird vermutlich ein Mega88 oder 168 vollkommen reichen.
    Du nimmst einfach einen Timer und machst dann Soft-PWM, für drei LEDs braucht man weder einen M128 noch zwei M8, die langweilen sich nur!

    Macht ein Timer. Für RC5 schenke ich dir einen Timer, wenngleich ich nicht weiß, ob man da überhaupt einen braucht.
    Für die Weckuhr kannst du den PWM-Timer evtl. recyclen.
    Für die RTC hättest du dann den dritten Timer frei.

    Je nach dem, was du genau vorhast, wirst du evtl. noch weniger Material brauchen.

    mfG
    Markus

  5. #5
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    01.07.2008
    Ort
    Renkum
    Alter
    72
    Beiträge
    128
    Zitat Zitat von markusj
    @Edblum,

    Dir wird vermutlich ein Mega88 oder 168 vollkommen reichen.
    Du nimmst einfach einen Timer und machst dann Soft-PWM, für drei LEDs braucht man weder einen M128 noch zwei M8, die langweilen sich nur!

    Macht ein Timer. Für RC5 schenke ich dir einen Timer, wenngleich ich nicht weiß, ob man da überhaupt einen braucht.
    Für die Weckuhr kannst du den PWM-Timer evtl. recyclen.
    Für die RTC hättest du dann den dritten Timer frei.

    Je nach dem, was du genau vorhast, wirst du evtl. noch weniger Material brauchen.

    mfG
    Markus
    Und das alles in Bascom?

    Danke für die Antwort.

    Gruss

    Edblum

  6. #6
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    20.08.2008
    Ort
    Kandel
    Alter
    29
    Beiträge
    1.220
    Auch in Bascom ... man muss nur kreativ sein.
    Bedenke immer, du programmierst nicht Bascom, du programmierst einen AVR mittels Bascom.
    Bascom selbst bietet dir diverse Abkürzungen an (Config-Befehl etc.) an, die Einfachheit kostet dich aber einen Teil des Funktionsumfangs.

    Du solltest nicht denken: Ich brauche X-Zeitquellen -> Hardware dafür kaufen, sondern: Ich habe X-Zeitquellen -> Was kann ich alles damit machen?

    Es gibt hier irgendwo Sourcecode, bei dem ein einziger ATMega8 (wenn ich mich recht entsinne) bis zu 20! Servos ansteuert (Wenngleich in ASM).
    So viele Timer gibts in keinem ATMega der Welt. Die Lösung ist Soft-PWM, für jeden Ausgang gibt es eine Zählervariable, die Interruptroutine zählt diese hoch und toggelt bei Überlauf einen Pin.

    Du hast eine Interruptroutine, die dir konfigurierbare Zeitbasis bietet, darin kannst du dann für verschiedene Dinge Variablen hochzählen um so verschiedene individuelle Auslösezeiten zu bekommen.
    Wenn die darauf erfolgende Aktion recht kurz ist, kannst du sie direkt abarbeiten, längere Kommandos sollten von der Hauptschleife durchgeführt werden. (ISR setzt Variable, Hauptschleife pollt Variable).

    Evtl. funktioniert ein Teil der Bascom-Funktionen nicht ohne Modifikationen mit dieser Programmstruktur, aber wenn man nicht selbst Wege sucht, wird sich dein Atmel immer langweilen.

    Ich hätte die Herausforderung in diesem Projekt evtl. sogar darin gesehen, das ganze auf einen Tiny2313 zu quetschen, aber das lass mal besser bleiben

    mfG
    Markus

  7. #7
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    21.06.2008
    Beiträge
    113
    Zitat Zitat von markusj
    Es gibt hier irgendwo Sourcecode, bei dem ein einziger ATMega8 (wenn ich mich recht entsinne) bis zu 20! Servos ansteuert (Wenngleich in ASM).
    So viele Timer gibts in keinem ATMega der Welt. Die Lösung ist Soft-PWM, für jeden Ausgang gibt es eine Zählervariable, die Interruptroutine zählt diese hoch und toggelt bei Überlauf einen Pin.
    Das geht auch mit BASCOM, und zwar mit dem Befehl
    Code:
    Servo(1-18)=???
    Allerdings ist die routine nicht so gut...

    MfG

  8. #8
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    20.08.2008
    Ort
    Kandel
    Alter
    29
    Beiträge
    1.220
    Is ja langweilig, selbst ist der Mann

    Ich mag keine schwarzen Boxen von denen ich nicht verstehe was darin passiert. So n' Soft-PWM hat man schnell und angepasst selbstgeschrieben und ist dann möglicherweise sogar effektiver wie die generischen Bascom-Builtins.

    mfG
    Markus

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •