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

Subversion Repositories copyblaze

[/] [copyblaze/] [trunk/] [copyblaze/] [sw/] [code/] [pBlaze/] [int_test/] [int_test.asm] - Blame information for rev 27

Go to most recent revision | Details | Compare with Previous | View Log

Line No. Rev Author Line
1 2 ameziti
             ;Interrupt example
2
             ;
3
                         waveform_port          .EQU    02      ;bit0 will be data
4
             counter_port               .EQU    04
5
             pattern_10101010   .EQU    0xAA
6
             interrupt_counter  .EQU    sA
7
             ;
8
      start: LOAD       interrupt_counter       , 00                            ;reset interrupt counter
9
             LOAD       s2                                      , pattern_10101010      ;initial output condition
10
             EINT                                                                                       ; enable interrupts
11
             ;
12
 drive_wave: OUTPUT s2, waveform_port
13
             LOAD       s0, 0x07                            ;delay size
14
       loop: SUB        s0, 0x01                             ;delay loop
15
             JUMP       NZ, loop
16
             XOR        s2, 0xFF                             ;toggle waveform
17
             JUMP       drive_wave
18
             ;
19
 
20
             .ORG       0x080
21
int_routine:
22
                         ADD    interrupt_counter, 01              ;increment counter
23
             OUTPUT interrupt_counter, counter_port
24
             RETI       ENABLE
25
             ;
26
             .ORG       0x3FF                            ;set interrupt vector
27
             JUMP int_routine

powered by: WebSVN 2.1.0

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