mikrocontroller.net

Forum: FPGA, VHDL & Co. Diese Schaltung möglich?


Autor: Lars (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Guten Tag,

ich wollte fragen ob man soetwas mit einem µC realisiren kann.

Diese Logig möchte ich gerne mehrmals in ein µC bringen. Könnten dieser 
auch parralel laufen also das diese funktion im gleichen moment 
passiert??

Ich wäre froh wenn jemand mir helfen könnte.



MfG


Lars


Logic:

if Eingang1=1
(
    Ausgang2=1
    Zeit ein paar µs
    Ausgang3=1
    Zeit ein paar µs
    Ausgang1=1
)

if Eingang1=0
(
    Ausang2=0
    Zeit ein paar µs
    Ausgang3=0
    Zeit ein paar µs
    Ausgang1=0
)



Autor: Francesco Na (franceso-)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Dies ist problemlos möglich, jedoch ist die Auflösung ca. 1-10uS, bei
mehreren solcher Logiken in parallel. 1 (vielleicht auch bis zu 0.125uS)
bei Verwendung von einem externen Quarz, bis zu 10uS bei dem internen 
Osc.

Autor: Lars (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das hört sich doch schon mal echt gut an.

Was empfelen sie mir denn für einen Controller? Ich kenne mich auf dem 
µC Gebiet überhaupt noch nicht aus.

Ich würde gerne 8 Logiken im einem µC unterbringen.

Autor: markus (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
diese logig ist wie erwähnt recht einfach mit einem µController zu 
lösen...
parallel kann das nicht passieren, allerding kann das im µS bereich 
passieren

eine andere möglichkeit wäre es, das prorgamm mit einer programmierbaren 
logig zu realisieren, dann würden die reaktionen in nano-sekunden 
bereich statt finden.

für dieses einfache programm kann man fast jeden µController benutzen, 
der auf dem markt vorhanden ist. empfehlen könnte ich einen 8051 z.B. 
den Atmel 8252

Autor: Francesco Na (franceso-)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Soweit ich dich verstehe, 4(io)x8(logic)=24 pins.
Weiters ist es noch eine Preisfrage (inkl Layoutfläche), sowie ev. was 
du sonst noch machen möchtest, mit dem Micro.

Autor: Lars (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Am wichtigsten ist mir eigendlich das ich die Wartezeit auch länger (1s) 
machen kann und trotz dessen die anderen logiken weiter funktionieren, 
also paraller betrieb.

Und kostengünstig muss es sein da ich es in einem Modelbahnverein 
einsetzten möchte.


MfG


Lars

Autor: akw (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
also 4 mal 8 gibt bei mir 32 und da wirds mit nem mega32 oder so schon 
sehr knapp ^^

Autor: der mechatroniker (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Bei längeren Zeiten (Bereich einige 10 µsec bis beliebig lang), so daß 
etwas Zeit zum Rechnen dazwischen übrigbleibt, gehts natürlich schon mit 
dem Parallelisieren.

Die Ausgangstripel haben ja jeweils 5 Zustände:

0 - Ausgänge aus
1 - Ausgang 2 ist gesetzt, Timer abwarten
2 - Ausgang 3 ist gesetzt, Timer abwarten
3 - Ausgänge ein
4 - Ausgang 2 ist gelöscht, Timer abwarten
5 - Ausgang 3 ist gelöscht, Timer abwarten

Übergangsbedingungen sind jeweils die positiven/negativen Flanken der 
Eingänge (bewirken Setzen/Löschen von Ausgang 2 und Übergang in Zustand 
1 bzw. 4) sowie das Ablaufen der Zeitintervalle (bewirken die Übergänge 
1->2, 2->3, 4->5 und 5->0).

Array über 8 char-Variablen, darin wird jeweils der aktuelle Zustand 
gemerkt. Dann in einer Endlosschleife jeweils Übergangsbedingung 
abgefragt, daraufhin der Zustand gewechselt oder nicht, und dann sofort 
um den nächsten Ausgang gekümmert. Nur mit der Mehrfachnutzung der Timer 
mußt du kreativ sein. Wenn die Anforderungen an die Genauigkeit Timing 
nicht zu hoch sind (Modellbahn), kann man hier aber auch was basteln 
(z.B. Timer in recht schneller Folge Interrupt auslösen lassen, darin 8 
Software-Timer, falls diese gerade laufen sollen, weiterzählen und auf 
Ablauf des Zeitintervalls prüfen).

Autor: Jupp (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Nimm einfach standard Logik Gatter (C-Mos).
Da haste IO´s nach Wahl. Für solche einfachen Anwendungen ist ein 
Controller recht Overdosed.

Autor: Lars (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Und wie mach ich das bei Gattern mit der Zeit am einfachsten??

Autor: Francesco Na (franceso-)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wegen Micro, kostenguenstig wuerde ich dir folgendes Empfehlen
Pic12f505 fuer jeweils 3x logic (12 IO).
Einer kostet ein Euro und braucht keinen externen Quarz, nur einen 
Entkoppelungskondensator (Preis Farnell)
Sonst, ein Mega16, kostet 2.95 Euro oder ein  ATMEGA8535, kostet 2.75 
Euro,
beide brauchen ein Quarz, sowie 3 Kondensatoren, also unter 4 Euro, und
haben 32 I/O's. (Preis Pollin). Ich wuerde den Mega16 Empfehlen.

Autor: Francesco Na (franceso-)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
TTL-IC geht, das weiss ich, kostet dich aber mehr, als mit einem Micro,
und du bist nicht so flexibel, beim Micro kannst du die Zeit einfach
aendern, oder SW-Entprellung machen, nicht so einfach, bei der HW was
umzustellen.

Autor: Lars (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Noch ne frage zu diesem Pic12f505 kann der Parallebetrieb also 
threading?
Und was muss man alles haben um den zu Brennen?


MfG


Lars

Autor: Francesco Na (franceso-)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Der Mega16, mit Quarz kann eine Auflösung von 1uS haben, für 8 logiken 
gleichzeitig, der pic hat eine von 10uS, ohne Quarz für 3 logiken.
Ob 3 oder 8 logiken, der Algorithmus ist der gleiche, und threading 
braucht
es auch nicht. Threading können beide, würde ich aber nicht verwenden.
Zum Programmieren des AVR braucht man ein paar dioden, normale + Zener.
Beim Pic braucht man eine 12V Spannung, sowie 2xWiederstände+
und eine Diode.

Autor: Lars (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hat jemand evt einen Schaltplan für so einen Programmierer?

Autor: Francesco Na (franceso-)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Pic oder AVR ?,

Autor: Lars (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich wollte meine Schaltung mal mit dem Mega16 testen, also AVR.

Wie viel mA kann eigendlich so ein µC schalten reicht es für ein Relais?


Autor: Francesco Na (franceso-)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Die AVR werden über Jtag programmiert, da müßtest du als FPGA Entwickler
eigentlich schon die nötige HW haben.
SW kannst du z.B. hier runterladen.
http://elm-chan.org/works/avrx/report_e.html

Saft für ein normales Relais hat er nicht, eventuell für ein 
reed-relais.
Dazu wird gerne ein ULN2001/3 oder ein ULN2801/3 genommen. Dieses 
Bauteil
hat auch die Schutzdiode schon integriert. die 2001/3 hat 7 Darlington
driver, der 2801/3 8.  Kostenpunkt,aus dem Kopf ca. 
0.4(2001/3)-0.8(2801/3) Euro.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [vhdl]VHDL-Code[/vhdl]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.