Einzelnen Taktimpuls erzeugen ?

Rudi54

Neues Mitglied
20. Mai 2015
11
0
1
Sprachen
Ein freundliches Hallo in die Runde !

Bin wieder mal mit mehreren HC595 in den Gängen.
Um die Bit's in das Latch zu übernehmen hatte ich immer:
Set Le
Reset Le
Jetzt habe ich noch einen IC4017 mit dabei. Soll bei jeder
For / Next Schleife einen weiter springen. Also wieder:
Set Ta4017 ' Takt 4017 + 1
Reset Ta4017

Gibt es da keine schönere Variante ?
Gruß an alle
Rudi54
Programiersprache Bascom
 
Was meinst Du mit "schönere Variante"?
Das Bein muß Hi gesetzt werden, und anschließend Low. Da Die entsprechenden Register direct bit accessible sind, wird das am sinnigsten je mit einer ein-Takt-Instruktion umgesetzt (Bascom macht das mit Set und Reset, wenn möglich).
Natürlich kannst Du Dir dafür 'n Makro oder 'ne Subroutine oder sowas schreiben, aber im resultierenden (Maschinen)Code wird dadurch nichts besser.
Folgen Set und Reset direkt aufeinander, hast Du einen Takt lang'n high-Pegel, bei 20MHz wäre das ein 50ns-Strobe.
 
Danke Lotada für die schnelle Andwort
Ist mir nur beim Prog. schreiben eingefallen.
Hab dann nachgeschaut bei zB. Pulseout.
ist aber was anderes.
Hätte aber irgendwie gut ausgesehen:

Le Pulseout '(nur eine Zeile)

Na, dann machen wir es halt so wie immer.

Mit freundlichen Grüßen
Rudi54
Programiersprache Bascom
 
Schau mal ins Datenblatt des verwendeten Controllers, da wirst Du folgendes finden (Link):
Erstes Bild-> zwei Bits regeln den Zustand des Beins. Das Bit im Datenrichtungsregister (DDR) schaltet den Ausgangstreiber an oder eben nicht, das Port Latch Register(bit) legt dann ggf den tatsächlichen Pegel fest (oder aktiviert den internen Pullup).
(Bei einigen neueren Tinies ist das mit den Pullups anders, aber das spielt hier keine Rolle)

Mit Set setzt Bascom einfach ein Bit in einem Byte oder (hier) einem Register; Reset löscht es. Wie schon geschrieben nutzt Bascom dafür wenn möglich ein-Takt-Instruktionen.

Deine eine Zeile sind aber in Wirklichkeit mehrere/viele Zeilen Instruktionen, die sich in irgendeiner Subroutine in irgendeiner Bibliothek oder so verstecken.
Wenns also so'ne Latch-Strobe-Funktion in Bascom nicht gibt, kannst Du sie Dir ja selbst schreiben.
 

Über uns

  • Makerconnect ist ein Forum, welches wir ausschließlich für einen Gedankenaustausch und als Diskussionsplattform für Interessierte bereitstellen, welche sich privat, durch das Studium oder beruflich mit Mikrocontroller- und Kleinstrechnersystemen beschäftigen wollen oder müssen ;-)
  • Dirk
  • Du bist noch kein Mitglied in unserer freundlichen Community? Werde Teil von uns und registriere dich in unserem Forum.
  •  Registriere dich

User Menu

 Kaffeezeit

  • Wir arbeiten hart daran sicherzustellen, dass unser Forum permanent online und schnell erreichbar ist, unsere Forensoftware auf dem aktuellsten Stand ist und der Server regelmäßig gewartet wird. Auch die Themen Datensicherheit und Datenschutz sind uns wichtig und hier sind wir auch ständig aktiv. Alles in allem, sorgen wir uns darum, dass alles Drumherum stimmt :-)

    Dir gefällt das Forum und unsere Arbeit und du möchtest uns unterstützen? Unterstütze uns durch deine Premium-Mitgliedschaft!
    Wir freuen uns auch über eine Spende für unsere Kaffeekasse :-)
    Vielen Dank! :ciao:


     Spende uns! (Paypal)