OpenCores
URL https://opencores.org/ocsvn/openmsp430/openmsp430/trunk

Subversion Repositories openmsp430

[/] [openmsp430/] [trunk/] [core/] [sim/] [rtl_sim/] [src/] [tA_output.s43] - Diff between revs 19 and 111

Go to most recent revision | Show entire file | Details | Blame | View Log

Rev 19 Rev 111
Line 28... Line 28...
/*                                                                           */
/*                                                                           */
/* Author(s):                                                                */
/* Author(s):                                                                */
/*             - Olivier Girard,    olgirard@gmail.com                       */
/*             - Olivier Girard,    olgirard@gmail.com                       */
/*                                                                           */
/*                                                                           */
/*---------------------------------------------------------------------------*/
/*---------------------------------------------------------------------------*/
/* $Rev: 19 $                                                                */
/* $Rev: 111 $                                                                */
/* $LastChangedBy: olivier.girard $                                          */
/* $LastChangedBy: olivier.girard $                                          */
/* $LastChangedDate: 2009-08-04 23:47:15 +0200 (Tue, 04 Aug 2009) $          */
/* $LastChangedDate: 2011-05-20 22:39:02 +0200 (Fri, 20 May 2011) $          */
/*===========================================================================*/
/*===========================================================================*/
 
 
.global main
.global main
 
 
 
.set   DMEM_BASE, (__data_start     )
 
.set   DMEM_200,  (__data_start+0x00)
 
.set   DMEM_202,  (__data_start+0x02)
 
.set   DMEM_204,  (__data_start+0x04)
 
.set   DMEM_206,  (__data_start+0x06)
 
.set   DMEM_250,  (__data_start+0x50)
 
 
.set   TACTL,   0x0160
.set   TACTL,   0x0160
.set   TAR,     0x0170
.set   TAR,     0x0170
.set   TACCTL0, 0x0162
.set   TACCTL0, 0x0162
.set   TACCR0,  0x0172
.set   TACCR0,  0x0172
.set   TACCTL1, 0x0164
.set   TACCTL1, 0x0164
Line 52... Line 59...
        dec r14
        dec r14
        jnz WAIT_FUNC
        jnz WAIT_FUNC
        ret
        ret
 
 
main:
main:
        mov  #0x0250, r1        ; # Initialize stack pointer
        mov #DMEM_250, r1       ; # Initialize stack pointer
        mov  #0x0000, &0x0200
        mov   #0x0000, &DMEM_200
 
 
 
 
       /* --------------   TIMER A TEST:  COMPARATOR 0   ----------------- */
       /* --------------   TIMER A TEST:  COMPARATOR 0   ----------------- */
 
 
        mov  #0x0200, &TACTL
        mov  #0x0200, &TACTL
