- Labornetzteil AliExpress         
Ergebnis 1 bis 10 von 52

Thema: Timer für AVR ATtiny84 oder ander allgemein in C

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Erfahrener Benutzer Fleißiges Mitglied Avatar von derNeue
    Registriert seit
    01.01.2011
    Ort
    Bierstadt Radeberg
    Alter
    39
    Beiträge
    101
    Ich werf einfach mal folgendes in den Raum, was du einfach mal googlen kannst, Tastenentprellung.

    Als weiteres ist es ehrlich gesagt kein schöner Stil, Multiplexen mit delays zu realisieren. Sowas macht man auch in einem Timerinterrupt. Dafür kannst du ja einen anderen nehmen als den, den du bis jetzt schon nutzt. Dazu gibts eigentlich auch den ein oder anderen Code frei im Netz. Einfach mal suchen und schauen, wie das andere gelöst haben. Das hat einen ganz einfachen Vorteil. Bis jetzt änderst du ja einfach nur ein paar Variablen in deinem Interrupt. Aber es gibt ja auch andere Anwendungen für 7-Segment-Anzeigen, wo du in deinem Hauptprogramm auch noch anderen Code ausführen willst. Da kommt es dann mit deiner Methode zu Problemen.


    Dennis
    Ich studiere die Wirkung der Sonnenstrahlen auf das Liebesleben der Pflastersteine

  2. #2
    Neuer Benutzer Öfters hier Avatar von ooweberoo
    Registriert seit
    24.02.2014
    Ort
    66482 Zweibrücken
    Alter
    40
    Beiträge
    28
    Blog-Einträge
    1
    Hallo,

    ok, als Anfänger gibt es eben noch viel zu lernen.... ich bin jedoch forh das ich erstmal die gewünschte Funktion umsetzten konnte...

    Entprellen wollte ich sowieso, hatte ich vergessen zu erwähnen

    Ein weit aus größeres Problem stellt für mich der externe Quarz dar. Ich will mich mit falsch gesetzten Fusebits nicht aus dem µC

    aussperren. Wollte eine 10MHz Quart mit 2X 22pF Kondensatoren nutzen. Gleicher Takt wie der interne Quarz.

    Leider werd ich aus den Fusebits nicht ganz schlau...hab nur ein 8 Bit Fusebit Register....

    Wenn du dazu vielleicht noch etwas weist ?

    Einmal den Haken falsch gesetzt und das wars dann.... blöde Sache.... so sieht mein Fusebit Register aus!

    Klicke auf die Grafik für eine größere Ansicht

