Problem mit AVRStudio Simulator und Tiny2313?

Gast #1113890
Hallo,

ich bin ein bißchen mit dem Simulator (AVR Studio 4.15 Build 623) am 
verzweifeln. Und zwar geht es darum ein Input Capture Event zu 
simulieren. Ich weiß nicht ob das noch wichtig ist, aber ich verwende 
einen Tiny2313 mit GCC. Compilieren tut er ohne Fehlermeldung. Dann 
starte ich den Simulator. Alles funktioniert einwandfrei. Der Counter 
scheint auch schön zu zählen. Dann setze ich das Interrupt flag per 
Hand. Jetzt springt der Simulator schön in die Interrupt Routine. Aber 
der Counterstand wird nicht in die ICR Register geschrieben. Diese 
bleiben immer auf null. Was mache ich falsch? Hat dieses Problem schon 
mal jemand gehabt?

Dies ist meine initialisierung vom Timer1:
1
void init_timer1(void)
2
{                  
3
  TCCR1A = 0;
4
  // start Timer mit Systemtakt, steigende Flanke, noise canceller
5
  TCCR1B = (1 << ICNC1) + (1 << CS10) + (1 << ICES1);
6

7
  TCNT1H = 0;            // Counter auf null setzen
8
  TCNT1L = 0;            // Counter auf null setzen
9
  TIMSK |= (1<<ICIE1);   // Capture Interrupt freigeben
10
}

Gruss
Nils
#1113903
Hallo,

abgesehen davon, daß ich von der ganzen Simuliererei nicht viel halte:

Du solltest wohl eher das zugehörige Capture-Pin setzen, das sorgt für 
das Triggern der Logik und setzt dann das Interruptflag.

Egal wie gut die Simulation auch ist: das auslösende Ereignis kann ja 
nur der Pegelwechsel am Capture-Pin sein.
Zumindest bei meinen Tiny2313 ist nämlich kein Draht zum Setzen des 
Interruptflags rausgeführt. ;-)

Gruß aus Berlin
Michael
Gast #1113922
Ja Ja, manchmal hat man echt ein brett vorm Kopf. Genau das war es. Man 
sollte auch nur das nehmen, was man auch als echte Hardware zur 
Verfügung hat. Nachdem ich den ICP Pin gesetzt habe, hat er auch den 
Timerstand in die ICP Register geschrieben. Dankeschön.

Gruss
Nils

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 17 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.