Line 70... Line 77...
        mov  #0x0204, &TACTL
        mov  #0x0204, &TACTL
        mov  #0x0000, &TACCR0
        mov  #0x0000, &TACCR0
        mov  #0x0000, &TACCTL0
        mov  #0x0000, &TACCTL0
        mov  #0x0200, &TACTL
        mov  #0x0200, &TACTL
        mov  #0x0004, &TACCTL0  ; # Set to 1
        mov  #0x0004, &TACCTL0  ; # Set to 1
        mov  #0x0001, &0x0200
        mov  #0x0001, &DMEM_200
        mov  #0x0000, &TACCTL0  ; # Set to 0
        mov  #0x0000, &TACCTL0  ; # Set to 0
        mov  #0x0002, &0x0200
        mov  #0x0002, &DMEM_200
 
 
                                ; # --------- Set          (mode 1) ----------
                                ; # --------- Set          (mode 1) ----------
        mov  #0x0204, &TACTL
        mov  #0x0204, &TACTL
        mov  #0x0015, &TACCR0   ; # Period = (0x15+1)*2
        mov  #0x0015, &TACCR0   ; # Period = (0x15+1)*2
        mov  #0x0020, &TACCTL0  ; # Compare mode, set mode
        mov  #0x0020, &TACCTL0  ; # Compare mode, set mode
        mov  #0x0254, &TACTL    ; # Up-mode & clk/2
        mov  #0x0254, &TACTL    ; # Up-mode & clk/2
        mov  #0x0003, &0x0200
        mov  #0x0003, &DMEM_200
        mov  #0x0020, r14
        mov  #0x0020, r14
        call #WAIT_FUNC
        call #WAIT_FUNC
        mov  #0x0204, &TACTL
        mov  #0x0204, &TACTL
        mov  #0x0004, &0x0200
        mov  #0x0004, &DMEM_200
 
 
                                ; # --------- Toggle       (mode 4) ----------
                                ; # --------- Toggle       (mode 4) ----------
        mov  #0x0204, &TACTL
        mov  #0x0204, &TACTL
        mov  #0x0015, &TACCR0   ; # Period = (0x15+1)*2
        mov  #0x0015, &TACCR0   ; # Period = (0x15+1)*2
        mov  #0x0080, &TACCTL0  ; # Compare mode, Toggle mode
        mov  #0x0080, &TACCTL0  ; # Compare mode, Toggle mode
        mov  #0x0254, &TACTL    ; # Up-mode & clk/2
        mov  #0x0254, &TACTL    ; # Up-mode & clk/2
        mov  #0x0005, &0x0200
        mov  #0x0005, &DMEM_200
        mov  #0x0020, r14
        mov  #0x0020, r14
        call #WAIT_FUNC
        call #WAIT_FUNC
 
 
                                ; # --------- Reset        (mode 5) ----------
                                ; # --------- Reset        (mode 5) ----------
        mov  #0x0204, &TACTL
        mov  #0x0204, &TACTL
        mov  #0x0015, &TACCR0   ; # Period = (0x15+1)*2
        mov  #0x0015, &TACCR0   ; # Period = (0x15+1)*2
        mov  #0x0004, &TACCTL0  ; # Compare mode, Output mode (initialize to 1)
        mov  #0x0004, &TACCTL0  ; # Compare mode, Output mode (initialize to 1)
        mov  #0x00A0, &TACCTL0  ; # Compare mode, Reset mode
        mov  #0x00A0, &TACCTL0  ; # Compare mode, Reset mode
        mov  #0x0254, &TACTL    ; # Up-mode & clk/2
        mov  #0x0254, &TACTL    ; # Up-mode & clk/2
        mov  #0x0006, &0x0200
        mov  #0x0006, &DMEM_200
        mov  #0x0020, r14
        mov  #0x0020, r14
        call #WAIT_FUNC
        call #WAIT_FUNC
 
 
 
 
        dint
        dint
        mov  #0x0000, &0x0200
        mov  #0x0000, &DMEM_200
        mov  #0x1000, r15
        mov  #0x1000, r15
 
 
 
 
       /* --------------   TIMER A TEST:  COMPARATOR 1   ----------------- */
       /* --------------   TIMER A TEST:  COMPARATOR 1   ----------------- */
 
 
