Forum: Mikrocontroller und Digitale Elektronik msp430 und IAR workbench


von Raphael R. (raphael)


Lesenswert?

hi leute,

sehr traurig, aber wahr! seit ca. 5tagen versuche ich den timer A meines
msp430 in der simulation von IAR Embedded Workbench zum laufen zu
bringen!

TAR(Timer A Zählregister) will nicht zu zählen
starten!!!

der code:

#include "msp430x44x.h"

        rseg DATA16_Z         ; start of RAM definitions

        rseg CODE             ;start of program


;Initialization

INIT    MOV    #0A00h,SP      ;Initialize Stack Pointer SP
        MOV    #WDTPW+WDTHOLD,&WDTCTL    ;Stop watchdog
        MOV    #00007h,&TACCR0
        mov.w  #TASSEL1+TACLR,&TACTL   ;Clear TAR & set TAR source =
SMCLK
        ;MOV    #TASSEL_2+TACLR,&TACTL    ;Timer_A: SMCLK, clear TAR
        MOV    #CCIE,&TACCTL0     ;TACCR0: enable interrupt
        ;BIS    #MC_2+ID_0,&TACTL  ;Start Timer_A in Continuous Mode
        bis.w   #MC1,&TACTL             ;Start Timer_A in continous mode
        EINT

MainLoop  BIS  #LPM0,SR
          JMP  MainLoop

TA0_ISR equ   $               ; Start Timer_A0 interrupt
        ADD   #00007h,&TACCR0 ; Add offset to TACCR0
        NOP
        RETI                  ; Return from interrupt
;
; Interrupt Vectors of the MSP430F449
;
        rseg  INTVEC
        dw    0,0,0,0,0,0
        dw    TA0_ISR         ; Start address Timer_A interrupt
        dw    0,0,0,0,0,0,0,0
        dw    INIT            ; Program start
        end

Wäre toll, wenn mir jemand weiter helfen kann!!!

danke

>Raphael

von gast (Gast)


Angehängte Dateien:

Lesenswert?

Hallo,
habe Dir einmal die Datei zum Timer A aus dem Buch 
"Mikrocontrollertechnik am Beispiel der MSP430-Familie" beigefügt. Evtl. 
hilfts Dir weiter.
Dieses Buch ist sehr empfehlenswert, dort wird mit der IAR-Workbench in 
Assembler und C gearbeitet. Schau Dir mal die Seite www.msp430-buch.de 
für weitere Infos an.

von Raphael R. (raphael)


Lesenswert?

vielen dank

du bist der erste der mir hilft! bin schon etwas "angefressen" weil ich 
den timer (was eigentlich easy sein sollte) nicht zum laufen bringe!

hoffentlich krieg ichs mit deiner hilfe hin!

das buch werd ich mir zulegen!!!

danke >Raphael

von Stefan (Gast)


Lesenswert?

Hallo,

ganz so einfach wird das nicht! Da hilft Dir das Buch wahrscheinlich 
auch nicht weiter!

Ich habe den Simulator so noch nie benutzt, aber einen Timer kann der 
nicht simulieren. Dazu müsstest Du den Timer per Makros selbst 
'entwerfen'. Wie das geht ist leider nicht dokumentiert.

Nur ein Auszug aus dem User-Guide IAR EW 3.42A,
Kap. 'Immediate Breakpoints':
"This type of breakpoint is useful for simulating memory-mapped devices 
of various kinds (for instance serial ports and timers). When the 
processor reads at a memory-mapped location, a C-SPY macro function can 
intervene and supply appropriate data."

von Raphael R. (raphael)


Lesenswert?

nach dieser info hab ich lange gesucht!

also die IAR Embedded Workbench IDE kann keinen Timer so ohne weiteres 
simulieren! das wär schön wenn ich diese info etwas früher gehabt hätte.

danke erstmals

ZUSATZFRAGE:
wenn ich unter options C-SPY unter driver simulator wähle,
dann sollte ich unter DEBUG mode ein simulator menü bekommen

mit folgenden optionen:

Forced Interrupts
Interrupt Setup
Interrupt Log
------------
Memory Access Setup...
------------
Trace
Function Trace
-------------
Breakpoint Usage...

ICH HABE ABER NUR:

Interrupts...
Memory Map...

als optionen zur auswahl!
warum? weiss das jemand?

danke für eure informative hilfe!!!

liebe grüße >Raphael

von PM (Gast)


Lesenswert?

Hi,

Du kannst allerdings recht einfach vorgeben wann welcher Interupt kommen 
soll. Irgendwo oben in der Leiste. Da kann man dann den Interrupt 
angeben, wie oft der kommen soll und auch eine varianz eingeben.
Damit sollte das eigentlich recht einfach gehen, bei mir klappt das 
zumindest.
Kann grad nicht nachschauen unter welchem Menüpunkt das genau ist, wenn 
Dus nicht findest frag einfach noch mal, dann schau ich bei Gelegenheit 
nach.

Gruß
Philipp

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.