Bitmuster finden

Hallo Marcel,

Oder eben ein Micro Controller mit mindestens vier 8bit Ports. Sollte nicht mehr als zwei fuffzig kosten. Plus Zeit zum Programmieren, aber das wird kein besonders kompliziertes Programm.

Gruesse, Joerg

formatting link

Reply to
Joerg
Loading thread data ...

Ich bin zwar sonst aus nostalgischen Gründen ein Verfechter von TTL wann immer praktikabel, aber hier ist es wirklich keine gangbare Lösung. Ich hab es mal durchgerechnet und bin auf (n-1)*n/2 AND Gatter mit je 2 Eingängen + je (n-2) OR, NOT und nochmals AND mit jeweils mehr Eingängen. gekommen. Selbst in Wired-AND Technik bräuchtest du also ~ n² Dioden.

Wenns Echtzeit sein soll ist Mawins Lösung wohl die einzig brauchbare diskrete Lösung, sonst ist die Lösung mit Registern und Zähler von Jörg die einfachste, bei schnellem Takt immer noch quasi-Echtzeit...

Mfg Moritz

Reply to
moritz erbs_löh

formatting link

Muß man halt ein Carry-Datenwort weitergeben das die Bits die linksbündig am Rand kleben ( 0 , 1-12. >12 ) weitergibt, das nächste ROM "addiert" sie zu denen die rechtsbündig kleben. Damit die Struktur regulär ist ( man also nur ein ROM macht und das kaskadiert werden kann ), werden auch 2 Bits "out" weitergegeben, aber erst in der letzten Stufe verwertet. Dito werden die Carry-Eingänge in der ersten Stufe auf Null gelegt.

Manuell wird mans bestimmt nicht tun. Man schreibt ein Programm das tut. Ich verwurstel öfters FLASH als Logik-Ersatz.

MfG JRD

Reply to
Rafael Deliano

Vielen herzlichen Dank fuer die schnellen und zahlreichen Antworten! Jetzt hab ich erst mal genug Material um mich einzuarbeiten und fuer die geeignetste Loesung zu entscheiden. Ich werd Euch dann gerne in- formieren, wie ich das ganze realisiert habe und obs funktioniert wie geplant. :-)

Ciao,

Horst

--
                             Horst  Laschinsky
        Universitaet Erlangen-Nuernberg - Physikalisches Institut I
 Erwin-Rommel-Str. 1, Room: 209, 91058 Erlangen - Tel: ++49 9131 85-27062
       http://www.antares.physik.uni-erlangen.de/~htlaschi/index.html
Reply to
Horst Laschinsky

Hallo,

wenn Du nur wissen m=F6chtest wieviele Sensoren angesprochen haben, also ein 1 Signal liefern, dann summiere doch einfach deren Level. Alle angesrochen =3D 5V und lies =FCber einen AD-Kanal ein. Ich habe das mal bei einer Ger=E4testeuerung so gel=F6st, weil nur noch ein AD-Eingang vorhanden war. Bei 32 verschieden Werten ist die Aufl=F6sung wirklich kein Problem.

MfG Manfred Glahe

Reply to
Manfred Glahe

Georg Seegerer schrieb:

Hallo,

man mu=DF es halt vern=FCnftig in parallele und kaskadierte Proms aufteil= en. Etwa so: zwei Proms mit 16 Adressleitungen parallele, die bestimmen=20 jeweils wieviele Eing=E4nge gesetzt sind als Zahl von 0 bis 16 am Ausgang= ,=20 daf=FCr braucht man dann je 5 Bit. nicht 4 wegen der 16. Dann im n=E4chsten Schritt aus den zwei mal 5 Signalen die gew=FCnschten =

Ausgangssignale erzeugen. F=FCr die Bestimmung "in Reihe" mu=DF man noch etwas knobeln, da werden n= och=20 zus=E4tzliche =DCbertragssignale n=F6tig sein. So kann es jedenfalls mit 3 Proms in vern=FCnftiger Gr=F6sse gehen.

Die Bitmuster f=FCr die Proms mu=DF man allerdings per Programm erzeugen,= =20 eintippen w=E4re unsinnig.

Bye

Reply to
Uwe Hercksen

Bei Controller ( anders als bei PLD/FPGA ) kann man selber bestimmen wie man sich bezüglich Geld & Lernkurve legt:

  • Wenn man sich hier einen rohen AVR-Controller und die kostenlose Software aufschwatzen lässt liegt man pekuniär sehr günstig aber hat etwas Einarbeitung vor sich.
  • Bei Varianten wie dem schon genannten BASIC-Tiger oder für FORTH z.B.:
    formatting link
    hat man etwas höhere Beschaffungskosten aber bequemeres Werkeln.