Line 125... Line 132...
        mov  #0x0204, &TACTL
        mov  #0x0204, &TACTL
        mov  #0x0000, &TACCR0
        mov  #0x0000, &TACCR0
        mov  #0x0000, &TACCTL0
        mov  #0x0000, &TACCTL0
        mov  #0x0200, &TACTL
        mov  #0x0200, &TACTL
        mov  #0x0004, &TACCTL1  ; # Set to 1
        mov  #0x0004, &TACCTL1  ; # Set to 1
        mov  #0x0001, &0x0200
        mov  #0x0001, &DMEM_200
        mov  #0x0000, &TACCTL1  ; # Set to 0
        mov  #0x0000, &TACCTL1  ; # Set to 0
        mov  #0x0002, &0x0200
        mov  #0x0002, &DMEM_200
 
 
                                ; # --------- Set          (mode 1) ----------
                                ; # --------- Set          (mode 1) ----------
        mov  #0x0000, &TACCTL1
        mov  #0x0000, &TACCTL1
        mov  #0x0204, &TACTL
        mov  #0x0204, &TACTL
        mov  #0x0020, &TACCR0
        mov  #0x0020, &TACCR0
        mov  #0x0000, &TACCTL0
        mov  #0x0000, &TACCTL0
        mov  #0x0015, &TACCR1
        mov  #0x0015, &TACCR1
        mov  #0x0020, &TACCTL1  ; # Compare mode, set mode
        mov  #0x0020, &TACCTL1  ; # Compare mode, set mode
        mov  #0x0254, &TACTL    ; # Up-mode & clk/2
        mov  #0x0254, &TACTL    ; # Up-mode & clk/2
        mov  #0x0003, &0x0200
        mov  #0x0003, &DMEM_200
        mov  #0x0030, r14
        mov  #0x0030, r14
        call #WAIT_FUNC
        call #WAIT_FUNC
        mov  #0x0204, &TACTL
        mov  #0x0204, &TACTL
        mov  #0x0004, &0x0200
        mov  #0x0004, &DMEM_200
 
 
                                ; # --------- Toggle/Reset (mode 2) ----------
                                ; # --------- Toggle/Reset (mode 2) ----------
        mov  #0x0000, &TACCTL1
        mov  #0x0000, &TACCTL1
        mov  #0x0204, &TACTL
        mov  #0x0204, &TACTL
        mov  #0x0020, &TACCR0
        mov  #0x0020, &TACCR0
        mov  #0x0000, &TACCTL0
        mov  #0x0000, &TACCTL0
        mov  #0x0015, &TACCR1
        mov  #0x0015, &TACCR1
        mov  #0x0040, &TACCTL1  ; # Compare mode, toggle/reset mode
        mov  #0x0040, &TACCTL1  ; # Compare mode, toggle/reset mode
        mov  #0x0254, &TACTL    ; # Up-mode & clk/2
        mov  #0x0254, &TACTL    ; # Up-mode & clk/2
        mov  #0x0005, &0x0200
        mov  #0x0005, &DMEM_200
        mov  #0x0020, r14
        mov  #0x0020, r14
        call #WAIT_FUNC
        call #WAIT_FUNC
        mov  #0x0204, &TACTL
        mov  #0x0204, &TACTL
        mov  #0x0020, &TACCR0
        mov  #0x0020, &TACCR0
        mov  #0x0000, &TACCTL0
        mov  #0x0000, &TACCTL0
        mov  #0x0015, &TACCR1
        mov  #0x0015, &TACCR1
        mov  #0x0004, &TACCTL1  ; # Init to 1
        mov  #0x0004, &TACCTL1  ; # Init to 1
        mov  #0x0040, &TACCTL1  ; # Compare mode, toggle/reset mode
        mov  #0x0040, &TACCTL1  ; # Compare mode, toggle/reset mode
        mov  #0x0254, &TACTL    ; # Up-mode & clk/2
        mov  #0x0254, &TACTL    ; # Up-mode & clk/2
        mov  #0x0006, &0x0200
        mov  #0x0006, &DMEM_200
        mov  #0x0020, r14
        mov  #0x0020, r14
        call #WAIT_FUNC
        call #WAIT_FUNC
 
 
                                ; # --------- Set/Reset    (mode 3) ----------
                                ; # --------- Set/Reset    (mode 3) ----------
        mov  #0x0000, &TACCTL1
        mov  #0x0000, &TACCTL1
Line 173... Line 180...
        mov  #0x0020, &TACCR0
        mov  #0x0020, &TACCR0
        mov  #0x0000, &TACCTL0
        mov  #0x0000, &TACCTL0
        mov  #0x0015, &TACCR1
        mov  #0x0015, &TACCR1
        mov  #0x0060, &TACCTL1  ; # Compare mode, set/reset mode
        mov  #0x0060, &TACCTL1  ; # Compare mode, set/reset mode
        mov  #0x0254, &TACTL    ; # Up-mode & clk/2
        mov  #0x0254, &TACTL    ; # Up-mode & clk/2
        mov  #0x0007, &0x0200
        mov  #0x0007, &DMEM_200
        mov  #0x0020, r14
        mov  #0x0020, r14
        call #WAIT_FUNC
        call #WAIT_FUNC
        mov  #0x0000, &TACCTL1
        mov  #0x0000, &TACCTL1
        mov  #0x0204, &TACTL
        mov  #0x0204, &TACTL
        mov  #0x0020, &TACCR0
        mov  #0x0020, &TACCR0
        mov  #0x0000, &TACCTL0
        mov  #0x0000, &TACCTL0
        mov  #0x0015, &TACCR1
        mov  #0x0015, &TACCR1
        mov  #0x0004, &TACCTL1  ; # Init to 1
        mov  #0x0004, &TACCTL1  ; # Init to 1
        mov  #0x0060, &TACCTL1  ; # Compare mode, set/reset mode
        mov  #0x0060, &TACCTL1  ; # Compare mode, set/reset mode
        mov  #0x0254, &TACTL    ; # Up-mode & clk/2
        mov  #0x0254, &TACTL    ; # Up-mode & clk/2
        mov  #0x0008, &0x0200
        mov  #0x0008, &DMEM_200
        mov  #0x0020, r14
        mov  #0x0020, r14
        call #WAIT_FUNC
        call #WAIT_FUNC
 
 
                                ; # --------- Toggle       (mode 4) ----------
                                ; # --------- Toggle       (mode 4) ----------
        mov  #0x0000, &TACCTL1
        mov  #0x0000, &TACCTL1
