Mikroelektronika MIKROE-724 データシート
mikroBasic PRO for dsPIC30/33 and PIC24
MikroElektronika
385
Man_Break
Prototype
sub procedure Man_Break()
Description Man_Receive is blocking routine and it can block the program flow. Call this routine from interrupt to
unblock the program execution. This mechanism is similar to WDT.
Parameters None.
Returns
Returns
Nothing.
Requires
Nothing.
Example
dim data1, error, counter as byte
sub procedure Timer1Int() org IVT_ADDR_T1INTERRUPT
counter = 0
if (counter >= 20) then
Man_Break()
counter = 0 ‘ reset counter
else
Inc(counter) ‘ increment counter
end if
T1IF_bit = 0 ‘ Clear Timer1 overflow interrupt flag
end sub
main:
...
if (Man_Receive_Init() = 0)
...
end if
...
‘ try Man_Receive with blocking prevention mechanism
IPC0 = IPC0 or 0x1000 ‘ Interrupt priority level = 1
T1IE_bit = 1 ‘ Enable Timer1 interrupts
T1CON = 0x8030 ‘ Timer1 ON, internal clock FCY, prescaler 1:256
data1 = Man_Receive(@error)
T1IE_bit = 0 ‘ Disable Timer1 interrupts
end.
Notes
Interrupts should be disabled before using Manchester routines again (see note at the top of this
page).