Die Version mit den 29F040 macht Sinn, wenn eine Lösung mit

1usec Geschwindigkeit an der Applikation irgendwas deutlich verbessert. Vom Entwicklungsaufwand liegt sie höher als Controller. Der reagiert vermutlich in
Reply to
Rafael Deliano

noch

Das ist ja nun nicht weiter kompliziert:

Bei den ersten beiden ROMs geben 4 Bits aus, wie lange die Reihe _an der Sto=DFstelle_ zum Nachbar-Rom sind. Zwei Bits geben (codiert) aus, welche=

l=E4ngste Reihe in der jeweiligen H=E4lfte erkannt wurde.

Das dritte ROM "berechnet" und klassifiziert intern aus den beiden

4-Bit-Eingaben die L=E4nge der Reihe die sich =FCber die Sto=DFstelle der=

beiden vorherigen ROMs ersteckt. Dann wird von den drei Ergebnissen (2 mal die l=E4ngste Reihe in jeder H=E4lfte und einmal die errechnete L=E4n= ge =FCber die Sto=DFstelle) die gr=F6=DFte ausgegeben.

Es reichen 4 Bit f=FCr die L=E4nge an der Sto=DFstelle deswegen, weil die=

l=E4ngste Teilkette in einer H=E4lfte nur 12 Bits haben kann, weil ab dem=

  1. Bit schon die h=F6chste Klassifiaktion erreicht ist. Da die andern zwei Bits der ersten Roms aber schon die l=E4ngste Reihe in einer H=E4lft= e (die 16 Bits breit ist) erkennen, "gewinnen" diese Bits im nachfolgend ROM immer.

Anstatt Flash w=FCrde ich OTP Eproms vorschlagen. Sind deutlich g=FCnstig= er. Das dritte ROM muss nur eins mit 12 Adressleitungen sein.

Reply to
Michael Roth

Michael Roth schrieb:

iger.

Hallo,

an Eproms hatt ich eh gedacht. Zum probieren sind aber UV l=F6schbare=20 praktischer. Zwei Roms mit 16 Adressleitungen und 8 Bit Daten und noch eines mit 12=20 Adressleitungen und 8 Bit, das ist doch ein recht geringer Aufwand.

Allerdings sollte man auch =FCberlegen was mit asynchronen=20 Eingangssignalen von den Sensoren passiert, ob es da zu Glitches und=20 Races kommt. Dagegen k=F6nnte man mit Registern vor und hinter den Roms=20 vorgehen die mit einem passenden Takt versorgt werden. Hilft aber auch=20 nicht mit absoluter Sicherheit gegen metastabile Zust=E4nde, aber die=20 Wahrscheinlichkeit wird deutlich kleiner.

Bye

Reply to
Uwe Hercksen

=20

=20

Geht das Teil wirklich nur f=C3=BCr die F2xx oder ist das eine Frage der (ggf. nicht existierenden) Tochterplatine? Ich kenne bisher nur die F1xx mit USB Programmer/JTAG.

Bis 4k Code.

Dann gibt es noch die TI Code Composer Essentials bis 8K (wahrscheinlich erzeugt der Compiler doppelt so gro=C3=9Fen Code ;-). Besonders geeignet= f=C3=BCr Eclipse-J=C3=BCnger. Irgendwie lief da aber das Debuggen nicht immer rund= .

Und nen gcc, bis der Speicher voll ist. Den habe ich bisher aber nicht probiert.

Gru=C3=9F, Enrik

Reply to
Enrik Berkhan

Hallo Enrik,

M.W. nur fuer F2xx.

Fuer C. Assembler ist m.W. unbegrenzt.

In Spezialistengruppen wurde darueber gelegentlich Unmut laut, kann sich aber gelegt haben.

Ich kenne auch nur IAR, aber das reicht mir voellig. Die meisten meiner Sachen werden eh Assembler benoetigen und dafuer braucht man keine Ledersitze.

Gruesse, Joerg

formatting link

Reply to
Joerg

er

xx

Ja, sieht tats=C3=A4chlich so aus. Die F2xx haben wohl einfach zu wenige = Pins f=C3=BCr ein "vollduplex JTAG".

In zwei Wochen wiess ich wahrscheinlich mehr ... :)

IIRC wird die Begrenzung im Linker nochmal gecheckt. Wenn man aber bedenkt, wieviele MSPs sowieso nicht mehr Speicher haben, ist das f=C3=BC= r kleine Projekte echt kein Hindernis. Auch f=C3=BCr meine AES-Implementier= ung hat es inklusive Tabellen und ausgerollten Schleifen gereicht, nur war dann nicht mehr viel f=C3=BCr was anderes =C3=BCbrig ...