Line 196... Line 203...
        mov  #0x0020, &TACCR0
        mov  #0x0020, &TACCR0
        mov  #0x0000, &TACCTL0
        mov  #0x0000, &TACCTL0
        mov  #0x0015, &TACCR1   ; # Period = (0x15+1)*2
        mov  #0x0015, &TACCR1   ; # Period = (0x15+1)*2
        mov  #0x0080, &TACCTL1  ; # Compare mode, Toggle mode
        mov  #0x0080, &TACCTL1  ; # Compare mode, Toggle mode
        mov  #0x0254, &TACTL    ; # Up-mode & clk/2
        mov  #0x0254, &TACTL    ; # Up-mode & clk/2
        mov  #0x0009, &0x0200
        mov  #0x0009, &DMEM_200
        mov  #0x0030, r14
        mov  #0x0030, r14
        call #WAIT_FUNC
        call #WAIT_FUNC
 
 
                                ; # --------- Reset        (mode 5) ----------
                                ; # --------- Reset        (mode 5) ----------
        mov  #0x0000, &TACCTL1
        mov  #0x0000, &TACCTL1
Line 209... Line 216...
        mov  #0x0000, &TACCTL0
        mov  #0x0000, &TACCTL0
        mov  #0x0015, &TACCR1   ; # Period = (0x15+1)*2
        mov  #0x0015, &TACCR1   ; # Period = (0x15+1)*2
        mov  #0x0004, &TACCTL1  ; # Compare mode, Output mode (initialize to 1)
        mov  #0x0004, &TACCTL1  ; # Compare mode, Output mode (initialize to 1)
        mov  #0x00A0, &TACCTL1  ; # Compare mode, Reset mode
        mov  #0x00A0, &TACCTL1  ; # Compare mode, Reset mode
        mov  #0x0254, &TACTL    ; # Up-mode & clk/2
        mov  #0x0254, &TACTL    ; # Up-mode & clk/2
        mov  #0x000A, &0x0200
        mov  #0x000A, &DMEM_200
        mov  #0x0030, r14
        mov  #0x0030, r14
        call #WAIT_FUNC
        call #WAIT_FUNC
 
 
                                ; # --------- Toggle/Set   (mode 6) ----------
                                ; # --------- Toggle/Set   (mode 6) ----------
        mov  #0x0000, &TACCTL1
        mov  #0x0000, &TACCTL1
Line 221... Line 228...
        mov  #0x0020, &TACCR0
        mov  #0x0020, &TACCR0
        mov  #0x0000, &TACCTL0
        mov  #0x0000, &TACCTL0
        mov  #0x0015, &TACCR1
        mov  #0x0015, &TACCR1
        mov  #0x00C0, &TACCTL1  ; # Compare mode, toggle/set mode
        mov  #0x00C0, &TACCTL1  ; # Compare mode, toggle/set mode
        mov  #0x0254, &TACTL    ; # Up-mode & clk/2
        mov  #0x0254, &TACTL    ; # Up-mode & clk/2
        mov  #0x000B, &0x0200
        mov  #0x000B, &DMEM_200
        mov  #0x0020, r14
        mov  #0x0020, r14
        call #WAIT_FUNC
        call #WAIT_FUNC
        mov  #0x0204, &TACTL
        mov  #0x0204, &TACTL
        mov  #0x0020, &TACCR0
        mov  #0x0020, &TACCR0
        mov  #0x0000, &TACCTL0
        mov  #0x0000, &TACCTL0
        mov  #0x0015, &TACCR1
        mov  #0x0015, &TACCR1
        mov  #0x0004, &TACCTL1  ; # Init to 1
        mov  #0x0004, &TACCTL1  ; # Init to 1
        mov  #0x00C0, &TACCTL1  ; # Compare mode, toggle/set mode
        mov  #0x00C0, &TACCTL1  ; # Compare mode, toggle/set mode
        mov  #0x0254, &TACTL    ; # Up-mode & clk/2
        mov  #0x0254, &TACTL    ; # Up-mode & clk/2
        mov  #0x000C, &0x0200
        mov  #0x000C, &DMEM_200
        mov  #0x0020, r14
        mov  #0x0020, r14
        call #WAIT_FUNC
        call #WAIT_FUNC
 
 
                                ; # --------- Reset/Set    (mode 7) ----------
                                ; # --------- Reset/Set    (mode 7) ----------
        mov  #0x0000, &TACCTL1
        mov  #0x0000, &TACCTL1
