Hi, das Ziel ist es, dieTime$ und Date$ - Funktion mit einer anderen ISR zu kombinieren. Aktiviert über... Enable Interrupts Config Date = Dmy , Separator = . Config Clock = Soft Date$ = "04.05.06" Time$ = "00:00:00" ... wird die aktuelle Zeit errechnet. Nun möchte ich zusätzlich genau im Sekundentakt noch andere Funktionen aufrufen, nämlich das Senden und den Empfang eines Strings über die RS232, sowie im Anschluß daran das Aktualisieren des Bildinhaltes eines Grafikdisplays über SPI. Wenn ich jetzt mit... On Timer0 int_routine ... versuche eine ISR aufzurufen sagt mir der Compiler natürlich, daß die ISR bereits über Date/Time-Funktion definiert bzw. belegt ist. Any Ideas? Danke :-)
Bascom gegen Programmiersprache tauschen. Sonst die Sekunden des Time$ abfragen und mit vergleichen, ob sie noch genauso aussehen wie vorher...
@Rahul "Bascom gegen Programmiersprache tauschen" Unqualifizierte Aussage. Ich Progge zwar in C aber ich mache nicht das Auto vom Nachbarn nieder ;)
@Hans: ich habe kein Auto... Und wenn etwas nicht so klappt, wie ich es mir vorstelle, und es nicht an mir, sondern am Werkzeug liegt, dann suche ich mir ein anderes Werkzeug. Bascom ist schön für den Einsteig, aber wenn Projekte dann aufwändiger werden, hat man eigentlich keine andere Möglichkeit als zu wechseln, da Bascom doch sehr an sein Baukastensystem gebunden ist. Bascom geht sehr ausschweifend mit den Resourcen eines Controllers um. Übrigens habe ich neben der "unqualifizierten Aussage" auch noch eine Lösung angeboten (im Gegensatz zu anderen Postern...).
@Rahul, "Übrigens habe ich neben der "unqualifizierten Aussage" auch noch eine Lösung angeboten (im Gegensatz zu anderen Postern...)." Warum wäre T1 oder T2 keine Lösung ? Peter
Doch... Du warst auch nicht gemeint. Vielleicht hätte ich lieber "im Gegensatz zu dir" schreiben sollen. Ich bin da immer etwas verallgemeinernd...soll nicht wieder vorkommen.
@Rahul: Interessante Idee... Ich probier's mal, danke für den Tipp! @Peter D: "Nimmste eben T1 oder T2." Wie bekomm ich darauf den Sekundentakt? Sorry, wahrscheinlich blöde Frage... Aber wär ich schon Profi müsst ich nicht fragen :-)))
@Micha, das hängt von Deinem Quarz ab. Z.B. Quarz = 11,0592MHz: T1 in Mode 12 (Top = ICR1) Prescaler = 1024 ICR1 = 10799 Dann kommt der T1 Input Capture Interrupt alle: 11,0592MHz 1024 10800 = 1s Peter P.S.: AVR = ATMega8
@Peter: Hihiiii... Jetzt verstanden. :-) DAS würde mein Problem aber nicht lösen, da die Aktionen auf der RS232 bzw SPI niemals durch die ISR unterbrochen werden sollen. Wenn ich das Ganze mit nem einfachen Timer machen würde, würde sich solch eine Überschneidung mit dem Takt des 32kHz-Quarzes der den Sekundentakt erzeugt zwangsläufig irgendwann ergeben... Deshalb wollte ich mich an dessen ISR "dranhängen", denn dann kann es keine Überschneidungen geben (solange meine ISR nicht 1 sek zur Abarbeitung braucht). Anm: Setze einen ATM128 mit 16MHz und 32kHz-Quarz für den Sekundentakt ein.
"DAS würde mein Problem aber nicht lösen, da die Aktionen auf der RS232 bzw SPI niemals durch die ISR unterbrochen werden sollen." Und was stört Dich daran ? Wenn man es richtig programmiert, machen Interrupts auch keine Probleme. "Setze einen ATM128 mit 16MHz und 32kHz-Quarz für den Sekundentakt ein." Dann kannst Du den 32kHz Quarz ruhig abklemmen, der ist wirkungslos. Der kann nämlich nur mit T2 benutzt werden. Du sprachst aber davon, daß die Uhrenroutine mit T0 arbeitet, also mit dem 16MHz Quarz. Peter
@Rahul "@Hans: ich habe kein Auto... Und wenn etwas nicht so klappt, wie ich es mir vorstelle, und es nicht an mir, sondern am Werkzeug liegt, dann suche ich mir ein anderes Werkzeug." Was versuchst du dich rauszureden ? Du hast gleich im ersten Satz eine von vornherein Pauschale abwertende Aussage gemacht das Bascom keine Programiersprache sei und das habe ich dir angekreidet. Das du daran noch schnell nen Tip geklebt hast spielt kein Rolle. Sei ein Mann und steh auch dazu,alt genug dafü bist du ja. Nein ,Antworte nicht,ich kenn die Antwort schon die jetzt kommt. Woher ? Dreh dich mal in Gedanken um ca. 110° (Also Rechtsherum) und verlänger ebenfalls in Gedanken die Linie ;)
... und immer noch kein Lösungsvorschlag deinerseits. Wieso sollte der Wechsel einer Programmiersprache nicht ein hilfreicher Tipp sein? Ich programmiere auch in VB, weil es schnell zu programmieren geht. Allerdings hat VB den grossen Nachteil, dass es ziemlich langsam ist, und wenn man Sachen programmieren will, die zeitkritisch sind, dann sind andere Programmiersprachen (C, C++...) angebracht. Mag sein, dass sich "Bascom gegen Programmiersprache tauschen." (ziemlich) wertend klingt, aber wenn man sich das, was der BASCOM-Compiler an Assembler-Code produziert, anguckt, stellt man fest, dass er nicht wirklich optimal arbeitet. Weiterhin haben andere Poster (auch der Ursprungsposter) diese Zeile einfach ignoriert. Der Ursprungsposter hat meinen Vorschlag sogar in seine Überlegungen einbezogen. Somt sind etwa 50% meines Posts schon mal sinnvoll gewesen. >Nein ,Antworte nicht,ich kenn die Antwort schon die jetzt kommt. >Woher ? >Dreh dich mal in Gedanken um ca. 110° (Also Rechtsherum) und >verlänger ebenfalls in Gedanken die Linie ;) Wenn ich dem so tue, bin ich beim Kieler Fernsehturm... Liefere eine Lösung, und du darfst dich weiterhin wie mein Deutschlehrer in der 9. und 10. Klasse aufführen. Der wusste auch immer alles besser (obwohl er sowas von daneben lag...).
Ja,so zickig wie du dich aufführst kann man wirklich glauben einen Halbstarken vor sich zu haben der nur in Extreemen unterscheidet. Es geht nicht darum welche sprache besser oder schlechter ist (Du erinnerst dich ? Ich Progge zb. in C) sondern darum das du als allererstes mit dem klassischen "xxx ist Kacke..." kommst. Alles andere was du schreibst ist der wiederholte Versuch von diesem Punkt abzulenken. PS: Hast du dich mittlerweile mal herumgedreht ? ;)
>Hast du dich mittlerweile mal herumgedreht ? ;)
kannst du lesen?
Ich habe nie gesagt, dass irgendwas kacke sei, das wurde von dir in
meine Aussage hineininterpretiert.
">Hast du dich mittlerweile mal herumgedreht ? ;) kannst du lesen?" Ja,kann ich und dazu hast du noch nix gesagt. "Ich habe nie gesagt, dass irgendwas kacke sei, das wurde von dir in meine Aussage hineininterpretiert." Ich zitiere mal deinen ersten Satz hier um deinem Gedächtnis nachzuhelfen. 'Bascom gegen Programmiersprache tauschen.' Was ist daran falsch zu deuten ? Kann aber auch sein das du Suaheli sprichst und ich das nur nicht merke ;)
@Rahul "wenn du meinst." Ja,tu ich. Hätt ich keine Meinung dann würd ich hier nicht schreiben ;)
Ich finde solche Diskussionen immer ziemlich sinnlos, da sie einerseits nichts mit dem Thema zutun haben (ausser, dass ich mal wieder meine Meinung über Bascom von mir gegeben habe), und andererseits überhaupt nichts bringen, weil mich Hans Meinung nicht wirklich interessiert. Ob er nun meint, das ich ein Idiot, Proleth oder dergl bin, kann mir auch egal sein. Die Wahrscheinlichkeit, mit ihm mal persönlich zutun zu haben, ist ziemlich gering ("Anonymität des Internets..."). Interessanterweise hat sich bisher niemand ausser Hans über den Spruch muckiert. Noch viel interessanter ist, dass ein Bekannte von mir mit Bascom angefangen hat, und schnell merkte, dass er an dessen Grenzen gestossen ist. Vielleicht sollte Hans in die Politik gehen: da wird auch an allem rumgemäkelt, und es kommt dabei nichts raus. Für mich ist dieser Thread erst mal erledigt, sofern keine Beiträge zum Thema mehr kommen, und hier nur irgendwelche "Hänse" sich über die Art / Unarten anderer Forumsnutzer auslassen und nichts zum Thema selbst beitragen. micha b hat doch mit seiner Frage nur wieder gezeigt, dass Bascom ganz nett ist, aber für aufwändigere Sachen zu umständlich oder gar nicht geeignet ist. Wer den Spruch "Bascom gegen Programmiersprache tauschen" anstössig findet, sollte meine Beiträge lieber meiden...
Ja,dich kann man ja leicht auf die Palme treiben was ? "ausser, dass ich mal wieder meine Meinung über Bascom von mir gegeben habe" Na endlich haste es dann doch zugegeben. "und andererseits überhaupt nichts bringen, weil mich Hans Meinung nicht wirklich interessiert......" Na,dafür das es dich nicht interessiert bist du aber sehr gut dabei. "Vielleicht sollte Hans in die Politik gehen: da wird auch an allem rumgemäkelt, und es kommt dabei nichts raus." Ja,das sagt gerade der der sich im ersten Satz auf die Programiersprache wirft anstatt was zum Topic beizutragen. "Für mich ist dieser Thread erst mal erledigt, sofern keine Beiträge zum Thema mehr kommen, und hier nur irgendwelche "Hänse" sich über die Art / Unarten anderer Forumsnutzer auslassen und nichts zum Thema selbst beitragen." Ja,das übliche. Verstroickt man sich dann Fluchtankündigung mit anschließendem Nachtreten. wie berechenbar. "micha b hat doch mit seiner Frage nur wieder gezeigt, dass Bascom ganz nett ist, aber für aufwändigere Sachen zu umständlich oder gar nicht geeignet ist." Du fängst ja schon wieder an.... "Wer den Spruch "Bascom gegen Programmiersprache tauschen" anstössig findet, sollte meine Beiträge lieber meiden..." Antwort 1: Wer sagte nochmal "Wer schweigt,der stimmt zu ! " ? ;) Antwort 2: Das gleiche gilt auch indem man nicht zu Sprachen antwortet die man ablehnt. (Such dir was aus.Mir gefallen beide) Bist du am Ende doch noch ein Jugendlicher ? Ich meine weil es passen würde. Eine kleine Kritik und schon geht dir der Ballon hoch. :) Ich sag mal "Getretene Hunde..." :) g
Noch was für unsere spitzfindigen "Forumsnutzer": "Unqualifizierte Aussage." Unqualifiziert bestimmt nicht, da ich aus eigener Erfahrung und diversen Threads hier im Forum über Bascom urteilen kann. Wenn dann war es eine "unangebrachte Aussage". Übrigens verurteile ich Basic auf Mikrocontrollern nicht grundsätzlich; nur finde ich BASCOM nicht ganz ausgereift, wie auch obiges Problem wiedermal gezeigt hat. Bei BASCOM hat man ein paar schöne vorgefertigte Routinen. Wenn man dieses Schema aber erweitern oder verändern will, kann man alles von Hand machen. Dann kann ich es auch gleich in C schreiben (was höchstens von der Syntax gewöhnungsbedürftiger ist, weil man andere "Vokabeln" und vielleicht auch eine andere Grammatik lernen muß), weil ich dort fast alles zufuß machen darf. PS: Hans, ich hätte gerne früher was geschrieben, aber das schöne Wetter zwang mich, mich im Freien ohne Internetanschluß aufzuhalten. PPS: Es gab mal die BASIC-Briefmarke (von Wilke Elektronik? Gibts vielleicht auch immer noch...) die war von ihrem Basic-Dialekt vielleicht etwas beschränkter, dafür aber IMHO etwas umgänglicher.
@Rahul Aus meiner sicht machst du dich jetzt wirklich Lächerlich. Du verdeitigst eine Aussage die man nicht verteidigen kann weil sie eindeutig ist,da muß ich Ratber recht geben. @Ratber Hast du wieder deine "Bissige Phase" ? Just my 2 cent. Und wieder weg.
>Bist du am Ende doch noch ein Jugendlicher ? ja, jetzt habt ihr mich erwischt. Ich bin immer noch 12 Jahre alt... Und beim nächsten Mal markiere ich meine persönliche Meinung zu irgendwelchen Themen expltizit...Oder halte gleich meine Klappe. Ich hab einfach keine Lust auf Kritik zu meiner Person. Wenn ich schon son "scheiss" schreibe, dann sollte ich wohl dazu stehen, oder? Wieso versuche ich mich eigentlich immer noch zu rechtfertigen? >...nicht verteidigen kann weil sie eindeutig ist... Um Eindeutigkeit geht es doch...und das habe ich in meinem letzten Thread versucht zu erklären. Viielleicht sollte ich micht mal an die Entwickler von Bascom wenden, und mit ihnen über meine "Verbesserungsvorschläge" diskutieren. So, mal sehen, was jetzt wieder kommt.
@micha: Ich würde es so machen, das du den zweiten Timer (eventuell durch ein delay) erst später startest als den uhren timer. So haben beide ISRs genug Zeit ihre Aufgaben zu machen, und dir wird es nicht auffallen ob die Ausgabe nun 500ms verzögert Aktualisiert wird :)
@Rahul "So, mal sehen, was jetzt wieder kommt." Ne,danke .ich biegew mich gerade etwas. Weißt schon ;)
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.