Hello, Guest the thread was called17k times and contains 286 replays

last post from Ruudi at the

Der CBM 64 und Atom Uhr ?

  • Es gibt eine neue Version mit Rahmen und der Sekunden-Anzeige als Sprite. Mir gefällt die alte Version fast besser. :-)


    Mit dem DCF-Empfänger habe ich es gerade gestestet, es funktioniert. Allerdings gibt es derzeit noch den kleinen Nachteil, dass man erst abwarten muss, bis die Zeit synchonisiert ist. In meinem Basic-Programm wird aus Zeitgründen nur die eine zusätzliche Lampe eingeschaltet, die sich geändert hat. Damit führen große Zeitsprünge, wie sie sofort nach dem Einschalten und späterer Synchronisierung entstehen, zu Fehlern.


    Trotzdem ist hier mal die neue Version.

    berlin-s.prg


    P.S.: Ein kleiner Programmfehler wurde korrigiert.

  • Kosmas hat mich heute darauf hingewiesen, dass ich hier noch Antworten schulde. Ich hatte das Thema wohl aus den Benachrichtigungen rausgenommen, jedenfalls entgingen mir jegliche Posts seit meinem eigenen letzten post (und der sich damit überschneidende von detlef, der darüber angezeigt wird...)


    Also:


    Thema Interrupts am Pic16F:


    82 Interrupts, das sind absolute Märchen, wo hast Du die Info denn her, detlef ?


    Der PIC 16F hat genau EINEN IRQ, d.h. eine Priorisierung, es gibt noch nichtmal den höher prioren NMI, wie beim 6502, eine solche Zweiteilung (aber beide abschaltbar) hat dann erst die PIC 18F Familie!


    Quellen: siehe Datenblätter zur PIC16F Familie, sowie z.B. SPRUTS bekannte und ausführliche deutschsprachige Einführung in die Programmierung anhand der PIC16F Familie:


    http://www.sprut.de/electronic/pic/int/int.htm

    Absatz Priorisierung der Interrupts bei PIC18F:


    ... Bei einfachen PICs (PIC16F...)sind alle Interrupts gleich wichtig. ...


    Interrupt-Quellen sind eine andere Sache, denn deren Anzahl ist nicht vom Prozessor sondern rein von der Peripherie abhängig, da hat ein µController mit einigen Onboard-Komponenten natürlich einige davon. Aber diese landen ALLE auf dem EINEN Interrupt-Flag, das dann auch den Sprung in die Interrupt-Routine auslöst!


    Dort muss dann für jede Interrupt-Quelle geprüft werden, ob diese der Verursacher war und was genau los ist, z.b. beim UART, ob Sende- oder Empfangspuffer voll ist, oder ein interner Fehler aufgetreten ist etc.


    Vergleicht man den C64 als Ganzes mit einem µC, dann sieht es in diesem System ganz ähnlich aus: der 6502 bekommt einen Interrupt und das Maschinenprogramm muss sehn, welche der möglichen Interrupt-Quellen diesen ausgelöst hat und dann entsprechend den passenden Handler aufrufen. Hier wie dort kann man einige Quellen direkt in den jeweiligen Registern abschalten, um nicht zuviel Overhead in die IRQ-Routine mit übernehmen zu müssen.



    Thema: "Ausblenden von Störungen, welche falsche Interrupts auslösen könnten":


    Üblicherweise wird das bei langsamen Prozessoren in HW gemacht, ein einfaches RC-Glied oder etwas aufwändiger ein retriggerbares Monoflop sorgen für eine minimale Pulsbreite und "schlucken" Störimpulse der empfindlichen Polarität.


    Alternativ kann man in Software auch einen Timer aufziehen und als Erstes vergleichen, ob dieser Timer abgelaufen ist und wenn nein, gleich zurück springen ins Hauptprogramm oder über einen gleitenden Mittelwert eine rein statistische Auswertung vornehmen, aber das erfordert schon etwas mehr Rechenleistung und natürlich auch Speicher, d.h. am C64 und diesem trivialen 1Bit Signal im 100ms Raster wäre ein RC-Glied die passende Lösung.


    Thema: Aufforderung hier ein Musterprogramm dafür zu erstellen:


    Ich biete gerne Ingenieursdienstleistungen auf Anfrage an, allerdings fallen dafür auch Kosten in branchenüblicher Höhe an, wenn es dem Anfragenden NICHT gelingt, mich davon zu überzeugen, das als sinnvolle Freizeitaufgabe anzusehen. Das gelingt sicher NICHT, indem einfach etwas EINGEFORDERT wird mit einer Tendenz zum mobbing...


    Angefangen mit Kollege Spruts Kompendium gibt es viele gute Literatur zum Thema Echtzeitsysteme und Interrupt-Programmierung.

    Vor einigen Jahren hätte ich noch auf eine entsprechene "Ring"-Vorlesung an einer bayr. Hochschule verweisen können, die ich (zusammen mit meinem AG) seinerzeit als Industrie-Dozent angeboten hatte, aktuell kann ich nur auf entsprechende Literatur oder aktuelle Vorlesungen von Kollegen verweisen.

  • Thema: Aufforderung hier ein Musterprogramm dafür zu erstellen:


    Ich biete gerne Ingenieursdienstleistungen auf Anfrage an, allerdings fallen dafür auch Kosten in branchenüblicher Höhe an, wenn es dem Anfragenden NICHT gelingt, mich davon zu überzeugen, das als sinnvolle Freizeitaufgabe anzusehen...

    Prima. Also wenn du keine bessere Lösung liefern willst oder kannst, dann bleiben wird doch einfach bei der bestehenden Lösung. Die funktioniert gut und existiert und alle sind zufrieden. Mit theoretischen Ausführungen ist niemandem geholfen. :thumbup:

  • Prima. Also wenn du keine bessere Lösung liefern willst oder kannst, :thumbup:

    Du wolltest (oder solltest!) doch noch LIEFERN, nämlich die Quelle für Deine abstrusen Behauptungen hinsichtlich der angeblich 82 Interrupts des PIC16F...


    Ich warte auf Lieferung ;-)


    Desweiteren hatte ich ursprünglich nur ANGEMERKT, dass es mich WUNDERT, dass die im CIA VORHANDENE HW-Unterstützung für just solche Dinge -anhand der Eingangsbelegung- NICHT genutzt wurde.


    Davon, das zu ändern (wozu auch nach über 30 Jahren der Obsoleszenz), war meinerseits NIE die Rede!


    Also keine Nebelkerzen werfen, sondern selbst das tun, was Du von Anderen auch lautstark verlangst....

  • Prima. Also wenn du keine bessere Lösung liefern willst oder kannst, :thumbup:

    Davon, das zu ändern (wozu auch nach über 30 Jahren der Obsoleszenz), war meinerseits NIE die Rede!

    Wie gesagt, dann ist doch alles gut. Warum dann der ganze Aufriss von dir? Wofür?


    Ich werde dich jetzt mal "Ignore" setzen, weil diese Rechthaberei einfach nur nervt. Wegen mir, kannst du dir also weitere Kommentare sparen.

  • Wie gesagt, dann ist doch alles gut. Warum dann der ganze Aufriss von dir? Wofür?

    ... weil er es kann ;)

    "Was heute noch wie ein Märchen klingt,kann morgen Wirklichkeit sein.Hier ist ein Märchen von übermorgen.Es gibt keine Kupferka­bel mehr,es gibt nur noch die Glasfaser und Terminals in jedem Raum.Man siedelt auf fernen Rech­nern.Die Mailboxen sind als Wohnraum erschlossen.Mit heute noch unvorstellbaren Geschwindigkeiten durcheilen Computerclubs unser Da­tenverbundsystem.Einer dieser Com­puterclubsist der CCC.Gigantischer Teil eines winzigen Sicher­heitssystems,das die Erde vor Bedrohungendurchden Gilb schützt.Begleiten wir den CCC und seine Mitglieder bei ihrem Patrouillendienst am Rande der Unkenntlich­keit. CCC'84 nach ORION'64"