Line 243... Line 250...
        mov  #0x0020, &TACCR0
        mov  #0x0020, &TACCR0
        mov  #0x0000, &TACCTL0
        mov  #0x0000, &TACCTL0
        mov  #0x0015, &TACCR1
        mov  #0x0015, &TACCR1
        mov  #0x00E0, &TACCTL1  ; # Compare mode, reset/set mode
        mov  #0x00E0, &TACCTL1  ; # Compare mode, reset/set mode
        mov  #0x0254, &TACTL    ; # Up-mode & clk/2
        mov  #0x0254, &TACTL    ; # Up-mode & clk/2
        mov  #0x000D, &0x0200
        mov  #0x000D, &DMEM_200
        mov  #0x0020, r14
        mov  #0x0020, r14
        call #WAIT_FUNC
        call #WAIT_FUNC
        mov  #0x0000, &TACCTL1
        mov  #0x0000, &TACCTL1
        mov  #0x0204, &TACTL
        mov  #0x0204, &TACTL
        mov  #0x0020, &TACCR0
        mov  #0x0020, &TACCR0
        mov  #0x0000, &TACCTL0
        mov  #0x0000, &TACCTL0
        mov  #0x0015, &TACCR1
        mov  #0x0015, &TACCR1
        mov  #0x0004, &TACCTL1  ; # Init to 1
        mov  #0x0004, &TACCTL1  ; # Init to 1
        mov  #0x00E0, &TACCTL1  ; # Compare mode, reset/set mode
        mov  #0x00E0, &TACCTL1  ; # Compare mode, reset/set mode
        mov  #0x0254, &TACTL    ; # Up-mode & clk/2
        mov  #0x0254, &TACTL    ; # Up-mode & clk/2
        mov  #0x000E, &0x0200
        mov  #0x000E, &DMEM_200
        mov  #0x0020, r14
        mov  #0x0020, r14
        call #WAIT_FUNC
        call #WAIT_FUNC
 
 
        dint
        dint
        mov  #0x0000, &0x0200
        mov  #0x0000, &DMEM_200
        mov  #0x2000, r15
        mov  #0x2000, r15
 
 
 
 
       /* --------------   TIMER A TEST:  COMPARATOR 2   ----------------- */
       /* --------------   TIMER A TEST:  COMPARATOR 2   ----------------- */
 
 
