Ich möchte hier in einen Microcontroller eine Uhr mit 7segment-Anzeigen einprogrammieren. Diesmal kein Atmel, sondern ein PIC, weil der PIC von jemand anders so vorgegeben wurde. Da der mit Abstand preiswerteste Smd-PIC keine Interrupts unterstützt, müßte ich etwas tricksen, wenn ich ein genaues Zeitsignal im Microcontroller von dem eigenen Quarz haben möchte. Frage jetzt: Wenn ich vorher durch einen Timer-Interrupt 255 mal in der Sekunde einen Zähler hochzählen lasse, und ich im neuen Microcontroller jetzt keine Interrupts mehr zur Verfügung habe, was mache ich dann, um in genauen Zeitabständen einen Zeitzähler hochzählen zu lassen? (weil der Programm-Code ja immer unterschiedlich lang ist) gar nix? geht es dann nicht mehr, oder hat jemand so was schonmal gemacht? Ich suche ein ungefähres beispiel, wie man das einfach hinkriegen kann. es kann allgemein sein, ich suche nur nach einem prinzip. Genauer gesagt ist es ein PIC 16F57, aber das beispiel kann ein allgemeines sein, kann auch von einem atmel, etc.. sein.
'n Mikrocontroller ohne Timer und Interrupts? Das ist ja wie im Mittelalter. Edit: Naja, nen Timer hat die Rumpel doch, dann nutze diesen doch einfach.
Anos B wrote: > Da der mit Abstand preiswerteste Smd-PIC keine Interrupts unterstützt, Ist das wirklich ernst gemeint, es soll tatsächlich MCs ohne Interrupts geben? Warum baust Du die Uhr dann nicht gleich mit FFs aus Röhren-Trioden auf. Also ich würde keine Sekunde darüber nachdenken, wie man nen MC ohne Interrupts programmiert. Das ist nur verlorene Lebenszeit, wo man sinnvolleres machen könnte. > Ich suche ein ungefähres beispiel, wie man das einfach hinkriegen kann. > es kann allgemein sein, ich suche nur nach einem prinzip. Ich bin mir fast sicher, solche Beispiele gibt es nicht. > Genauer gesagt ist es ein PIC 16F57, aber das beispiel kann ein > allgemeines sein, kann auch von einem atmel, etc.. sein. Es gibt keine AVRs ohne Interrupts. Peter
hm.. d.h., ich lese einfach den Timer direkt aus statt über einen Interrupt den Wert erhöhen zu lassen. ok..
Einen Schwingkreis mit einem Quarz, Frequenzteiler und mindestens eines der Signale zum µC. Wobei, wenn man auf Sekundentakt runter geht, wird der µC mit seinem Berechnungen wohl fertig sein, bevor die nächste Flanke kommt. MfG
@Thomas B. (yahp) Benutzerseite >'n Mikrocontroller ohne Timer und Interrupts? Das ist ja wie im >Mittelalter. Es ist ein PIC . . . duckundwech Falk P.S. Mit dem PIC das machen zu wollen ist schon arg sportlich. Das Ding hat tatsächlich KEINE Interrupts, aber wenigstens einen 8 Bit Timer. Wenn man das klassisch mit Endlosschleife und Pollen des Timers macht bekommt man es hin. Nicht schön, aber geht.
Ich weiss nicht ob die zusätzlichen Schmerzen und Entwicklungskosten es wert sind af diesen einen PIC zu setzen. Ich weiss nicht in welchen Stückzahlen ihr euch da am ende bewegen wollt und was Du als Stundenlohn hast. Aber das sollte man abwägen, bevor man sich auf sowas einlässt.
> Es ist ein PIC . . .
An diesem Bauteil bestätigen sich die üblichen Vorurteile allerdings mal
;-)
Reichelt will für so ein Ding 1,45. Dafür kann man auch Controller mit
Interrupts haben.
Thomas B. wrote: > 'n Mikrocontroller ohne Timer und Interrupts? Das ist ja wie im > Mittelalter. Mittelalter stimmt irgendwie. Die Architektur der 12bit PICs, zu denen auch dieses erlesene Exemplar gehört, entstand Mitte der 70er und hatte auch damals schon keine Interrupts. Da hat er sich ein lebendes Fossil ausgesucht. Die Cents die er sich darin spart kommen allenfalls in sehr grossen Stückzahlen wieder raus.
Thomas B. wrote: > Reichelt will für so ein Ding 1,45. Dafür kann man auch Controller mit > Interrupts haben. Man, ist der aber teuer. Der ATtiny2313 kostet da nur 0,95€. Peter
> Man, ist der aber teuer. > Der ATtiny2313 kostet da nur 0,95€. Eben, für das Geld kann man auch Tiny26 oder Mega8 haben. Aber der OP wurde ja offenbar zum PIC gedrängt. Ich kann mir aber nicht vorstellen, dass Interrupts bei Microchip unbezahlbar sind ;)
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.