Name:	fusebits_ATtiny84.jpg
Hits:	8
Größe:	110,7 KB
ID:	27809

  3. #3
    Erfahrener Benutzer Fleißiges Mitglied Avatar von derNeue
    Registriert seit
    01.01.2011
    Ort
    Bierstadt Radeberg
    Alter
    39
    Beiträge
    101
    Hallo!

    ok, als Anfänger gibt es eben noch viel zu lernen
    Das ging allen so. Aber mit der richtigen Fragestellung bekommst du hier auch umfassende Hilfe

    Ein weit aus größeres Problem stellt für mich der externe Quarz dar.
    Die Frage ist, warum willst du unbedingt einen externen Quarz nehmen? Belasse es doch erstmal bei dem internen, damit kannst du nix verfusen. Ich glaube nicht, dass du schon Anwendungen programmierst, die unbedingt einen externen Quarz benötigen. Oder warum willst du unbedingt einen einsetzen?

    Dennis
    Ich studiere die Wirkung der Sonnenstrahlen auf das Liebesleben der Pflastersteine

  4. #4
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    08.08.2008
    Ort
    DE
    Beiträge
    523
    Du musst ganz unten die richtige Clock auswählen. Bei einem Quarz immer Ext Crystal!
    Hier gibts ne Liste, was für 10MHz geeignet ist.

    mfg

  5. #5
    Neuer Benutzer Öfters hier Avatar von ooweberoo
    Registriert seit
    24.02.2014
    Ort
    66482 Zweibrücken
    Alter
    40
    Beiträge
    28
    Blog-Einträge
    1
    Hallo,

    @derNeue: Das stimmt, eigentlich brauche ich den Quarz nur der genauen Frequenz wegen. Mein Projekt ist eine 7-Segment Uhr. Und momentan läuft sie ohne
    Probleme, geht aber pro Tag ca. 8-10 Minuten nach. Er ist quasi meine Unruh und die muss genau schwingen.

    @WsK8: Achso ich muss dan folgendes auswählen :
    EXT. Crystal Osc. frequency 8.0- MHz... danach die gleiche Startup- Zeit usw. wie jetzt. Somit steht 8.0-MHz für 8 MHz und mehr also auch 10, 12, 20, 40 ....? Des Weiterne das Häckchen bei CKDIV8 entfernen wenn ich das richtig gelesen habe???

    mfG

  6. #6
    Erfahrener Benutzer Fleißiges Mitglied Avatar von derNeue
    Registriert seit
    01.01.2011
    Ort
    Bierstadt Radeberg
    Alter
    39
    Beiträge
    101
    Hallo!

    Okay, für eine Uhr ist das zwar noch etwas anderes, aber ich glaube, da wirst du mit deinem 10MHz Quarz auch noch nicht ganz glücklich. Sicher wird die Abweichung der Uhr nicht mehr so groß sein. Allerdings würdest du mehr Genauigkeit erreichen, indem du einen Uhrenquarz mit rund 32KHz nimmst und damit einen Timer ansteuerst. Der Attiny84 bietet die Möglichkeit, einen Timer mit einer externen Taktquelle zu versorgen. Perfekt für einen Uhrenquarz. Ist zwar wieder etwas neues für dich, aber du möchtest ja lernen hast du geschrieben So würde ich das machen und ich habe auch schon am Anfang meiner µC-Zeit eine Uhr gebaut und gedacht, der interne Quarz wird das schon machen. Nur leider war das bei meinem Projekt nicht ganz so einfach, ich hatte nur noch einen Pin frei.

    EXT. Crystal Osc. frequency 8.0- MHz... danach die gleiche Startup- Zeit usw. wie jetzt. Somit steht 8.0-MHz für 8 MHz und mehr also auch 10, 12, 20, 40 ....? Des Weiterne das Häckchen bei CKDIV8 entfernen wenn ich das richtig gelesen habe???
    Die Start-up Zeit ist die Zeit, die der Controller benötigt, um selbst hochzufahren. Ich kenne kein Hobbyprojekt, bei dem es auf die ersten µs nach Spannung anlegen ankommt. Deswegen auf der sicheren Seite bleiben und die höchste Zeit wählen, wie warsch jetzt schon auch bei dir gewählt. Die MHz stehen für alle Frequenzen bis zum Maximum, was schon auf der ersten Seite angegeben wird. Ich bin gerade zu faul, das Datenblatt des Attiny 84 zu suchen, was bei diesem angebeben ist. Aber nicht mehr als 20MHz, mehr macht eig kein AVR mit. Das Häckchen CKDIV8 bedeutet einfach nur, dass der Systemtakt nochmal durch 8 geteilt wird, bevor er dem Attiny zuf Verfügung steht. Sozusagen ein Prescaler von 8. Machst du das Häckchen raus, hast du einen Prescaler von 1.


    Dennis
    Ich studiere die Wirkung der Sonnenstrahlen auf das Liebesleben der Pflastersteine

  7. #7
    Neuer Benutzer Öfters hier Avatar von ooweberoo
    Registriert seit
    24.02.2014
    Ort
    66482 Zweibrücken
    Alter
    40
    Beiträge
    28
    Blog-Einträge
    1
    Hallo Dennis,

    danke erstmal für deine Meinug und Erfahrungen. Du meinest einen Quarzoszilator statt einen normalen Quarz. Der verbraucht auch nur einen Pin das stimmt.
    Mal schauen wie groß der ist da die Uhr ja an den Arm soll
    32,768KHz habe ich schon oft gelesen wobei ich dachte desto höher der Takt desto höher die Genauigkeit aber auch der Stromverbrauch...
    Zudem hätte ich mit 10MHz den gleichen Takt wie jetzt nur genau..... naja ok mal schauen...

    Danke dir!

    Chris

  8. #8
    Erfahrener Benutzer Fleißiges Mitglied Avatar von derNeue
    Registriert seit
    01.01.2011
    Ort
    Bierstadt Radeberg
    Alter
    39
    Beiträge
    101
    Na auch die externen Quarze haben eine Abweichung, wenn auch nicht so groß, wie der interne des Attiny. Die Uhrenquarze sind eben dafür ausgelegt, die exakte Uhrzeit anzuzeigen. Und du brauchst nicht mehr viel umrechnen, wie bei 10MHz, deswegen diese krumme Frequenz. Wie gesagt, nicht als Hauptquarz die 32,768KHz nehmen, sondern nur als Taktquelle für den Timer, also an die Pins "T1" und "T0" anschließen. Wie der dort genau angeschlossen wird, musst du mal im Datenblatt nachsehen.

    Dennis
    Ich studiere die Wirkung der Sonnenstrahlen auf das Liebesleben der Pflastersteine

Ähnliche Themen

  1. Datenübertragung Bluetooth (oder Funk allgemein)
    Von Bumbum im Forum Software, Algorithmen und KI
    Antworten: 0
    Letzter Beitrag: 21.09.2012, 09:02
  2. ATTiny84 Pegelbegrenzung mit Zenerdiode oder wie?
    Von DanielSan im Forum AVR Hardwarethemen
    Antworten: 25
    Letzter Beitrag: 01.12.2011, 13:40
  3. 5V Netzteil gesucht oder allgemein guter Hersteller
    Von kini im Forum Suche bestimmtes Bauteil bzw. Empfehlung
    Antworten: 5
    Letzter Beitrag: 25.03.2010, 11:33
  4. Ander controller programmieren?
    Von BlackDevil im Forum Elektronik
    Antworten: 10
    Letzter Beitrag: 26.08.2006, 00:20
  5. Bspcode in assembler für AVR Timer
    Von Shadowrun im Forum AVR Hardwarethemen
    Antworten: 5
    Letzter Beitrag: 09.02.2005, 13:55

Stichworte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

Labornetzteil AliExpress