Line 278... Line 285...
        mov  #0x0204, &TACTL
        mov  #0x0204, &TACTL
        mov  #0x0000, &TACCR0
        mov  #0x0000, &TACCR0
        mov  #0x0000, &TACCTL0
        mov  #0x0000, &TACCTL0
        mov  #0x0200, &TACTL
        mov  #0x0200, &TACTL
        mov  #0x0004, &TACCTL2  ; # Set to 1
        mov  #0x0004, &TACCTL2  ; # Set to 1
        mov  #0x0001, &0x0200
        mov  #0x0001, &DMEM_200
        mov  #0x0000, &TACCTL2  ; # Set to 0
        mov  #0x0000, &TACCTL2  ; # Set to 0
        mov  #0x0002, &0x0200
        mov  #0x0002, &DMEM_200
 
 
                                ; # --------- Set          (mode 1) ----------
                                ; # --------- Set          (mode 1) ----------
        mov  #0x0000, &TACCTL2
        mov  #0x0000, &TACCTL2
        mov  #0x0204, &TACTL
        mov  #0x0204, &TACTL
        mov  #0x0020, &TACCR0
        mov  #0x0020, &TACCR0
        mov  #0x0000, &TACCTL0
        mov  #0x0000, &TACCTL0
        mov  #0x0015, &TACCR2
        mov  #0x0015, &TACCR2
        mov  #0x0020, &TACCTL2  ; # Compare mode, set mode
        mov  #0x0020, &TACCTL2  ; # Compare mode, set mode
        mov  #0x0254, &TACTL    ; # Up-mode & clk/2
        mov  #0x0254, &TACTL    ; # Up-mode & clk/2
        mov  #0x0003, &0x0200
        mov  #0x0003, &DMEM_200
        mov  #0x0030, r14
        mov  #0x0030, r14
        call #WAIT_FUNC
        call #WAIT_FUNC
        mov  #0x0204, &TACTL
        mov  #0x0204, &TACTL
        mov  #0x0004, &0x0200
        mov  #0x0004, &DMEM_200
 
 
                                ; # --------- Toggle/Reset (mode 2) ----------
                                ; # --------- Toggle/Reset (mode 2) ----------
        mov  #0x0000, &TACCTL2
        mov  #0x0000, &TACCTL2
        mov  #0x0204, &TACTL
        mov  #0x0204, &TACTL
        mov  #0x0020, &TACCR0
        mov  #0x0020, &TACCR0
        mov  #0x0000, &TACCTL0
        mov  #0x0000, &TACCTL0
        mov  #0x0015, &TACCR2
        mov  #0x0015, &TACCR2
        mov  #0x0040, &TACCTL2  ; # Compare mode, toggle/reset mode
        mov  #0x0040, &TACCTL2  ; # Compare mode, toggle/reset mode
        mov  #0x0254, &TACTL    ; # Up-mode & clk/2
        mov  #0x0254, &TACTL    ; # Up-mode & clk/2
        mov  #0x0005, &0x0200
        mov  #0x0005, &DMEM_200
        mov  #0x0020, r14
        mov  #0x0020, r14
        call #WAIT_FUNC
        call #WAIT_FUNC
        mov  #0x0204, &TACTL
        mov  #0x0204, &TACTL
        mov  #0x0020, &TACCR0
        mov  #0x0020, &TACCR0
        mov  #0x0000, &TACCTL0
        mov  #0x0000, &TACCTL0
        mov  #0x0015, &TACCR2
        mov  #0x0015, &TACCR2
        mov  #0x0004, &TACCTL2  ; # Init to 1
        mov  #0x0004, &TACCTL2  ; # Init to 1
        mov  #0x0040, &TACCTL2  ; # Compare mode, toggle/reset mode
        mov  #0x0040, &TACCTL2  ; # Compare mode, toggle/reset mode
        mov  #0x0254, &TACTL    ; # Up-mode & clk/2
        mov  #0x0254, &TACTL    ; # Up-mode & clk/2
        mov  #0x0006, &0x0200
        mov  #0x0006, &DMEM_200
        mov  #0x0020, r14
        mov  #0x0020, r14
        call #WAIT_FUNC
        call #WAIT_FUNC
 
 
                                ; # --------- Set/Reset    (mode 3) ----------
                                ; # --------- Set/Reset    (mode 3) ----------
        mov  #0x0000, &TACCTL2
        mov  #0x0000, &TACCTL2
Line 326... Line 333...
        mov  #0x0020, &TACCR0
        mov  #0x0020, &TACCR0
        mov  #0x0000, &TACCTL0
        mov  #0x0000, &TACCTL0
        mov  #0x0015, &TACCR2
        mov  #0x0015, &TACCR2
        mov  #0x0060, &TACCTL2  ; # Compare mode, set/reset mode
        mov  #0x0060, &TACCTL2  ; # Compare mode, set/reset mode
        mov  #0x0254, &TACTL    ; # Up-mode & clk/2
        mov  #0x0254, &TACTL    ; # Up-mode & clk/2
        mov  #0x0007, &0x0200
        mov  #0x0007, &DMEM_200
        mov  #0x0020, r14
        mov  #0x0020, r14
        call #WAIT_FUNC
        call #WAIT_FUNC
        mov  #0x0000, &TACCTL2
        mov  #0x0000, &TACCTL2
        mov  #0x0204, &TACTL
        mov  #0x0204, &TACTL
        mov  #0x0020, &TACCR0
        mov  #0x0020, &TACCR0
        mov  #0x0000, &TACCTL0
        mov  #0x0000, &TACCTL0
        mov  #0x0015, &TACCR2
        mov  #0x0015, &TACCR2
        mov  #0x0004, &TACCTL2  ; # Init to 1
        mov  #0x0004, &TACCTL2  ; # Init to 1
        mov  #0x0060, &TACCTL2  ; # Compare mode, set/reset mode
        mov  #0x0060, &TACCTL2  ; # Compare mode, set/reset mode
        mov  #0x0254, &TACTL    ; # Up-mode & clk/2
        mov  #0x0254, &TACTL    ; # Up-mode & clk/2
        mov  #0x0008, &0x0200
        mov  #0x0008, &DMEM_200
        mov  #0x0020, r14
        mov  #0x0020, r14
        call #WAIT_FUNC
        call #WAIT_FUNC
 
 
                                ; # --------- Toggle       (mode 4) ----------
                                ; # --------- Toggle       (mode 4) ----------
        mov  #0x0000, &TACCTL2
        mov  #0x0000, &TACCTL2