Eine weitere Enschr=C3=A4nkung hat die Kick-Start-Version noch: der Compi= ler erzeugt keine Assemblerlistings. Das ist n=C3=BCtzlich, um die Verwendung= der IAR-Steueranweisungen f=C3=BCr den Profiler etc. zu lernen, bekommt man a= ber auch so hin. (Den disassemblierten Code selbst kann man sich nat=C3=BCrli= ch wunderbar im Debugger ansehen.)

Gru=C3=9F, Enrik

Reply to
Enrik Berkhan

Oh, das klingt gut. Werd ich mir mal naeher zu Gemuete fuehren. Vielen Dank fuer den Tip.

Nee, wenn schon, dann vi und gcc. :-)

Ciao,

Horst

--
                             Horst  Laschinsky
        Universitaet Erlangen-Nuernberg - Physikalisches Institut I
 Erwin-Rommel-Str. 1, Room: 209, 91058 Erlangen - Tel: ++49 9131 85-27062
       http://www.antares.physik.uni-erlangen.de/~htlaschi/index.html
Reply to
Horst Laschinsky

Hallo Enrik,

Ich gehe auch zur TI Session, aber die ist bei uns erst am 25.Mai. Da will ich auch (mal wieder) die Preisstruktur ansprechen. Bisher ist bei mir noch jede MSP430 Implementation daran gescheitert und die Designs sind am Ende wie ueblich analog geworden. Manchmal scheint es den Digitalisten an der Vorstellung zu mangeln, wie billig analoge Loesungen inzwischen geworden sind.

Gruesse, Joerg

formatting link

Reply to
Joerg

Hallo Horst,

Neben TI kann man Header Boards zum Probieren auch ganz guenstig von Olimex bekommen.

Gruesse, Joerg

formatting link

Reply to
Joerg

Ah, sehr schoen. Weisst Du zufaellig, wie lang eine Lieferung nach Deutschland dauert? Oder kennst Du Bezugsquellen hier? Die Ausbeu- te von Google ist leider ziemlich spaerlich, zumindest wenn man nach der Typenbezeichnung sucht.

Auf jeden Fall nochmal vielen Dank fuer den Tip. Ich denke, die uC Loesung ist doch das einfachste und der MSP430 scheint gut geeig- net zu sein.

Ciao,

Horst

--
                             Horst  Laschinsky
        Universitaet Erlangen-Nuernberg - Physikalisches Institut I
 Erwin-Rommel-Str. 1, Room: 209, 91058 Erlangen - Tel: ++49 9131 85-27062
       http://www.antares.physik.uni-erlangen.de/~htlaschi/index.html
Reply to
Horst Laschinsky

Argl. Manchmal sollte man einfach die Augen aufmachen und nicht gleich um Hilfe rufen. Auf der Olimex-Seite is ja sogar ein deutscher Distributor verlinkt

formatting link

Ciao,

Horst

--
                             Horst  Laschinsky
        Universitaet Erlangen-Nuernberg - Physikalisches Institut I
 Erwin-Rommel-Str. 1, Room: 209, 91058 Erlangen - Tel: ++49 9131 85-27062
       http://www.antares.physik.uni-erlangen.de/~htlaschi/index.html
Reply to
Horst Laschinsky

Hallo Horst,

Wollte ich gerade raeuspernd anmerken ;-)

Ich habe auch ueber Disti gekauft (Sparkfun), aber Distis haben nicht unbedingt alles von Olimex. AFAIK dauert direkter Versand auch nicht laenger als 1-2 Wochen. Das haben Leute aus Nordamerika gesagt und Ihr seid ja noch naeher dran.

Gruesse, Joerg

formatting link

Reply to
Joerg

Hallo zusammen,

| Eine andere Idee w=E4re, die Bits durch ein Schieberegister zu = schieben und=20 | die maximale Pulsl=E4nge am Ausgang zu messen, z.B. mit Hilfe von = Monoflops.

Was in 10 ms problemlos mit einem fast schon beliebigen =B5C machbar = sein sollte. Gut, gen=FCgend Portpins sollte er haben...

Marte

Reply to
Marte Schwarz

4 Schieberegister (PISO) und ein 5bit Zähler und etwas "Glue"-Logik. Du schiebst die Daten seriell raus und bei einer '0' wird der Zähler zurückgesetzt, ansonsten hochgezählt. Das Maximum des Zählerstand mußt du dann irgendwie speichern, denn es könnten ja lauter '1' und am Schluß eine '0' kommen. Ein Problem habe ich aber: was ist, wenn 8 Einsen, dann Nullen und 10 Einsen kommen?
--
Dipl.-Inform(FH) Peter Heitzer, peter.heitzer@rz.uni-regensburg.de
HTML mails will be forwarded to /dev/null.
Reply to
Peter Heitzer

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.