Forum: Mikrocontroller und Digitale Elektronik Xmega per Compare Portpin toggeln


von R--- S. (rene66)


Lesenswert?

Hallo,

ich suche eine möglichkeit herrauszufinden wann genau der Xmega einen
Compare A Timer CO ausführt.
Mit genau meine ich in dem Moment wo der ein Compare Ereignis 
stattfindet soll ein Protpin geschalten werden.
Ich hab es per PWM versucht aber der Portpin schaltet nicht.

versucht habe ich das hier:

Timer E0
Portpin E2 soll  bei Compare C geschalten werden.

ldi Temp, PORTCFG_VP1MAP_PORTE_gc
sts PORTCFG_VPCTRLA, Temp

ldi Temp, 0b00000100 ;Port E2 auf Ausgang
out VPORT1_DIR, Temp

ldi temp,0x01
sts TCE0_CTRLA,temp
ldi temp, 0x43
sts TCE0_CTRLB,temp

von Ich (Gast)


Lesenswert?

keiner Da?

von avr-tester (Gast)


Lesenswert?

Servus Kollega,

siehe Dir doch folgende Sache an:

http://www.atmel.com/dyn/resources/prod_documents/AVR1306.zip

Habe einige Module getestet und für gut befunden.
Auch für Anfänger geeignet. Hier findest Du alles über Atxmegas!
Vom Takt bis zum Ad-Wandler.

Gruß avr-tester

von R--- S. (rene66)


Lesenswert?

Hallo,

danke das jemand geantwortet hat.
Ich habe herausgefunden das man z.b. bei einem Event auf Kanal 7 das man 
im Eventregister einstellt so:

ldi    temp,0x80
sts    EVSYS_CH7MUX,temp

ldi temp,0x30
sts PORTCFG_CLKEVOUT,temp

und dann noch im Vport Register den Pin C D oder E 7 der Register 
zuweist. dann eine Raktion am Pin folgen sollte.
Man legt also einen Timer Overfow auf pin 7 und es sollte sich was tun. 
Tut es auch aber egal was ich einstelle es reagiert immer nur auf das 
was an Event 1 gerade gemacht wird.

Pin 7 ist als Ausgang konfiguriert
Aus den Appnotes ist nicht viel zu dem Thema ersichtlich was überhaupt 
passiert.

von Helmut R. (heru01)


Lesenswert?

Hallo Rene,

kannst Du Dein Beispiel bitte komplett posten?

Ich wollte auf PORT_C Pin7 über das Eventsystem den Pin toggeln lassen, 
aber das Ding tut net.

Schreib doch mal bitte einfach in Asm oder C die Initialisierung davon:
welchen Timer
welchen Event
welchen Port

Über TC->Event->DMA->Port  kann ich ohne ISR den Port toggeln lassen (da 
reagiert aber dann nicht 1 Bit, sondern leider durch die DMA minimal 1 
Byte - und ich brauche die anderen Ausgänge für etwas anderes.)

Vielen Dank,

Gruß
Helmut

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
Noch kein Account? Hier anmelden.