Line 349... Line 356...
        mov  #0x0020, &TACCR0
        mov  #0x0020, &TACCR0
        mov  #0x0000, &TACCTL0
        mov  #0x0000, &TACCTL0
        mov  #0x0015, &TACCR2   ; # Period = (0x15+1)*2
        mov  #0x0015, &TACCR2   ; # Period = (0x15+1)*2
        mov  #0x0080, &TACCTL2  ; # Compare mode, Toggle mode
        mov  #0x0080, &TACCTL2  ; # Compare mode, Toggle mode
        mov  #0x0254, &TACTL    ; # Up-mode & clk/2
        mov  #0x0254, &TACTL    ; # Up-mode & clk/2
        mov  #0x0009, &0x0200
        mov  #0x0009, &DMEM_200
        mov  #0x0030, r14
        mov  #0x0030, r14
        call #WAIT_FUNC
        call #WAIT_FUNC
 
 
                                ; # --------- Reset        (mode 5) ----------
                                ; # --------- Reset        (mode 5) ----------
        mov  #0x0000, &TACCTL2
        mov  #0x0000, &TACCTL2
Line 362... Line 369...
        mov  #0x0000, &TACCTL0
        mov  #0x0000, &TACCTL0
        mov  #0x0015, &TACCR2   ; # Period = (0x15+1)*2
        mov  #0x0015, &TACCR2   ; # Period = (0x15+1)*2
        mov  #0x0004, &TACCTL2  ; # Compare mode, Output mode (initialize to 1)
        mov  #0x0004, &TACCTL2  ; # Compare mode, Output mode (initialize to 1)
        mov  #0x00A0, &TACCTL2  ; # Compare mode, Reset mode
        mov  #0x00A0, &TACCTL2  ; # Compare mode, Reset mode
        mov  #0x0254, &TACTL    ; # Up-mode & clk/2
        mov  #0x0254, &TACTL    ; # Up-mode & clk/2
        mov  #0x000A, &0x0200
        mov  #0x000A, &DMEM_200
        mov  #0x0030, r14
        mov  #0x0030, r14
        call #WAIT_FUNC
        call #WAIT_FUNC
 
 
                                ; # --------- Toggle/Set   (mode 6) ----------
                                ; # --------- Toggle/Set   (mode 6) ----------
        mov  #0x0000, &TACCTL2
        mov  #0x0000, &TACCTL2
