mikroPascal och undrar lite över interrupts.
Just nu har jag gjort så att toner spelas på en liten löjlig
högtalare (sådan som sitter i datorn), men jag vill ha en
knapp som avbryter det hela. Knappens signal ignoneras
när ljudet spelas ända tills ljudet spelats klart (då är det
försent med att avbryta

Jag förstår mig inte riktigt på detta.. jaja, här är koden till
ett interrupt-exempel som följde med mikroPascal:
Kod: Markera allt
//******************************************************************************
// microcontroller : P16F628
//
// Project: Tmr0
// This project is designed to work with PIC 16F628;
// with minor adjustments, it should work with any other PIC MCU.
//
// This code demonstrates using interrupts in mikroPascal.
// Program turns on/off leds on portb each second.
//******************************************************************************
program Tmr0;
var brojac, a, b : byte;
procedure interrupt;
begin
brojac := brojac + 1; // increment value of brojac on every interrupt
TMR0 := 96;
INTCON := $20; // set T0IE, claer T0IF
end;
begin
a := 0;
b := 1;
OPTION_REG := $84; // assign prescaler to TMR0
trisb := 0; // designate portb as output
portb := $FF; // initialize portb
brojac := 0; // initialize brojac
TMR0 := 96;
INTCON := $A0; // enable TMRO interrupt
repeat
begin
if brojac = 200 then // if brojac is 200, then toggle portb leds and reset brojac
begin
portb := not(portb);
brojac := 0;
end;
end;
until 0 = 1;
end.

tack för mig!