Searching \ for 'Interrupt conflit' in subject line. ()
Make payments with PayPal - it's fast, free and secure! Help us get a faster server
FAQ page: massmind.org/techref/microchip/ints.htm?key=interrupt
Search entire site for: 'Interrupt conflit'.

Truncated match.
PICList Thread
'Interrupt conflit'
1997\11\25@120306 by Paulo Figueiredo

flavicon
face
I'm using a PIC16C74A-20/JW in my aplication. The function is
receive data  using PIC16C74A hardware UART with an externel
DUART, the comunication is FULL DUPLEX.

I'm using PORTB interrupt on change to know when I must read
(byte received) from DUART or Write (TXBUFFER free) .

It works well but when the PORTB Rx interrupt(RB6) and Tx (RB4)
interrupt event at same time (i saw the signal on a digital
oscilloscope) the program counter is lost and it resets (watchdog
timer).

I use PUSH AND POP routines.The number of a CALLl function
used in main program (outside the interrupt routine) is maximum two
in deept, inside the interrupt routine its only PUSH and POP
routines.

Anyone can help me solving this problem please contact me.

Manuel Morais

1997\11\25@134617 by Mike Keitz

picon face
On Tue, 25 Nov 1997 16:53:33 +1200,WET Paulo Figueiredo
<spam_OUTpxicoTakeThisOuTspamIDITE-MINHO.PT> writes:
>I'm using a PIC16C74A-20/JW in my aplication. The function is
>receive data  using PIC16C74A hardware UART with an externel
>DUART, the comunication is FULL DUPLEX.
>
>I'm using PORTB interrupt on change to know when I must read
>(byte received) from DUART or Write (TXBUFFER free) .

Using the RB interrupt on change while the PIC is running is fraught with
trouble.  Microchip recommends using this interrupt only to wake up the
PIC from sleep.  Use the RB0 interrupt instead, OR the external
interrupts together with a gate or diodes, also connect them to port pins
to allow software to poll which one caused the interrupt.  If that's
already in use, maybe the DUART's interrupt pins could be connected to a
timer module or something to interrupt the PIC.

1997\11\25@152610 by myke predko

flavicon
face
Manual??  (I guess you're using somebody else's account)

You said you were having problems with interrupts:
>It works well but when the PORTB Rx interrupt(RB6) and Tx (RB4)
>interrupt event at same time (i saw the signal on a digital
>oscilloscope) the program counter is lost and it resets (watchdog
>timer).

How did you see both these interrupts at the "same time" on a 'scope?  I
would have thought experiencing Receiver full and TX Holding Register Free
at the same time would be a pretty random event - especially down to the
cycle level (which is what you seem to be talking about).

>I use PUSH AND POP routines.The number of a CALLl function
>used in main program (outside the interrupt routine) is maximum two
>in deept, inside the interrupt routine its only PUSH and POP
>routines.

What are your "PUSH" and "POP" Routines?  I presume you're putting the
context registers on a stack (pointed to be the FSR)?


Maybe you could post the relevant code.

myke

"I was well aware that the processes of puberty are often fatal to psychic
power."
- Sir Arthur Conan Doyle

More... (looser matching)
- Last day of these posts
- In 1997 , 1998 only
- Today
- New search...