Line 374... Line 381...
        mov  #0x0020, &TACCR0
        mov  #0x0020, &TACCR0
        mov  #0x0000, &TACCTL0
        mov  #0x0000, &TACCTL0
        mov  #0x0015, &TACCR2
        mov  #0x0015, &TACCR2
        mov  #0x00C0, &TACCTL2  ; # Compare mode, toggle/set mode
        mov  #0x00C0, &TACCTL2  ; # Compare mode, toggle/set mode
        mov  #0x0254, &TACTL    ; # Up-mode & clk/2
        mov  #0x0254, &TACTL    ; # Up-mode & clk/2
        mov  #0x000B, &0x0200
        mov  #0x000B, &DMEM_200
        mov  #0x0020, r14
        mov  #0x0020, r14
        call #WAIT_FUNC
        call #WAIT_FUNC
        mov  #0x0204, &TACTL
        mov  #0x0204, &TACTL
        mov  #0x0020, &TACCR0
        mov  #0x0020, &TACCR0
        mov  #0x0000, &TACCTL0
        mov  #0x0000, &TACCTL0
        mov  #0x0015, &TACCR2
        mov  #0x0015, &TACCR2
        mov  #0x0004, &TACCTL2  ; # Init to 1
        mov  #0x0004, &TACCTL2  ; # Init to 1
        mov  #0x00C0, &TACCTL2  ; # Compare mode, toggle/set mode
        mov  #0x00C0, &TACCTL2  ; # Compare mode, toggle/set mode
        mov  #0x0254, &TACTL    ; # Up-mode & clk/2
        mov  #0x0254, &TACTL    ; # Up-mode & clk/2
        mov  #0x000C, &0x0200
        mov  #0x000C, &DMEM_200
        mov  #0x0020, r14
        mov  #0x0020, r14
        call #WAIT_FUNC
        call #WAIT_FUNC
 
 
                                ; # --------- Reset/Set    (mode 7) ----------
                                ; # --------- Reset/Set    (mode 7) ----------
        mov  #0x0000, &TACCTL2
        mov  #0x0000, &TACCTL2
Line 396... Line 403...
        mov  #0x0020, &TACCR0
        mov  #0x0020, &TACCR0
        mov  #0x0000, &TACCTL0
        mov  #0x0000, &TACCTL0
        mov  #0x0015, &TACCR2
        mov  #0x0015, &TACCR2
        mov  #0x00E0, &TACCTL2  ; # Compare mode, reset/set mode
        mov  #0x00E0, &TACCTL2  ; # Compare mode, reset/set mode
        mov  #0x0254, &TACTL    ; # Up-mode & clk/2
        mov  #0x0254, &TACTL    ; # Up-mode & clk/2
        mov  #0x000D, &0x0200
        mov  #0x000D, &DMEM_200
        mov  #0x0020, r14
        mov  #0x0020, r14
        call #WAIT_FUNC
        call #WAIT_FUNC
        mov  #0x0000, &TACCTL2
        mov  #0x0000, &TACCTL2
        mov  #0x0204, &TACTL
        mov  #0x0204, &TACTL
        mov  #0x0020, &TACCR0
        mov  #0x0020, &TACCR0
        mov  #0x0000, &TACCTL0
        mov  #0x0000, &TACCTL0
        mov  #0x0015, &TACCR2
        mov  #0x0015, &TACCR2
        mov  #0x0004, &TACCTL2  ; # Init to 1
        mov  #0x0004, &TACCTL2  ; # Init to 1
        mov  #0x00E0, &TACCTL2  ; # Compare mode, reset/set mode
        mov  #0x00E0, &TACCTL2  ; # Compare mode, reset/set mode
        mov  #0x0254, &TACTL    ; # Up-mode & clk/2
        mov  #0x0254, &TACTL    ; # Up-mode & clk/2
        mov  #0x000E, &0x0200
        mov  #0x000E, &DMEM_200
        mov  #0x0020, r14
        mov  #0x0020, r14
        call #WAIT_FUNC
        call #WAIT_FUNC
 
 
        dint
        dint
        mov  #0x0000, &0x0200
        mov  #0x0000, &DMEM_200
        mov  #0x3000, r15
        mov  #0x3000, r15
 
 
 
 
        /* ----------------------         END OF TEST        --------------- */
        /* ----------------------         END OF TEST        --------------- */
end_of_test:
end_of_test:
Line 425... Line 432...
 
 
 
 
        /* ----------------------      INTERRUPT ROUTINES    --------------- */
        /* ----------------------      INTERRUPT ROUTINES    --------------- */
 
 
TIMERA_CCR0_VECTOR:
TIMERA_CCR0_VECTOR:
        mov     &TAR, &0x0202
        mov     &TAR, &DMEM_202
        reti
        reti
 
 
 
 
TIMERA_TAIV_VECTOR:
TIMERA_TAIV_VECTOR:
        mov     &TAR, &0x0204
        mov     &TAR, &DMEM_204
        mov    &TAIV, &0x0206
        mov    &TAIV, &DMEM_206
        reti
        reti
 
 
 
 
        /* ----------------------         INTERRUPT VECTORS  --------------- */
        /* ----------------------         INTERRUPT VECTORS  --------------- */
 
 

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.